kr-stock-update
Skill2 starsChanged 8 days agoMITView on GitHub
Maintain an existing Korean stock memo by reading the current memo state, classifying the follow-up request, refreshing only post-memo company-specific evidence when needed, and writing an idempotent dated update. Default behavior is Update Log only, with limited upstream section sync when material thesis deltas require it.
In this repository42 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- kr-analyst-report-discoverSkill
- kr-analyst-report-fetchSkill
- kr-analyst-report-insightSkill
- kr-analyst-report-watchSkill
- kr-article-readabilitySkill
- kr-chatgpt-reviewSkill
- kr-daily-market-newsSkill
- kr-earnings-reviewSkill
- kr-finance-slide-claritySkill
- kr-foreign-analystSkill
- kr-market-leadersSkill
- kr-market-sentimentSkill
- kr-naver-bloggerSkill
- kr-naver-blog-publishSkill
- kr-naver-browseSkill
- kr-naver-insightSkill
- kr-order-backlog-analysisSkill
- kr-portfolio-guardSkill
- kr-portfolio-monitorSkill
- kr-research-siteSkill
- kr-sector-analysisSkill
- kr-sector-auditSkill
- kr-sector-compareSkill
- kr-sector-data-packSkill
- kr-sector-planSkill
- kr-sector-updateSkill
- kr-stock-analysisSkill
- kr-stock-chartSkill
- kr-stock-dart-analysisSkill
- kr-stock-data-packSkill
- kr-stock-planSkill
- kr-strategy-backtestSkill
- kr-trade-flow-analysisSkill
- kr-web-browseSkill
- telegram-report-senderSkill
- us-daily-market-newsSkill
- us-earnings-reviewSkill
- us-sec-analysisSkill
- us-stock-analysisSkill
- us-strategy-backtestSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
37 rules. About 0 are common, 11 are distinctive, and 26 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
26
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Use this skill when the user already has a Korean stock memo and wants follow-up analysis, an event refresh, or a maintenance update …
- Very specific: line 12
Start from an existing markdown memo file, usually analysis-example/kr/<company>/memo.md.
- Very specific: line 13
If a matching analysis-example/kr/<company>/dart-reference.md or dart-cache.json exists, read it together with the memo so the update can …
- Very specific: line 14
If order-backlog-analysis.md, order-backlog-data.json, or a linked assets/<company>-order-backlog.png exists, treat the three as one …
- Distinctive: line 15
Treat disclosures, earnings, capital allocation, governance moves, and company news as time-sensitive.
- Very specific: line 16
Use the memo's 기준일 as the minimum source date for the follow-up search.
- Distinctive: line 18
Update the existing memo file instead of creating a separate report by default.
- Very specific: line 21
Default to Hybrid + Gated: normally update only ## Update Log.
- Very specific: line 22
If the memo does not exist yet, use kr-stock-plan, kr-stock-dart-analysis, and kr-stock-analysis as needed to create the initial report.
- Very specific: line 27
Use scripts/extract-report-baseline.js to parse memo dates, fixed memo sections, DART recheck rows, guard-decision, existing update blocks, …
- Very specific: line 29
Use answer-now, refresh-now, wait-for-event, or ask-user.
- Very specific: line 33
If the memo is order-driven and a new filing, order win, amendment, cancellation, or contract termination changes the effective backlog …
- Very specific: line 34
Run the Price & Chart Freshness Gate.
- Very specific: line 37
Always prioritize DART/KRX/company sources.
- Very specific: line 39
Use stronger, weaker, unchanged, or unclear.
- Very specific: line 40
Write an update packet. Use the v2 JSON shape in references/script-inputs.md, including classification, thesis delta, event keys, follow-up …
- Very specific: line 41
Use the v2 JSON shape in references/script-inputs.md, including classification, thesis delta, event keys, follow-up resolutions, DART …
- Very specific: line 43
Run scripts/normalize-update-log.js to refresh 최근 업데이트일 and append or replace the dated block.
- Distinctive: line 47
Read references/workflow.md for the detailed checklist.
- Distinctive: line 48
Read references/output-format.md for the expected update-block shape.
- Distinctive: line 49
Read references/script-inputs.md when using the bundled scripts with structured JSON inputs.
- Distinctive: line 57
Run the gate whenever ANY of these is true:
- Very specific: line 65
If you cannot fetch a live price, say so explicitly in the update block and mark the valuation as stale — not refreshed.
- Very specific: line 78
Revisit the 결론 / Structured Stance / Decision Frame: If the price moved enough to change the risk-reward (e.g.
- Very specific: line 91
Use scripts/extract-report-baseline.js to parse an existing markdown memo into structured baseline metadata.
- Very specific: line 92
Use scripts/normalize-update-log.js to render a dated update block and optionally write it back into the memo file.
- Very specific: line 93
Use scripts/apply-memo-section-updates.js to replace only allowed upstream memo sections when the materiality gate permits it.
- Very specific: line 94
Run all bundled scripts with node.
- Distinctive: line 95
If a DART reference digest exists, use it to identify which annual-filing sections were already parsed, which were partial, and which still …
- Very specific: line 99
If the update changes the memo's conclusion, rewrite the 한줄요약 header line too (one sentence, at most 50 characters).
- Very specific: line 101
Keep the original 기준일 line and update only 최근 업데이트일.
- Distinctive: line 106
Use exact dates for disclosures, results, investor events, and news.
- Very specific: line 109
When order-backlog evidence changes materially, refresh Order Backlog and Revenue Visibility and its linked PNG in the same update.
- Very specific: line 110
Prefer saying no material change over forcing a narrative.
- Distinctive: line 111
If a requested update window has no material company-specific developments, add a short dated note saying so.
- Distinctive: line 112
Write event keys for material events when possible so future updates can deduplicate repeated coverage.
- Very specific: line 117
Keep section sync narrow. Update Summary, Structured Stance, Decision-Changing Issues, Follow-up Research Prompts, DART Recheck, Decision …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Korean Stock Update
Use this skill when the user already has a Korean stock memo and wants follow-up analysis, an event refresh, or a maintenance update without rebuilding the full memo from scratch.
Quick Start
- Start from an existing markdown memo file, usually
analysis-example/kr/<company>/memo.md. - If a matching
analysis-example/kr/<company>/dart-reference.mdordart-cache.jsonexists, read it together with the memo so the update can reuse prior filing coverage and recheck only the sections that changed. - If
order-backlog-analysis.md,order-backlog-data.json, or a linkedassets/<company>-order-backlog.pngexists, treat the three as one synchronized backlog package. - Treat disclosures, earnings, capital allocation, governance moves, and company news as time-sensitive. Verify current sources before using them when the classification requires refresh.
- Use the memo's
기준일as the minimum source date for the follow-up search. - Deduplicate against the memo's existing
Update Logdates and source URLs when possible. - Update the existing memo file instead of creating a separate report by default.
- Preserve the original
기준일and maintain a separate최근 업데이트일. - For earnings-event updates, investigate and include conference-call Q&A using the shared Q&A standard. Add material management answers and new verification conditions to the existing memo, with the original event date and an idempotent dated log; distinguish verified quotations from third-party summaries.
- Default to
Hybrid+Gated: normally update only## Update Log; refresh selected upstream memo sections only when the thesis delta is material. - If the memo does not exist yet, use
kr-stock-plan,kr-stock-dart-analysis, andkr-stock-analysisas needed to create the initial report.
Workflow
- Extract baseline state.
Use
scripts/extract-report-baseline.jsto parse memo dates, fixed memo sections, DART recheck rows,guard-decision, existing update blocks, event keys, source URLs, chart assets, and sibling artifacts. - Classify the request.
Use
answer-now,refresh-now,wait-for-event, orask-user. Legacy aliases remain valid:memo-onlymeansanswer-now;refresh-neededmeansrefresh-now. - Refresh sources only when needed.
For
refresh-now, read DART/KRX/company IR/news published after the original기준일, then deduplicate by event key and source URL. Foranswer-now, answer from existing memo state and log only if the user wants persistent state. If the memo has unresolved customer, geography, or product-mix gaps and atrade-flow-analysis.mdartifact exists or the user asks for customs/export proxy work, usekr-trade-flow-analysisas a follow-up evidence source. Search only post-기준일company-specific disclosures, IR, and news for confirmation; keep the trade-stat result labeled as inference. If the memo is order-driven and a new filing, order win, amendment, cancellation, or contract termination changes the effective backlog state, rerunkr-stock-dart-analysis -> kr-order-backlog-analysisand refresh the JSON, Markdown, and PNG together. - Run the Price & Chart Freshness Gate.
MANDATORY whenever the update is
refresh-now, the memo will be published (e.g. handed tokr-naver-blog-publish), or the user asks anything about price, valuation, target price, or upside. Fetch the live close, compare it to the memo's last-stated price, and if the gate triggers, regenerate the chart artifacts and recompute every price-derived fact. See Price & Chart Freshness Gate below. - Apply gated upstream skill calls.
Always prioritize DART/KRX/company sources. Add sell-side, Naver, or foreign-IB passes only when the user asked, the memo has an external-view gap, the sector is retail-favored, an earnings/consensus event requires it, or an existing
Street / Alternative Viewsclaim is unresolved. - Judge materiality and thesis delta.
Use
stronger,weaker,unchanged, orunclear. Do not turn every headline into a thesis change. - Write an update packet.
Use the v2 JSON shape in
references/script-inputs.md, including classification, thesis delta, event keys, follow-up resolutions, DART recheck rows, signals, sources, and the freshness-gate result (priceAsOf,priceMovePct,chartsRegenerated,valuationRecomputed). - Write back idempotently.
Run
scripts/normalize-update-log.jsto refresh최근 업데이트일and append or replace the dated block. Runscripts/apply-memo-section-updates.jswhen the hybrid gate allows selected section sync OR the freshness gate requires refreshing price-derived sections. - Answer the user. Lead with classification, the price as-of date and move since the memo, material changes, unchanged thesis points, and whether charts/valuation and any upstream memo sections were synchronized.
Read references/workflow.md for the detailed checklist. Read references/output-format.md for the expected update-block shape. Read references/script-inputs.md when using the bundled scripts with structured JSON inputs.
Price & Chart Freshness Gate (MANDATORY)
A memo's price, market cap, PER/PBR, valuation snapshot, target-price upside, and conclusion are all derived from one number: the last close the memo was written against. When that close is stale, every derived number and the 결론 are silently wrong. A KRX name can move 40% between the memo date and the update, so you cannot reuse the old valuation. This gate is not optional section sync — it is a data-staleness correction that runs before you write anything.
Trigger predicate (observable — do not skip on judgment):
Run the gate whenever ANY of these is true:
- classification is
refresh-now - the memo will be published or exported (any
kr-naver-blog-publishhandoff, PDF, or shared post) - the user asked anything about price, valuation, multiple, target price, upside, or 결론
- the live close differs from the memo's last-stated close by ≥ 5%
- the memo's last price date is more than 5 trading days before today
If you cannot fetch a live price, say so explicitly in the update block and mark the valuation as stale — not refreshed. Never present a stale multiple as current.
Required actions when the gate triggers (do all — this is the contract):
- Fetch the live close. Regenerate chart artifacts with the real scripts, do not hand-edit numbers:
This overwritesnode scripts/harness.js --mode chart --ticker <code> --company "<name>" # or directly: node skills/kr-stock-analysis/scripts/fetch-kr-chart.js --ticker <code> --range 1y node skills/kr-stock-analysis/scripts/chart-basics.js --input <chart-data.json> --png-out <assets/…>.pngchart-data.json,chart-analysis.md, and the linked*-chart*.pngpanels beside the memo. - Recompute every price-derived fact against the new close: 현재가, 시가총액, PER/PBR/EV·EBITDA, 밸류에이션 스냅샷 표, 목표주가 대비 upside, and any band/technical read.
- Revisit the 결론 / Structured Stance / Decision Frame. If the price moved enough to change the risk-reward (e.g. a name that was "추격 보류 (고평가)" fell 40%), the conclusion may flip. State the new price basis explicitly, e.g.
2026-07-07 종가 99,500원 기준. - Record the gate result in the update packet:
priceAsOf,priceMovePct,chartsRegenerated: true,valuationRecomputed: true.
Red flags — STOP, you are about to ship a stale memo:
- Reusing a market cap or PER whose price date is older than the memo's
최근 업데이트일. - Publishing to Naver Blog without regenerating the chart PNGs first.
- Writing a valuation or 결론 sentence that cites a price you did not fetch this session.
- Thinking "the charts probably didn't change much" — regenerate and verify, don't assume.
- Leaving
Decision Framequoting an old 종가 while the Update Log quotes a new one (internal contradiction).
Bundled Scripts
- Use
scripts/extract-report-baseline.jsto parse an existing markdown memo into structured baseline metadata. - Use
scripts/normalize-update-log.jsto render a dated update block and optionally write it back into the memo file. - Use
scripts/apply-memo-section-updates.jsto replace only allowed upstream memo sections when the materiality gate permits it. - Run all bundled scripts with
node. - If a DART reference digest exists, use it to identify which annual-filing sections were already parsed, which were partial, and which still need review.
Operating Rules
- If the update changes the memo's conclusion, rewrite the
한줄요약header line too (one sentence, at most 50 characters). If an older memo has none, add it directly under the title. - Preserve the original memo body unless the new information clearly changes the thesis or resolves a tracked follow-up issue.
- Keep the original
기준일line and update only최근 업데이트일. - Append dated updates under
## Update Log. If the same date already exists, replace that dated block instead of duplicating it. - Recognize existing dated blocks headed as
### YYYY-MM-DD,### YYYY-MM-DD Update, backticked dates, bullet dates, or numbered dated headings. - Cite every material factual claim in the dated update block.
- For post-earnings notes, write each dated block for readers as three bullets —
**바뀐 것:**,**판단:**(kept or changed, and why),**근거:**(links) — keep only the final value when an intraday observation was superseded the same day, and keep process notes (reordering, readability passes) out of the log. Seekr-stock-analysis/references/earnings-review.md. - Use exact dates for disclosures, results, investor events, and news.
- Separate verified facts from inference.
- Append trade-flow updates as
Trade Flow Inferencewith the confidence grade. Do not rewrite original customer or revenue-mix sections as confirmed unless DART/IR/company disclosures explicitly confirm them. - When order-backlog evidence changes materially, refresh
Order Backlog and Revenue Visibilityand its linked PNG in the same update. Never leave the memo pointing to a chart built from the prior contract state. - Prefer saying
no material changeover forcing a narrative. - If a requested update window has no material company-specific developments, add a short dated note saying so.
- Write event keys for material events when possible so future updates can deduplicate repeated coverage.
- Whenever the Price & Chart Freshness Gate triggers, regenerate the chart artifacts and recompute every price-derived fact (현재가, 시가총액, PER/PBR, 밸류에이션 표, 목표주가 upside, 결론). Never reuse a multiple or market cap tied to a price you did not fetch this session.
Hybrid Section Sync Gate
Keep section sync narrow. Update Summary, Structured Stance, Decision-Changing Issues, Follow-up Research Prompts, DART Recheck, Decision Frame, Order Backlog and Revenue Visibility, or guard-decision only when at least one trigger applies:
thesisDeltaisstronger,weaker, orunclear- DART recheck changes a thesis-critical claim to
contradictedorpartially supported guard-decisiontrigger orreview_byis stale- a tracked follow-up prompt was resolved or became obsolete
Do not rewrite Sources, Update Log, or the whole memo through the section updater. Valuation tables, the valuation snapshot, market cap, and chart sections are the one exception: when the Price & Chart Freshness Gate triggers you MUST refresh them against the newly fetched close (regenerate chart PNGs/JSON, recompute multiples), because leaving them stale ships a wrong 결론. This refresh is required, not gated by thesis delta.
Source Priority
- DART filings, KRX disclosures, and official company IR materials
- Exchange notices, shareholder-return disclosures, and governance pages
- Reputable local financial media for context when primary sources do not fully explain the move
- Gated outside views: sell-side reports, Naver blogger views, or foreign-IB news only when the outside-view gate triggers
Minimum Output Standard
- A statement of whether the base view strengthened, weakened, or stayed intact
- What happened after the memo date
- Why it matters
- What changed in the thesis
- What did not change
- Signals to watch next
- A dated source list
- An updated memo file when the workspace is writable
- The price as-of date and the move since the memo, plus whether charts and valuation were regenerated (or an explicit
stale — not refreshednote if a live price could not be fetched) - A statement of whether body sections were left unchanged or synchronized under the hybrid gate
- For order-driven memos with a material contract-state change, confirmation that
order-backlog-data.json,order-backlog-analysis.md, and the linked backlog PNG were refreshed together
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

