executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
clarion-living-letter-updateUpdate the annual investor letter at ~/clarion/letters/{YEAR}-letter.md with a new quarterly section, or finalize it at year-end. Auto-fills the system-deterministic parts (regime snapshot, thesis health table, portfolio bucket positions from active theses); marks the narrative-heavy parts (What We Did, What We Learned, Year in Context, Mistakes & Lessons, …
Independent GitHub snapshot · Automated classification · Original documentation governs
The annual investor letter is the system's self-accountability tool — a real-time, timestamped record of how the system thought, what it did, and what it learned. Per docs/PRINCIPLES.md Principle 10 (Compound Knowledge, Not Just Capital), it's where the institutional memory accrues.
This skill scaffolds quarterly entries and the year-end finalization. The system fills in regime + thesis health automatically; the human writes the narrative.
User says any of:
Cadence:
update. The script writes the structured sections; the user fills the narrative.finalize to add the Year in Context intro and the Full Year Summary scaffold.Pick the operation:
update (default) — append the current quarter's sectionfinalize — year-end Year in Context + Full Year Summarystatus — show what's already in the letterRun the script.
python /home/workspace/clarion-intelligence-system/skills/clarion-living-letter-update/scripts/letter.py update
python ... letter.py update --quarter 2 --year 2026
python ... letter.py finalize --year 2026
python ... letter.py status --year 2026
If the letter file doesn't exist for the requested year, the script creates the skeleton (placeholder quarters + section headers) before writing.
For update: the script:
--forceclarion-regime-check data path~/clarion/theses/ and renders the Thesis Health table + Portfolio Snapshot bucket positions[TODO]Walk the user through filling the [TODO] sections in order. The most important to nail:
For finalize: the script:
--force)[TODO]LETTER=python /home/workspace/clarion-intelligence-system/skills/clarion-living-letter-update/scripts/letter.py
$LETTER update # current year, current quarter
$LETTER update --quarter 2 # current year, Q2 specifically
$LETTER update --year 2026 --quarter 3 # explicit year + quarter
$LETTER update --quarter 2 --force # overwrite an already-populated Q2
$LETTER finalize # current year
$LETTER finalize --year 2026
$LETTER status # current year status
$LETTER status --year 2026
The letter is honest and specific. Per the format spec rule #3:
"Show the reasoning, not just the outcome. 'We bought X and it went up 30%' is useless. 'We bought X because the filing showed Y, the valuation was Z, and the regime was Green — it went up 30% but mostly for reasons we didn't anticipate' is how you actually learn."
Avoid PR voice. Include the bad with the good. The mistakes section is the most valuable.
When walking the user through TODOs, push back on vague language. "Performance was strong" → "Portfolio +12.4% vs S&P 500 +9.1% in Q2; ~80% of that came from NVDA's catalyst landing earlier than expected."
--force.LETTER_ERROR: quarter already populated — the requested quarter has structural content. Pass --force to overwrite (rare; usually means re-running for the same period).LETTER_ERROR: cannot finalize — at least one quarter is still placeholder. Fill in Q1-Q4 first, then finalize.LETTER_ERROR: unknown quarter — pass an integer 1-4 for --quarter.