agentsclimarketplace

Investment note

Skill erhwenkuo/stock_skills/.claude/skills/investment-note

An undervalued stock screening system. Screens for undervalued stocks across 60+ regions using the Yahoo Finance API (yfinance). Runs as Claude Code Skills — just speak in natural language and the right function executes automatically.

Install
npx -y skills add erhwenkuo/stock_skills --skill investment-note

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Investment note management. Record, retrieve, and delete investment theses, concerns, and lessons.

SKILL.md

3.1 KB, as published. Nobody here has run it

Investment Note Management Skill

Parse $ARGUMENTS and execute the following commands.

Execution Command

python3 /Users/kikuchihiroyuki/stock-skills/.claude/skills/investment-note/scripts/manage_note.py $ARGUMENTS

Display the result as-is.

Command Reference

save — Save a note

# Stock note (standard)
python3 .../manage_note.py save --symbol 7203.T --type thesis --content "EV adoption increases parts demand"

# Portfolio-wide note (KIK-429: symbol made optional)
python3 .../manage_note.py save --category portfolio --type review --content "Reduced sector overweight"

# Market note
python3 .../manage_note.py save --category market --type observation --content "BOJ rate hike speculation"

Either --symbol or --category is required (except for journal type). When --symbol is specified, category is automatically set to stock.

# Investment journal / free memo (KIK-473: symbol/category not required)
python3 .../manage_note.py save --type journal --content "NVDA surged. Felt the strength of AI demand"
# → Auto-detects ticker symbols (NVDA) in the body and links to Neo4j

list — List notes

python3 .../manage_note.py list [--symbol 7203.T] [--type concern] [--category portfolio]

delete — Delete a note

python3 .../manage_note.py delete --id note_2025-02-17_7203_T_abc12345

Note Types

TypeMeaningUsage Example
thesisInvestment thesis"EV adoption increases parts demand"
observationObservation"Appeared in top 3 screenings in a row"
concernConcern"China market slowdown risk"
reviewReview"3-month hold, thesis on track"
targetTarget / exit"Take profit at P/E 15"
lessonLesson learned"It was a value trap"
journalInvestment journal / free memo"NVDA surged. Felt AI demand" (KIK-473: symbol/category not required, auto-detects tickers from body)

Categories (KIK-429)

CategoryMeaningUsage
stockIndividual stock noteAuto-set when --symbol is specified
portfolioPortfolio-wide note--category portfolio (PF review, rebalancing rationale, etc.)
marketMarket note--category market (macro trends, interest rates, etc.)
generalGeneral note--category general (uncategorized, default)

Natural Language Routing

For natural language → skill selection, see .claude/rules/intent-routing.md.

Knowledge Integration Rules (KIK-466)

When get_context.py output is available, integrate with note operations:

  • save: Reference the latest status of the target stock (latest report, health check results) to enrich the note context
  • list: When displaying the note list, append the current holding status (holding/sold/watching) of each target stock

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.