@v587d/capital-generation 2.7.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/LICENSE +1 -1
  3. package/README.md +7 -7
  4. package/THIRD_PARTY_NOTICES.md +12 -4
  5. package/capital-config/client.js +50 -10
  6. package/capital-config/client.src.cjs +376 -62
  7. package/capital-config/index.js +168 -5
  8. package/capital-config/package.json +1 -1
  9. package/capital-watchlist/package.json +1 -1
  10. package/chart-ui/package.json +1 -1
  11. package/lib/agents/selected-skills-provider.js +5 -5
  12. package/lib/index.d.ts +4 -28
  13. package/lib/index.js +8 -18
  14. package/lib/web-retriever/local-fetch.d.ts +1 -1
  15. package/lib/web-retriever/local-fetch.js +1 -1
  16. package/lib/web-retriever/wind-client.d.ts +1 -1
  17. package/lib/web-retriever/wind-client.js +1 -1
  18. package/package.json +2 -1
  19. package/selected-skills/InvestSkill/ADDING-NEW-SKILLS.md +546 -0
  20. package/selected-skills/InvestSkill/CHANGELOG.md +373 -0
  21. package/selected-skills/InvestSkill/CI-CD-GUIDE.md +432 -0
  22. package/selected-skills/InvestSkill/CLAUDE.md +148 -0
  23. package/selected-skills/InvestSkill/CONTRIBUTING.md +291 -0
  24. package/selected-skills/InvestSkill/DEPLOYMENTS.md +321 -0
  25. package/selected-skills/InvestSkill/FAQ.md +509 -0
  26. package/selected-skills/InvestSkill/GEMINI.md +419 -0
  27. package/selected-skills/InvestSkill/LICENSE +21 -0
  28. package/selected-skills/InvestSkill/PLATFORM-COMPATIBILITY.md +529 -0
  29. package/selected-skills/InvestSkill/README-claude-code.md +435 -0
  30. package/selected-skills/InvestSkill/README-cursor.md +475 -0
  31. package/selected-skills/InvestSkill/README-gemini.md +532 -0
  32. package/selected-skills/InvestSkill/README-ollama.md +106 -0
  33. package/selected-skills/InvestSkill/README-zh-TW.md +461 -0
  34. package/selected-skills/InvestSkill/README.md +311 -0
  35. package/selected-skills/InvestSkill/RELEASE-QUICK-REFERENCE.md +230 -0
  36. package/selected-skills/InvestSkill/RELEASE_NOTES.md +121 -0
  37. package/selected-skills/InvestSkill/SECURITY.md +232 -0
  38. package/selected-skills/InvestSkill/TODO.md +28 -0
  39. package/selected-skills/InvestSkill/UPSTREAM.md +62 -0
  40. package/selected-skills/InvestSkill/install.sh +212 -0
  41. package/selected-skills/InvestSkill/package.json +64 -0
  42. package/selected-skills/InvestSkill/plugins/us-stock-analysis/README.md +119 -0
  43. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/10k-digest/SKILL.md +338 -0
  44. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/bear-case/SKILL.md +233 -0
  45. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/catalyst-calendar/SKILL.md +327 -0
  46. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/chart-master/SKILL.md +648 -0
  47. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/competitor-analysis/SKILL.md +478 -0
  48. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/dcf-valuation/SKILL.md +109 -0
  49. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/dividend-analysis/SKILL.md +684 -0
  50. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/earnings-call-analysis/SKILL.md +456 -0
  51. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/earnings-preview/SKILL.md +277 -0
  52. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/economics-analysis/SKILL.md +349 -0
  53. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/etf-analysis/SKILL.md +279 -0
  54. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/fact-check/SKILL.md +288 -0
  55. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/financial-report-analyst/SKILL.md +544 -0
  56. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/full-report/SKILL.md +301 -0
  57. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/fundamental-analysis/SKILL.md +67 -0
  58. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/industry-map/SKILL.md +336 -0
  59. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/insider-trading/SKILL.md +502 -0
  60. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/institutional-ownership/SKILL.md +548 -0
  61. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/learning-coach/SKILL.md +311 -0
  62. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/options-analysis/SKILL.md +495 -0
  63. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/portfolio-review/SKILL.md +465 -0
  64. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/position-ladder/SKILL.md +429 -0
  65. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/report-generator/SKILL.md +857 -0
  66. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/research-bundle/SKILL.md +94 -0
  67. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/result-validator/SKILL.md +174 -0
  68. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/risk-stress-test/SKILL.md +293 -0
  69. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/sector-analysis/SKILL.md +426 -0
  70. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/short-interest/SKILL.md +397 -0
  71. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/stock-eval/SKILL.md +645 -0
  72. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/stock-screener/SKILL.md +244 -0
  73. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/stock-valuation/SKILL.md +640 -0
  74. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/tax-lens/SKILL.md +351 -0
  75. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/technical-analysis/SKILL.md +654 -0
  76. package/selected-skills/InvestSkill/plugins/us-stock-analysis/skills/thesis-tracker/SKILL.md +317 -0
  77. package/selected-skills/README.md +15 -5
  78. package/selected-skills/catalog.js +566 -14
  79. package/selected-skills/investment-skills/UPSTREAM.md +1 -1
  80. package/selected-skills/investment-skills/skills/buffett-investment-framework/SKILL.md +1 -1
@@ -0,0 +1,373 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ### Fixed
11
+ - **`full-report` ran alias stubs as analysis modules.** Quick depth took its DCF from the `dcf-valuation` redirect card, and comprehensive depth re-ran `stock-eval` / `stock-valuation` logic through `fundamental-analysis` / `dcf-valuation`, while its Thesis Invalidation relied on a `bear-case` module no depth ran. Module #3 is now `stock-valuation`; comprehensive #11–#12 are now `bear-case` and `catalyst-calendar` (still 15 modules).
12
+ - Cross-references to the alias skills (`/fundamental-analysis`, `/dcf-valuation`, `/research-bundle`) in `earnings-call-analysis`, `insider-trading`, `institutional-ownership`, `result-validator`, and `report-generator` now point at `stock-eval`, `stock-valuation`, and `full-report`.
13
+ - The FAQ's Claude API snippet used a retired model and omitted the required `max_tokens`; it now runs as written.
14
+
15
+ ### Changed
16
+ - **Prompt audit cleanup** (dated patterns written for older models):
17
+ - `insider-trading` and `institutional-ownership` usage examples no longer contain invented facts about real companies (e.g. an NVDA CEO purchase, a Soros stake in META); they describe what the output covers instead. Their output templates use `[Qn YYYY] [%]` placeholders instead of pre-filled 2024 figures.
18
+ - Thesis Invalidation in 17 skills drops the generic "closes below the MA200", "Fed pivots hawkish", and "earnings beat >20%" bullets that were copied into every skill (including macro and charting skills where they don't apply); each skill keeps its own trigger and asks for one or two more drawn from its own drivers. `technical-analysis` is unchanged.
19
+ - `economics-analysis` and `sector-analysis` Data Verification gates now ask for indicator releases and sector-ETF levels instead of a single ticker's price, 52-week range, and market cap.
20
+ - `financial-report-analyst` and `competitor-analysis` descriptions say when to use `10k-digest` and `industry-map` instead.
21
+ - `README-claude-code.md`, `PLATFORM-COMPATIBILITY.md`, and `FAQ.md` no longer pin model names (Opus 4.6, Claude 3); they point at whichever model the session runs.
22
+
23
+ ## [1.12.0] - 2026-09-25
24
+
25
+ The largest release since 1.0. The catalog reaches **30 analysis frameworks** across 34 skills: six new ones — `thesis-tracker`, `etf-analysis`, `earnings-preview`, `tax-lens`, `risk-stress-test`, `learning-coach` — plus the `fact-check` meta framework, with `fundamental-analysis` / `dcf-valuation` / `research-bundle` now counted as aliases. Every analysis skill carries the enforced output contract (`Data & Sources` header · Data Verification gate · Thesis Invalidation). The Learning track gains Part II (Lessons 9–13 and a "when the answer is no" case study), the docs site is redesigned, `install.sh` installs the frameworks into any AI agent with one command, and a **keyless SEC EDGAR path** — a retrieval recipe in the filing skills plus two optional, offline-tested helper scripts — gives users without a browsing assistant a primary source to paste. No API key, no runtime, no telemetry, as before.
26
+
27
+ ### Added
28
+ - **Keyless EDGAR retrieval recipe in the filing skills** (`10k-digest`, `financial-report-analyst`, `fact-check`; both `SKILL.md` and the generated prompts). The skills always *assumed* a filing could be fetched ("fetches latest 10-K") but never said how. They now spell out the free, no-key path a tool-enabled assistant can follow on its own — ticker → CIK (`company_tickers.json`), the `data.sec.gov/submissions` index with its aligned `form` / `filingDate` / `reportDate` / `accessionNumber` / `primaryDocument` arrays, the `Archives/edgar/data/<cik>/<accession>/<primaryDocument>` document URL, the XBRL `companyfacts` endpoint for cross-checking Item 8, full-text search, the `20-F` / `6-K` foreign-issuer forms, and the SEC's `User-Agent` and 10-requests-per-second rules — and how to label each path in the `Data & Sources` header (`web/tool retrieval` vs. `pasted by user` vs. `model memory` + LOW). No runtime was added: the skills still fetch nothing themselves.
29
+ - **Two optional "bring your own data" helpers** (roadmap §6.8, reshaped), zero-dependency Node ≥ 18, **outside the plugin** — optional commands for the user; `npm test` never runs them against the SEC (they need the network), only their offline suite: **`scripts/fetch-edgar.js <TICKER> [--form 10-K|10-Q|8-K|"DEF 14A"|4] [--fy YYYY | --period DATE] [--limit N] [--list]`** downloads the primary document from EDGAR and saves it as HTML *and stripped plain text* (tables kept legible) plus a `.json` with accession, dates, URLs and ready-made `Data & Sources` fields, under `data/filings/<TICKER>/`; 10-K falls back to 20-F for foreign private issuers. **`scripts/fetch-fundamentals.js <TICKER> [--fy YYYY]`** builds a reconciled statement data pack (`data/fixtures/<TICKER>.md`, same shape as the ZEPH eval fixture: income statement, balance sheet, cash flow for the latest and prior fiscal year, derived FCF / net debt / margins, an `expect:` list, references with accession numbers) from the SEC's XBRL companyfacts API — no PDF parsing, the "as first reported" filing per period, ordered concept chains that survive tag drift (Revenues → SalesRevenueNet → RevenueFromContract…). It carries **no price line** by design and says so. Shared plumbing in `scripts/lib/edgar.js` (CIK lookup, paginated submissions, paced requests, HTML→text). `npm run fetch:edgar` / `npm run fetch:fundamentals` aliases. Reshaped from the finance_data project's Python downloaders: same EDGAR logic, but text instead of Playwright-rendered PDFs, because the skills consume text. **Tested offline** by `scripts/test-edgar.js` (`npm run test:edgar`, in `npm test` and the three CI workflows): the library in-process and both CLIs as real subprocesses against a fetch double (`scripts/lib/edgar-mock-fetch.js`) that serves a synthetic EDGAR — ticker normalisation, paginated archive blocks, retry on 503 / no retry on 403, User-Agent on every request, inline-XBRL stripping, filename keys per form, idempotent re-runs, 20-F fallback, partial-failure exit codes, and a generated pack whose front block parses with the eval harness's own parser and whose FY2024 figures come from the original 10-K rather than a mis-scaled comparative. The Data & Accuracy page (EN + 繁體中文) gains a **Bring Your Own Data: The Keyless EDGAR Path** section covering all three routes (assistant fetches · you download and paste · paste what you have); both READMEs link to it.
30
+ - **Learning track Part II — five lessons, a "No" case study, self-check quizzes, and 32 glossary terms** (EN + 繁體中文), following the [Learning gap review](doc/LEARNING-GAP-REVIEW.md): the site taught *how to analyze a company* well but almost nothing about the first months of actually investing. New pages: **Lesson 9 · Before Your First Trade** (money you don't invest, risk capacity vs. tolerance, a one-page IPS template, US and non-US account types, W-8BEN, choosing a broker, market vs. limit vs. stop orders, T+1, a first-month checklist) · **Lesson 10 · ETFs & Index Investing** (expense ratio with a 20-year cost illustration, tracking difference vs. tracking error, AUM / spread / premium, what you actually own, overlap arithmetic, core-satellite, leveraged / inverse / ETN / K-1 warnings) · **Lesson 11 · Taxes & Account Types** (short vs. long-term and "wait N days", the $3,000 / $1,500 loss limit, the 61-day wash-sale window across accounts, the qualified-dividend 60-of-121 test, lot selection, harvesting, placement; a full **non-US section** — W-8BEN validity, 30% vs. treaty withholding with Taiwan / HK / Singapore named as no-treaty, capital-gains treatment with the 183-day condition and exceptions, the $60,000 estate-tax exemption, the Irish-UCITS route; not tax advice) · **Lesson 12 · Earnings Season, Explained** (the cycle, consensus / guidance / whisper, beat-and-drop, the event-only non-directional implied move, what's priced in, reading a release and an 8-K, the scenario grid, what not to do) · **Lesson 13 · Psychology & Process** (process vs. outcome, eight biases with mechanism antidotes, pre-mortem, checklists, a journal template, sell rules vs. reasons, drawdowns in dollars) · **Case Study: When the Answer Is No** (the loop ending in a pass on PFE and UPST, from the Cookbook's dated live runs). Every new page ends with a five-question **Check yourself**. The Learning hub is split into Part I (1–8) and Part II (9–13 + case); nav, language toggle, and search index updated; `learning-coach --quiz` knows the new lessons. Glossary 44 → **76** terms (AUM, anchoring, beat-and-drop, bid-ask spread, consensus, correlation, disposition effect, drawdown, estate tax for non-residents, ex-dividend date, expense ratio, guidance, implied move, IPS, limit / market order, overlap, pre-mortem, process vs. outcome, qualified dividend, T+1 settlement, Sortino, specific identification, tax-loss harvesting, tracking difference / error, UCITS, VaR / CVaR, W-8BEN, wash sale, whisper number, withholding tax), with new L / O / U / V sections.
31
+ - **`fact-check`** — new meta framework: claim-level verification of any report or data set. Pulls **every figure and factual claim** into a ledger (type · period · signal-driving?), checks each against a **primary source** (SEC filing with Item/Note/page, IR release, FRED, issuer data, or the user's pasted document — model memory is never a source), **recomputes every derived figure** from verified inputs with the arithmetic shown, and assigns a verdict: ✅ verified · ⚠️ mismatch (source value, delta, likely cause — fiscal-year, TTM vs. FY, GAAP vs. adjusted, basic vs. diluted, units, stale price) · ❓ unverifiable (never presented as false) · 🔁 recomputed · 🕒 stale. Checks the report's own consistency (numbers vs. narrative, signal vs. score band, whether its `Data & Sources` header overstates what was verifiable, fabricated or unopenable citations). Re-issues the report as a **corrected copy with inline `[n]` citations and a References section** (originals struck through, `[?]` on unverifiable claims, `[unsupported]` on qualitative claims without evidence). Modes: Verify (default), `--cite-only`, `--recompute`, `--diff`. **Verification Score 0–10** with hard caps (signal-driving mismatch > 5% → ≤ 4.0; > 50% unverifiable → ≤ 5.0; header overstated → ≤ 6.0; any fabricated citation → 0). The signal block mirrors the verified report's own signal with Confidence capped by the score. Wired in: `result-validator` Data Quality is now capped by the fact-check score and points to it; `full-report` runs `fact-check` before `result-validator`; the Data & Accuracy pages (EN + zh-TW) describe the two-step "verify inputs, then validate reasoning" habit; Choose-a-Skill gains a `fact-check` vs. `result-validator` comparison (both languages); Cookbook Workflow E adds the step. Advertised count 29 → **30 frameworks**; 34 skills.
32
+ - **Five new analysis frameworks — the rest of the roadmap's Tier 1 (§3.1), scaffolded with `scripts/new-skill.js`.** Advertised count 24 → **29 frameworks** (+ 3 aliases, 1 output tool); 33 skills in total. Each carries the full output contract (Data Verification · `Data & Sources` header · Thesis Invalidation · signal block · disclaimer) and is wired into the site (`skills.html`, both Choose-a-Skill pages), both READMEs, the three cross-AI configs, and Cookbook Workflow I (both languages).
33
+ - **`etf-analysis`** — ETF / index-fund due diligence. Nine phases with concrete thresholds: expense ratio vs. category bands; tracking *difference* vs. tracking *error* (with a tracking-gap flag); AUM / ADV / spread / premium tiers and closure risk; top-10 weight, holdings count, sector / factor / country / currency tilt vs. the index the user thinks they are buying; **overlap by weight with the user's other holdings** (min-weight arithmetic, redundant / partial / complementary verdict, labelled as a lower bound when only top-10 data is available); distribution composition and capital-gains-distribution history (in-kind redemption explained); a structure-warning table (leveraged / inverse daily reset, synthetic, ETN credit risk, single-stock, commodity K-1, hedged, covered-call, active); 2–3 peers and an "ETF vs. buying the top 5 holdings directly" comparison; a UCITS / withholding note for non-US holders pointing to `tax-lens --non-us`. **ETF Fitness Score 0–10** with hard caps for leveraged / inverse / single-stock funds held long-term, ETNs, and > 60% overlap.
34
+ - **`earnings-preview`** — the *before*-earnings skill (`earnings-call-analysis` is post-call; `catalyst-calendar` only lists the date). Expectation stack (prior guide, consensus, 90-day revision direction, a labelled whisper range and gap); an 8-quarter beat / miss vs. next-day-move table that surfaces "beat and drop" patterns; options-implied move (straddle ÷ price) vs. the realized median — is the event over- or under-priced; **what is priced in** via a light reverse-DCF (implied forward growth at the current multiple vs. consensus); the company's KPIs and the one number that decides the reaction; a four-row scenario grid (beat & raise / beat & lower / miss / in line) with probabilities, expected reaction, and a **position rule decided before the print**, tied to `position-ladder` and `thesis-tracker`; a "what not to do" list. **Earnings Setup Score 0–10** defined as holder asymmetry — explicitly *not* "buy before earnings".
35
+ - **`tax-lens`** — what the investor actually keeps. Trade / Position / Portfolio modes: holding-period character with a "wait N days" table (tax saved vs. the price fall that erases it); a 61-day **wash-sale timeline** across all accounts including DRIP and IRA repurchases; the qualified-dividend 60-of-121-day test and after-tax yield; lot selection (specific-ID vs. FIFO vs. HIFO) with the tax under each; tax-loss-harvesting pairs with non-identical replacements and the basis-reset warning; account-placement table; an annual **tax-drag** formula. **`--non-us` module** for non-resident aliens: W-8BEN validity, 30% statutory withholding vs. treaty rate (and the no-treaty case — Taiwan, Hong Kong, Singapore), capital gains generally not US-taxed with the 183-day condition and the ECI / FIRPTA exceptions stated, **US estate-tax exposure above the $60,000 exemption**, and a US-ETF vs. Irish-UCITS comparison table with the after-withholding arithmetic. Hard not-tax-advice gate opens and closes every output; Confidence capped at MEDIUM when bracket, residency, or lot dates were assumed. **Tax Efficiency Score 0–10** — rates the plan, never the security.
36
+ - **`risk-stress-test`** — portfolio / position risk report. Per-position weight × β table, net beta and dollar-beta to SPY; **historical scenario replay** (2008 GFC, March 2020, 2022 rate shock, 2025 tariff shock) via each holding's own history or a β / sector proxy marked as such, index magnitudes labelled approximate; parametric VaR and CVaR at 95 / 99% for 1 day and 1 month with the formulas and constants shown and the normal-tail caveat ("trust the replay if they disagree by > 2×"); portfolio σ under normal vs. crisis (ρ → 0.85) correlations and the diversification-benefit gap; rate / USD / oil factor sensitivities; days-to-exit at 20% of ADV with illiquidity flags; a "smallest changes to get inside budget" section handing tax cost to `tax-lens` and execution to `position-ladder`. **Risk Budget Score 0–10** (≥ 7 within budget → BULLISH; < 4 → BEARISH). Honest about what an LLM cannot compute from memory — the inputs to paste (β, σ, ADV, weights) are listed up front.
37
+ - **`learning-coach`** — the bridge between the tool half and the Learning half of the project. **Explain** mode: reproduces the pasted analysis's `Data & Sources` header (or writes a LOW-confidence substitute and teaches why it matters), checks the three contract pieces, then one *explanation card* per signal-driving metric (plain words · why it matters · generic and sector range · in this case · Learning lesson + Glossary link), a "how the pieces connect" paragraph, a *common misreadings* list, and a 3–5 rung Socratic ladder ending in "what would change your mind?" tied to the analysis's own Thesis Invalidation. **`--quiz <lesson>`**: five questions on one Learning lesson (2 recall · 1 calculation with a tiny worked data set · 2 judgment), answers hidden under an Answers heading. `--level beginner | intermediate`, `--lang zh-TW`. Never re-scores: the signal block mirrors the analysed output.
38
+ - **`thesis-tracker`** — new analysis framework (#6 on the [improvement roadmap](doc/IMPROVEMENT-ROADMAP.md)). Turns an analysis into a contract with your future self: a falsifiable one-paragraph thesis, 3–5 KPIs with thresholds, invalidation triggers imported from the other skills' Thesis Invalidation sections and `bear-case`'s Thesis-Killers, a catalyst list, a pre-mortem, and a decision log, saved to `output/thesis/<TICKER>.md`. `--update` re-reads the file against new data and returns **INTACT / WEAKENED / BROKEN** with the specific line that changed; `--review` lists every thesis file and flags overdue checks; `--close` records the exit for a later post-mortem. Scored by a Thesis Health Score (0–10) mapped onto the standard signal block. Wired into the site (Advanced Research), both Choose-a-Skill pages, Cookbook Workflow H (both languages), READMEs, and the cross-AI configs. Fills Playbook steps 1, 9, and 10, which had no skill behind them.
39
+ - **Skill contract enforced on every analysis skill** (roadmap #2). Each of the 24 analysis frameworks — in both `SKILL.md` and `prompts/*.md` — now carries the three pieces the site promises: the **`Data & Sources` header** (As of · Source · Retrieval · Confidence, the block documented on the Data & Accuracy page; previously only `full-report` had it), the **Data Verification gate**, and a **Thesis Invalidation** section (added to `full-report`, `portfolio-review`, and `stock-screener`, each written for that skill's kind of output). `result-validator` now checks for the header first and caps Data Quality when it is missing. Enforced by the new `scripts/check-skill-contract.js` in `npm test`; output tools, aliases, and meta skills are exempt via `scripts/lib/skill-registry.js`.
40
+ - **`scripts/sync-prompts.js`** (roadmap #9, §6.1) — `prompts/<name>.md` is now **generated** from `SKILL.md` (frontmatter stripped; `/us-stock-analysis:x` → `x`; `/x` → `x`; "Claude analyzes …" → "The assistant analyzes …"). `--check` runs in `npm test` and fails on drift; `--diff` shows it. All 28 prompts were regenerated: the hand-condensed versions of 15 prompts (some at a quarter of the SKILL.md length) are replaced by the full text, so every platform now gets the same framework.
41
+ - **`scripts/new-skill.js <name> --category … --title … --desc …`** (roadmap #9, §6.2) — scaffolds a skill from a template that already contains the full contract and wires it into the site's `SKILL_CATEGORIES`, both `CHOOSE-A-SKILL` pages, both READMEs, the three cross-AI configs (table row + directory tree), and this changelog. `thesis-tracker` was built with it.
42
+ - **`scripts/eval-skills.js`** (roadmap #10, §6.4) — opt-in behavioural eval. With `EVAL_CMD` set to any command that reads a prompt on stdin (`claude -p`, `ollama run …`), it runs each skill against a fixed data pack and checks the *output*: signal block present and filled, enum values valid, Score consistent with Signal, `Data & Sources` header complete and honest (`Retrieval: pasted by user` for a fixture; `model memory` must be LOW), disclaimer present — plus advisory arithmetic checks (FCF = OCF − capex, net debt, P/E, growth, payout) against the fixture's `expect:` list. `--dry-run` writes the prompts for manual or `claude plugin eval` runs; `--from-dir` scores saved completions. Writes `qa/eval_YYYYMMDD.md`. Fixture: `data/fixtures/ZEPH.md`, a fictional company so the numbers never go stale and cannot be recalled from memory.
43
+ - **`scripts/lib/signal-block.js`** (§6.11) — one shared parser for the signal block and the `Data & Sources` header, used by the contract check and the eval harness. **`scripts/lib/skill-registry.js`** — the single source of truth for which skills are output tools, aliases, or meta skills; imported by `test-skills.js`, `test-install.js`, `check-skill-contract.js`, and `site/build/build-site.js`.
44
+ - **Roadmap progress tracking** — `doc/IMPROVEMENT-ROADMAP(.md|-zh-TW.md)` gained a §0 status table for the ten headline items and a Status column on the scripts table; `TODO.md` is now a curated top-5 that links to it.
45
+ - **`install.sh` — one-command install for any AI agent.** `curl -fsSL https://raw.githubusercontent.com/yennanliu/InvestSkill/main/install.sh | bash -s -- -a <agent>` copies every framework into `.investskill/prompts/` and wires up that agent's own entry point: `claude` → `.claude/skills/<skill>/SKILL.md` (slash commands), `cursor` → `.cursor/rules/investskill.mdc`, `copilot` → `.github/copilot-instructions.md`, `gemini` → `GEMINI.md`, `codex` / `opencode` → `AGENTS.md`, and `any` → the prompts alone for ChatGPT, Claude.ai, or a local model. Existing instruction files are **appended to inside a marked block, never overwritten**, and a second run is a no-op. Flags: `-a` agent, `-d DIR` target directory, `-g` user-level install (`$HOME`), `-r REF` branch/tag, `-l` list targets, `-h` help. No runtime and no dependencies beyond `curl` and `tar`.
46
+ - **Tests + CI for `install.sh`.** `scripts/test-install.js` (`npm run test:install`, also part of `npm test`) — 116 checks in two layers: static checks on the script (bash shebang, `set -euo pipefail`, executable bit, `bash -n`, `rm -rf` confined to its own `mktemp` dir, every `AGENTS` entry handled in the wiring `case` and documented by `-l`) plus parity checks against `INSTALL_TARGETS` in `site/build/build-site.js` and against every documented `curl` command in the READMEs and Cookbooks. On top of that it *runs* `install.sh` in throwaway sandboxes with a `curl` test double that serves a tarball built from the working tree — offline, but the real download → extract → copy → wire path — asserting: all 27 prompts land in `.investskill/prompts/`, the reported count excludes `report-generator`, each agent writes its own entry point (`.claude/skills/*/SKILL.md`, `.cursor/rules/investskill.mdc`, `.github/copilot-instructions.md`, `GEMINI.md`, `AGENTS.md`), `-a any` writes prompts only, an existing instructions file is appended to and never overwritten, a second run is byte-identical with exactly one marker block, `-g`/`-d`/`-r`/`-l`/`-h` behave, unknown agents and flags fail loudly, and a failed download or a bad archive leaves the project clean. New workflow `.github/workflows/install-script.yml`: shellcheck + `bash -n` lint, the test suite on Linux and macOS (BSD `tar`/`sed`) and on the Node 18 engines floor, and a live `curl … | bash` install of the commit under test for all seven agents including an idempotent re-run.
47
+ - **Site — install picker on both landing pages** (`#install`, English + 繁體中文): agent tabs (Claude Code · Cursor · GitHub Copilot · Gemini CLI · Codex · OpenCode · Any LLM), the matching `curl` command with a copy button, the file each target writes, and the first command to run afterwards. The visitor's chosen agent is remembered between visits, and the landing "Get Started" CTA now scrolls here. Built by `buildInstaller()` in `site/build/build-site.js` — keep its `INSTALL_TARGETS` list in sync with the `AGENTS` list in `install.sh`.
48
+ - Install instructions for the curl path added to `README.md`, `README-zh-TW.md`, the per-platform guides (`README-claude-code.md`, `README-cursor.md`, `README-gemini.md`, `README-ollama.md`), and both Cookbooks (`site/content/COOKBOOK.md`, `COOKBOOK-zh-TW.md`).
49
+ - Site demo — **META 10-K Deep Dive** (`site/content/FULL-DEMO-META.md` → `full-demo-meta.html`), the reference example for *"analyze a financial report with the skills in this plugin."* Unlike the NVDA/AMD demos (one skill run end-to-end), this one **chains nine skills over a single 138-page PDF** — Meta Platforms' FY2025 Form 10-K, filed 2026-01-28 — in the order `10k-digest` → `financial-report-analyst` → `fundamental-analysis` → `chart-master` → `bear-case` → `stock-valuation`/`dcf-valuation` → `catalyst-calendar` → `position-ladder` → `result-validator`. Every figure is quoted verbatim and cited to an Item/Note and printed page. Demonstrated techniques include: **diffing two consecutive filings** to surface strategy shifts in management's own language ("superintelligence" 0 → 9 mentions, "metaverse" 18 → 9); a **prior-year promise tracker** scoring FY2024's guidance against FY2025 actuals (capex guided $60–65B, delivered $72.2B); **normalizing a one-off tax charge** (the $15.93B OBBBA valuation allowance turns a −3% net income year into +24% adjusted EPS growth); **off-balance-sheet forensics** on the unconsolidated Louisiana data-centre VIE (Note 5 — $45.95B maximum exposure to loss, $28B residual value guarantee, a new critical audit matter) plus $103.8B of not-yet-commenced leases and $131.0B of contractual commitments against $148.8B of recognized liabilities; a **three-scenario DCF** whose base case reproduces the filing's own year-end close of $660.09 to within 0.3%; and an honest **data-gap disclosure** for the five chart exhibits that do not render in the source PDF, reconstructed from text and reconciled. Ends with a `result-validator` confidence audit (82/100) that names where the analysis is most likely to be wrong. Wired into both language navs and the Demo Overview page. No new skill — framework count unchanged at 26.
50
+ - Cookbook — **seven live workflow runs (§3.12–3.18)** added to the demo section of `COOKBOOK.md` and `COOKBOOK-zh-TW.md`. Each of Workflows A–G from §4 is executed end-to-end against a real US-listed stock using live market data (run date 2026-07-27, prices as of the 2026-07-24 close), with per-step output, the arithmetic behind each conclusion, a signal block, and cited sources: **A** pre-earnings deep dive on AAPL (into the 30 Jul print — implied move ±5.38%, price 0.6% off the 52-week high → trim); **B** value screen on PFE (7.01% yield costs 103.4% of free cash flow against $17–18B of contractual LOE → value trap); **C** dividend sleeve JNJ/ABBV/PG (ABBV's 336% *accounting* payout is 61.2% on *cash* — plus a 2.52% blended yield and 67% healthcare concentration); **D** swing setup on UPST (31.44% of float short, but 0 of 3 technical confirmations and 1.17:1 reward/risk → **no trade**); **E** full memo on NVDA (reverse DCF: today's $4.97T EV requires ~35% year-1 FCF growth at a 12% WACC); **F** sector rotation in the July 2026 regime (Fed on hold at 3.50–3.75%, core CPI 2.6%, curve +78 bp — XOM's macro call is already in estimates at 12.58× forward, JPM's is not); **G** position ladder on AVGO (5 rungs anchored on the 200-day MA and 1-ATR spacing, wash-sale window flagged, and the trim leg shown to cost $1,300 in a rally).
51
+ - Site — explicit "no API keys, completely free" messaging: a new **No API Keys, No Cost** section on both homepages (English + 繁體中文) covering API keys, subscriptions, market-data fees, runtime, and license; a `$0 · no API keys` cost badge; a `$0 / No API keys · no fees` hero stat on the landing pages; and a matching note on the Data & Accuracy pages explaining why no key is needed.
52
+
53
+ ### Changed
54
+ - **Site redesign** (`site/build/`). The two landing pages (EN + zh-TW) are now real landing pages instead of a rendered README: a two-column hero with a serif headline, an animated terminal mock that plays a `/stock-eval AAPL` run ending in the INVESTMENT SIGNAL block, a stat strip, a three-step "How it works", the install picker, **framework-category cards** generated from `SKILL_CATEGORIES` (so new skills appear automatically), an eight-lesson Learning track, demo cards, and a Trust section — the README body still renders below a divider so every existing `index.html#…` anchor keeps working. **Skill Reference** (`skills.html`) is a filterable card grid (text filter + category chips, `#category` deep links pre-select a chip, `/` focuses the filter). **Per-skill pages** gain a category eyebrow, the SKILL.md description as subtitle, a "Run this skill" box with copyable invocations for Claude Code / Cursor & Gemini / any LLM, related-skill chips, and previous / next navigation in category order. Site-wide: a bilingual footer, previous / next pager on every page, copy buttons on code blocks, a reading-progress bar and back-to-top button, glass header, dark mode that follows `prefers-color-scheme` with no flash (inline theme script), keyboard-navigable search with highlighted matches, a mobile sidebar backdrop, horizontally scrolling tables, per-page `<title>` / description / Open Graph / canonical tags, an SVG favicon, and a redesigned 404. No content files changed; `npm test` and `scripts/check-links.js` pass unchanged.
55
+ - **`fundamental-analysis`, `dcf-valuation`, and `research-bundle` are reclassified as aliases** (roadmap #3, §4.2 option b). They remain installed and keep working as redirects, but are no longer counted or listed as frameworks. The advertised count is now **24 analysis frameworks (+ 3 aliases, 1 output tool)** across `README*.md`, the site (own "Aliases (redirects)" category on `skills.html`, `Skill Reference` subtitle), both Choose-a-Skill pages (rows and comparisons now point at `stock-eval` / `stock-valuation` / `full-report`), both Cookbooks, `GEMINI.md`, the Cursor rules, the Copilot instructions, `plugin.json`, `marketplace.json`, `install.sh`'s reported count, and `CLAUDE.md`. Test 14 asserts each alias states its redirect target and sits in the Aliases category.
56
+ - **Stale numbers fixed everywhere the roadmap's §7 found them** (roadmap #1): `README.md` "23 native slash commands" → 28; the Contributing section no longer tells you to edit a `plugin.json` skills array; hard-coded test counts ("288+", "294+") dropped in favour of "all passing"; `FAQ.md` and `PLATFORM-COMPATIBILITY.md` "18 skills" → 28 skills / 24 frameworks; `CONTRIBUTING.md` no longer links a non-existent issue template; `CI-CD-GUIDE.md` "18 skills" wording removed. `HIGH-IMPACT-IMPROVEMENTS.md`, `CI-CD-FIXES-SUMMARY.md`, `DEPLOYMENT-STATUS.md`, and the old `TODO.md` moved to `doc/archive/`.
57
+ - **Tests** — `npm test` now runs four suites: `test-skills.js`, `check-skill-contract.js`, `sync-prompts.js --check`, and `test-install.js`. `test-skills.js`: the framework-count check derives its expected value from `skill-registry.js`, ignores parenthesised category sub-counts like "(10 frameworks)", covers `FAQ.md` / `PLATFORM-COMPATIBILITY.md` / `CONTRIBUTING.md` (§6.9) and "N skills" claims; new Test 14 for aliases. `test-install.js` expects the installer to report the alias-aware count. `integration-tests.js` checks `TODO.md` links the roadmap instead of requiring the archived `DEPLOYMENT-STATUS.md`.
58
+ - `ADDING-NEW-SKILLS.md` — documents the `new-skill.js` fast path, the generated-prompt rule, the enforced contract, and the auto-discovery of skills (the plugin.json skills-array step was stale). `report-generator` SKILL.md now contains the signal-format section that previously existed only in its prompt, and its HTML template no longer brands the report "Claude Investment Analysis".
59
+ - Cookbook §4 — recipe tickers refreshed so the worked examples stay accurate: Workflow B now uses `PFE` (Intel no longer screens as a value candidate), Workflow D uses `UPST`, and Workflow A cites `Q2-2026`. Each workflow now links to its live run in §3.
60
+ - `scripts/site-review.js` — daily QA reports in `qa/` are now capped at a 5-day retention window (`RETENTION_DAYS`); older `site_review_YYYYMMDD.md` files are pruned on each run. `PROJECT-REVIEW.md` is untouched.
61
+ - `install.sh` — the framework count is now computed with a glob instead of `ls | grep` (shellcheck SC2010); output is unchanged.
62
+ - `.github/workflows/site-review.yml` — stages `qa/` with `git add -A` so pruned reports are committed as deletions alongside the new report. Pruned the existing 19-report backlog down to the last 5 days.
63
+
64
+ ### Removed
65
+ - **`data/AMD_2026_10-K.pdf` and `data/NVDA_2026_10-K.pdf`** — two hand-placed PDFs that no script produced, no test or page referenced, and that were already stale. `fetch-edgar.js` reproduces either as text on demand. `data/filings/` and generated real-ticker packs under `data/fixtures/` are now git-ignored (only the fictional `ZEPH.md` fixture is committed), so the repository never vendors filings.
66
+
67
+ ## [1.11.0] - 2026-07-27
68
+
69
+ ### Added
70
+ - `position-ladder` — new skill: plan and manage a **single position across its life**, the execution layer the catalog was missing. Sets a share-count band (floor / ceiling) from the most restrictive of the concentration, capital, and loss-tolerance caps; builds a staged **entry ladder** (volatility-scaled / fixed-% / support-based / fixed-$ spacing, with equal-share, equal-dollar, or pyramid sizing) and computes capital at full fill, blended average cost, and the drawdown the plan expects to sit through; models the **trim / re-add cycle** that sells the highest-cost lots above blended average cost and buys them back below it, oscillating inside the band. Includes the parts retail versions of this strategy omit: **lot-accounting** (specific-ID vs. broker-default FIFO), **wash-sale flagging** with the 30-day window and the IRA-repurchase trap, holding-period effects, a mandatory **total-return-vs-buy-and-hold** reality check across three price paths (so a lower average cost is never mistaken for a profit), an **underfill** mitigation for names that never pull back, a **thesis-break gate** with a do-not-ladder list (leveraged ETFs, binary-event names, solvency cases), and a 0–10 **Ladder Suitability Score**. Complements `portfolio-review` (which works *across* holdings) by working *inside* one. Brings the advertised framework count to 26.
71
+
72
+ ## [1.10.1] - 2026-07-22
73
+
74
+ ### Enhanced
75
+ - `10k-digest` — added four interpretation sections to the digest output: **Highlights & Concerns** (dedicated positives/negatives lists), **Management Outlook & Forward Guidance** (forward-looking commitments table), **Prior-Year Promise Tracker** (accountability audit scoring last year's 10-K guidance against this year's actuals, with a management-credibility read), and **Bull vs. Bear Synthesis** (lightweight filing-sourced face-off). Added suggested Traditional Chinese headings for the new sections. No new skill — framework count unchanged at 25.
76
+
77
+ ## [1.10.0] - 2026-07-12
78
+
79
+ ### Added
80
+ - `industry-map` — new skill: map an industry's supply / value chain as a directed graph, from raw inputs upstream down to the end user. Provides a bird's-eye view of a business: builds the chain as a Mermaid flowchart (with ASCII fallback) plus a chain-map table, locates a given ticker's position (upstream / midstream / downstream) and its up/downstream dependencies, scores each layer for bottleneck/chokepoint power (the durable "toll collectors"), maps where the profit pool sits today and where it is likely to migrate next, flags concentration & supply-chain risk, and generates second-order investment ideas per layer (core / picks-and-shovels / avoid). Complements `competitor-analysis` (one company's moat, horizontal) and `sector-analysis` (GICS rotation) by mapping a theme vertically, across sectors. Brings the advertised framework count to 25.
81
+
82
+ ## [1.9.0] - 2026-07-05
83
+
84
+ ### Added
85
+ - `bear-case` — new skill: a deliberate short-seller red-team that constructs the strongest possible bear thesis for a stock (why NOT to hold). Covers valuation stretch, deteriorating fundamentals, accounting/earnings-quality red flags, competitive & secular threats, management & capital allocation, downside catalysts with timelines, a quantified bear price target, and a mandatory "Thesis-Killers" section listing what would prove the bear wrong. Produces a 0–10 Bear Case Strength Score and is intended to surface counterevidence for any bullish thesis (pair with `stock-eval` for a balanced view). Brings the advertised framework count to 24.
86
+
87
+ ## [1.8.1] - 2026-06-23
88
+
89
+ ### Added
90
+ - `10k-digest` — new skill: deep-read a 10-K annual report and output a structured markdown digest document. Includes abstract, section-by-section summaries (Items 1–13), key metrics table, notable disclosures, and full source references. Supports `--lang zh-TW` for Traditional Chinese output and `--output <file>.md` to save the digest as a markdown file.
91
+
92
+ ## [1.8.0] - 2026-06-19
93
+
94
+ ### Merged (reduced redundancy)
95
+ - `dcf-valuation` merged into `stock-valuation` — stock-valuation is now the superset with deep DCF + multi-method valuation; dcf-valuation becomes a thin redirect
96
+ - `fundamental-analysis` merged into `stock-eval` — stock-eval absorbs deep financial statement analysis; fundamental-analysis becomes a thin redirect
97
+ - `research-bundle` unified into `full-report` — full-report now supports --depth quick/standard/comprehensive flags; research-bundle becomes a thin redirect
98
+
99
+ ### Enhanced
100
+ - `sector-analysis` — expanded from 121 to 300+ lines: sector valuation tables, seasonality calendar, correlation matrix, momentum scoring, peer benchmarking, sector-specific risks
101
+ - `portfolio-review` — expanded: concentration risk scoring, correlation/diversification analysis, tax-loss harvesting framework, factor exposure, rebalancing decision framework, drawdown/risk budget
102
+ - `dividend-analysis` — expanded to Capital Allocation Analysis: buyback analysis, M&A capital allocation, debt management, FCF deployment scorecard, capital allocation quality score
103
+
104
+ ### New Skills
105
+ - `stock-screener` — ranks/screens multiple tickers across valuation, quality, momentum, sentiment, and growth dimensions; outputs ranked leaderboard + top picks + avoid list
106
+ - `catalyst-calendar` — forward-looking 90-day event calendar: earnings, macro events, company-specific catalysts, impact scoring, event-driven strategy suggestions
107
+
108
+ ### Added
109
+ - Thesis Invalidation section added to all 16 single-ticker skills — specifies price levels and events that would reverse the signal, plus a re-analysis monitoring checklist
110
+
111
+ ## [1.7.0] - 2026-06-19
112
+
113
+ ### Enhanced
114
+ - `technical-analysis` skill — added MA Chart Analysis section: mandatory 30/60/90/200/365-day SMA position table with ASCII trend chart, MA stack signal (BULLISH/BEARISH/MIXED), crossover event detection, and a structured MA-Based Trade Recommendation block (entry price / target / stop-loss / R:R ratio / horizon)
115
+
116
+ ### Added
117
+ - Data verification gate added to all 16 single-ticker skills — every skill now opens with a mandatory `⚠️ Data Verification` section requiring live price lookup, explicit stale-data warning, and data-source citation before any analysis proceeds
118
+ - `FULL-DEMO-PLTR.md` — complete all-15-skills demo for Palantir Technologies in English (275K chars), covering technical, fundamental, stock-eval, economics, sector, insider-trading, institutional-ownership, short-interest, earnings-call, chart-master, DCF, stock-valuation, options, dividend, competitor analysis + master synthesis
119
+ - `FULL-DEMO-RKLB.md` — complete all-15-skills demo for Rocket Lab USA in Traditional Chinese (106K chars), fully verified against live market data ($107.24, 52-wk $27.84–$151, Q1 2026 EPS Beat +58%)
120
+ - Project site: new **Demo** nav section with three pages — Demo Overview, PLTR Full Demo (English), RKLB 完整示範 (繁體中文)
121
+
122
+ ## [1.6.0] - 2026-04-29
123
+
124
+ ### Added
125
+ - `full-report` skill — orchestrates all 15 analysis modules on a ticker and saves a single professional HTML report to `output/`
126
+ - Enhanced `chart-master` skill with MA overlay, Price+Volume dual-panel, Return Histogram, RSI, MACD, and Support/Resistance charts
127
+ - Consistent Chart.js color palette and style guidelines in chart-master
128
+
129
+ ## [1.5.0] - 2026-04-28
130
+
131
+ ### Added
132
+ - New `/result-validator` skill: meta-analysis agent that audits any InvestSkill output across five dimensions (data quality, methodology soundness, signal consistency, risk coverage, reasoning transparency) and produces a 0–100 confidence score with tier rating (Very High / High / Medium / Low / Very Low) plus adjusted signal block
133
+ - New `/chart-master` skill: visualization agent that generates financial charts in Mermaid (primary), ASCII (fallback), and HTML/Chart.js (rich/interactive); supports bar, line, pie, horizontal comparison, fair-value range, and multi-factor signal dashboard chart types; works across Claude Code, Gemini, Cursor, and GitHub Copilot
134
+ - Both skills available as universal `prompts/result-validator.md` and `prompts/chart-master.md` for AI-agnostic platforms
135
+
136
+ ## [1.4.0] - 2026-02-27
137
+
138
+ ### Added
139
+ - Auto-deploy workflow (`auto-deploy.yml`): triggers after Test Suite passes on main,
140
+ detects version bumps via git tag check, runs pre-deploy validation, publishes
141
+ GitHub Release with .tar.gz artifacts and checksums, records result in DEPLOYMENTS.md
142
+ - `scripts/record-deploy.js`: appends structured deployment entry to DEPLOYMENTS.md
143
+ with version, commit SHA, timestamp, release URL, and marketplace targets table
144
+ - `DEPLOYMENTS.md`: auto-maintained deployment history file seeded with v1.1.0–v1.3.0
145
+
146
+ ### Improved
147
+ - `pr-check.yml`: added version consistency check, INVESTMENT SIGNAL block validation,
148
+ skills registry integrity check, and full unit test run
149
+ - `validate.yml`: expanded required files list, stricter version mismatch handling,
150
+ Node.js unit test step
151
+ - `.gitignore`: added `!scripts/*.js` exception so test scripts are tracked by git
152
+
153
+ ## [1.3.0] - 2026-02-27
154
+
155
+ ### Added
156
+ - New `/financial-report-analyst` skill for analyzing 10-K, 10-Q, annual reports, and earnings press releases
157
+ - 8-phase analysis framework: document orientation, MD&A deep read, financial statements, risk factors, footnotes, management tone, YoY comparison, insider activity
158
+ - Accounting quality score (0-21) with criterion breakdown
159
+ - Red flag detection: risk factor changes, footnote anomalies, segment reporting changes
160
+ - Management tone scoring and credibility tracking (guidance accuracy scorecard)
161
+ - DSO/DIO/AP working capital analysis, FCF conversion rate, SBC dilution assessment
162
+ - Supports: 10-K, 10-Q, 8-K, DEF 14A (proxy), S-1, earnings press releases
163
+
164
+ - New `/stock-valuation` skill for multi-method stock valuation with football field summary
165
+ - Method 1: DCF with 3 scenarios (Bull 20% / Base 60% / Bear 20%), 10-year projection, sensitivity table
166
+ - Method 2: Comparable Company Analysis (CCA) — 5-8 peers, EV/Revenue, EV/EBITDA, P/E, EV/FCF
167
+ - Method 3: EV/EBITDA multiple valuation (conservative / base / premium)
168
+ - Method 4: P/E multiple with PEG ratio
169
+ - Method 5: Residual Income / Economic Value Added (for financial companies)
170
+ - Football field chart consolidating all methods
171
+ - Probability-weighted composite intrinsic value
172
+ - Risk-adjusted expected return with risk/reward ratio (target: 3:1+)
173
+ - Analyst consensus comparison
174
+
175
+ - Cross-AI compatibility (v1.3.0)
176
+ - `GEMINI.md` — Project instructions for Gemini CLI with prompt file references
177
+ - `.github/copilot-instructions.md` — GitHub Copilot workspace configuration
178
+ - `.cursor/rules/invest-skill.mdc` — Cursor AI rules with skill discovery
179
+ - `prompts/` directory with 17 universal prompt files (AI-agnostic, work with any LLM)
180
+ - All 18 skills now available as standalone prompts for ChatGPT, Claude.ai, Gemini, and more
181
+
182
+ ### Changed
183
+ - Plugin version bumped from 1.2.0 to 1.3.0
184
+ - README updated with cross-AI compatibility guide and new skills documentation
185
+ - Total skills: 16 → 18
186
+
187
+ ## [1.2.0] - 2026-02-24
188
+
189
+ ### Added
190
+ - New `/dividend-analysis` skill for income investing and dividend safety analysis
191
+ - Dividend Safety Score (0-100) with letter grade and sector-specific thresholds
192
+ - Payout ratio analysis (EPS-based and FCF-based) with stress testing
193
+ - Dividend growth metrics: 1/3/5/10yr CAGR, Chowder Rule, Dividend Aristocrats/Kings
194
+ - Yield trap detection with red flag checklist
195
+ - Recession durability analysis (2000-2002, 2008-2009, 2020)
196
+ - DRIP compound growth projections and income portfolio modeling
197
+
198
+ - New `/short-interest` skill for short squeeze and bearish positioning analysis
199
+ - Short Interest Squeeze Score (0-10 composite) with probability tiers
200
+ - Short float %, Days-to-Cover, and borrow rate tier classification tables
201
+ - Short seller thesis evaluation and counter-thesis analysis
202
+ - FINRA reporting schedule with data lag caveats
203
+ - Options market signal integration (put/call ratio, IV skew, unusual activity)
204
+
205
+ - New `/options-analysis` skill for options Greeks, IV analysis, and strategy selection
206
+ - Full Greeks analysis: Delta, Gamma, Theta, Vega, Rho with practical usage guidance
207
+ - IV Rank (IVR) and IV Percentile (IVP) interpretation
208
+ - IV term structure and volatility skew analysis
209
+ - Strategy Selector with 6×2 selection matrix (bullish/bearish/neutral × high/low IV)
210
+ - Earnings play analysis: expected move formula, straddle setup, volatility crush dynamics
211
+ - Risk management: position sizing, delta hedging, rolling positions
212
+
213
+ - New `/research-bundle` meta-skill for comprehensive multi-skill investment research
214
+ - 5-phase research process: Business Foundation → Valuation → Market Signals → Technical → Risk
215
+ - Composite scoring framework with weighted components (Business 25%, Valuation 25%, Signals 20%, Technical 15%, Risk 15%)
216
+ - Conflict resolution rules and consensus override logic
217
+ - Unified investment thesis with bull/bear cases and probability-weighted scenarios
218
+ - Entry/exit strategy and quarterly monitoring plan
219
+
220
+ - New `/dcf-valuation` skill for intrinsic value modeling
221
+ - 8-step DCF methodology (base metrics → revenue projection → FCF margins → terminal value → WACC → discount → sensitivity → margin of safety)
222
+ - Full WACC calculation (CAPM cost of equity, after-tax cost of debt, capital structure)
223
+ - 5×5 sensitivity table (WACC rows vs. terminal growth rate columns)
224
+ - Three-scenario framework: Bull (20%) / Base (60%) / Bear (20%) with probability-weighted IV
225
+ - Common DCF pitfalls guide (SBC adjustment, TV dominance, cyclicality normalization)
226
+
227
+ - New `/competitor-analysis` skill for economic moat and competitive positioning
228
+ - Five Sources of Economic Moat (Morningstar framework): network effects, cost advantages, intangibles, switching costs, efficient scale
229
+ - Moat width assessment (Wide/Narrow/None/At Risk) with ROIC signal interpretation
230
+ - Porter's Five Forces deep analysis with individual scores and industry attractiveness composite
231
+ - Competitive benchmarking table (8+ metrics vs. top 3-5 peers)
232
+ - Innovation and disruption positioning (disruptor vs. disrupted)
233
+ - Composite Moat Scorecard (6 weighted components, 0-10 scale)
234
+
235
+ ### Enhanced
236
+ - Enhanced `/stock-eval` skill with investment-grade depth (50 → 421 lines)
237
+ - Piotroski F-Score (9-criterion quality scoring system)
238
+ - Earnings Quality Score (accruals ratio, cash conversion, non-recurring items)
239
+ - ROIC / WACC analysis with Economic Value Added (EVA) framework
240
+ - DCF framework with 3-scenario sensitivity table
241
+ - Management quality assessment (guidance accuracy, capital allocation track record)
242
+ - Analyst consensus tracking with estimate revision momentum (ERM)
243
+ - Risk Assessment Matrix (business, financial, valuation, macro)
244
+
245
+ - Enhanced `/economics-analysis` skill with macro depth (55 → 295 lines)
246
+ - Yield Curve Analysis: 2s10s, 3M10Y, 5s30s spreads; curve shapes and recession lead times
247
+ - Credit Market Indicators: IG/HY OAS spreads, TED Spread, MOVE Index thresholds
248
+ - Global Macro Comparison: US/EU/China/Japan cycle positioning, PMI comparison, central bank divergence
249
+ - Recession Probability Scoring: NY Fed model, Conference Board LEI, Sahm Rule composite
250
+
251
+ - Enhanced `/technical-analysis` skill with advanced techniques (267 → 493 lines)
252
+ - Multi-Timeframe Analysis (MTF): 3-TF framework, alignment scoring, confluence table
253
+ - Volume Profile Analysis: POC, Value Area (VAH/VAL), LVN/HVN trading rules, profile shapes
254
+ - Ichimoku Cloud: all 5 components, bullish/bearish signal matrix, Kumo twist signals
255
+ - Options Flow Integration: put/call ratio, unusual activity, IV vs. HV, GEX mechanics
256
+
257
+ ### Standardized
258
+ - Added unified Investment Signal block to all 16 skills:
259
+ ```
260
+ ╔══════════════════════════════════════════════╗
261
+ ║ INVESTMENT SIGNAL ║
262
+ ╠══════════════════════════════════════════════╣
263
+ ║ Signal: BULLISH / NEUTRAL / BEARISH ║
264
+ ║ Confidence: HIGH / MEDIUM / LOW ║
265
+ ║ Horizon: SHORT / MEDIUM / LONG-TERM ║
266
+ ║ Score: X.X / 10 ║
267
+ ╠══════════════════════════════════════════════╣
268
+ ║ Action: BUY / HOLD / SELL ║
269
+ ║ Conviction: STRONG / MODERATE / WEAK ║
270
+ ╚══════════════════════════════════════════════╝
271
+ ```
272
+ - Consistent scoring guide (0-10), confidence levels (HIGH/MEDIUM/LOW), and time horizons
273
+ - `/report-generator` updated to render signal blocks as styled HTML components
274
+
275
+ ### Changed
276
+ - Updated plugin version from 1.1.0 to 1.2.0
277
+ - Added 6 new skill directories under `plugins/us-stock-analysis/skills/`
278
+ - Updated keywords to include: dcf, options, dividends, short-interest, competitive-analysis, moat, research
279
+
280
+ ## [1.1.0] - 2026-02-17
281
+
282
+ ### Added
283
+ - New `/report-generator` skill for HTML/PDF report generation with interactive visualizations
284
+ - Standalone HTML reports with embedded Chart.js
285
+ - Professional financial report styling and layout
286
+ - Support for multiple report templates (executive summary, comprehensive, portfolio)
287
+ - PDF export via browser print-to-PDF or command-line tools
288
+ - Interactive charts: line, bar, candlestick, waterfall, and more
289
+
290
+ - New `/earnings-call-analysis` skill for earnings call transcript analysis
291
+ - Sentiment analysis (bullish/neutral/bearish)
292
+ - Management tone assessment (confidence, transparency, red flags)
293
+ - Key themes extraction and ranking
294
+ - Q&A session insights and analyst concerns
295
+ - Quarter-over-quarter comparison
296
+ - Investment implications and recommendations
297
+
298
+ - New `/insider-trading` skill for insider transaction tracking
299
+ - SEC Form 4 filing analysis
300
+ - Net insider sentiment calculation
301
+ - Significant transaction identification (>$1M, >10% position change)
302
+ - Ownership trend analysis
303
+ - Timing and pattern recognition
304
+ - Red flag detection for concerning patterns
305
+
306
+ - New `/institutional-ownership` skill for 13F filings analysis
307
+ - Top institutional holders tracking
308
+ - Quarter-over-quarter position changes (new, increased, decreased, eliminated)
309
+ - Smart money tracking (notable investors like Buffett, Ackman, etc.)
310
+ - Ownership concentration analysis
311
+ - Activist investor monitoring
312
+ - Portfolio weight analysis for high-conviction positions
313
+
314
+ ### Enhanced
315
+ - Enhanced `/fundamental-analysis` skill with visualization support
316
+ - Optional `--visual` flag for chart generation
317
+ - Revenue/earnings growth trend charts
318
+ - Profit margin comparison visualizations
319
+ - Balance sheet composition charts
320
+ - Cash flow waterfall diagrams
321
+ - Valuation multiples comparison
322
+ - ASCII charts for terminal display
323
+ - Data tables formatted for report generator integration
324
+
325
+ - Enhanced `/technical-analysis` skill with chart generation
326
+ - Optional `--chart` flag for visual analysis
327
+ - Candlestick charts with moving averages overlay
328
+ - Volume bar charts with average volume indicator
329
+ - RSI, MACD, and Bollinger Bands indicator panels
330
+ - Support/resistance level annotations
331
+ - Pattern recognition overlays
332
+ - ASCII charts for terminal display
333
+ - Chart specifications for HTML report generation
334
+
335
+ ### Changed
336
+ - Updated plugin version from 1.0.0 to 1.1.0
337
+ - Enhanced marketplace description to highlight new visualization and data analysis features
338
+ - Added new keywords: visualization, reports, insider-trading, institutional-ownership, earnings-calls
339
+ - Expanded documentation with report generation workflow and examples
340
+ - Updated project structure to include 4 new skill directories
341
+
342
+ ### Documentation
343
+ - Added "Report Generation" section to README with workflow examples
344
+ - Updated "Available Skills" section with new skills (categorized as core vs. enhanced)
345
+ - Added usage examples for all new skills
346
+ - Updated Traditional Chinese README (README-zh-TW.md) with all new features
347
+ - Marked completed tasks in TODO.md (visualization, reports, fundamental data)
348
+ - Updated CHANGELOG.md with comprehensive v1.1.0 release notes
349
+
350
+ ## [1.0.0] - 2026-02-16
351
+
352
+ ### Added
353
+ - Initial release of InvestSkill marketplace
354
+ - US Stock Analysis plugin with 6 comprehensive skills:
355
+ - Stock Evaluation (`/stock-eval`)
356
+ - Economics Analysis (`/economics-analysis`)
357
+ - Fundamental Analysis (`/fundamental-analysis`)
358
+ - Technical Analysis (`/technical-analysis`)
359
+ - Portfolio Review (`/portfolio-review`)
360
+ - Sector Analysis (`/sector-analysis`)
361
+ - MIT License
362
+ - Comprehensive documentation
363
+
364
+ ### Plugin Details
365
+ - us-stock-analysis v1.0.0
366
+ - Professional-grade US stock market analysis
367
+ - Integration with financial data sources
368
+ - Actionable investment insights
369
+
370
+ [Unreleased]: https://github.com/yennanliu/InvestSkill/compare/v1.2.0...HEAD
371
+ [1.2.0]: https://github.com/yennanliu/InvestSkill/compare/v1.1.0...v1.2.0
372
+ [1.1.0]: https://github.com/yennanliu/InvestSkill/compare/v1.0.0...v1.1.0
373
+ [1.0.0]: https://github.com/yennanliu/InvestSkill/releases/tag/v1.0.0