clarion-living-letter-update
Update the annual investor letter at ~/clarion/letters/{YEAR}-letter.md with a new quarterly section, or finalize it at year-end.
Skill by cis.zo.computer
Chalk Labs
Need help deploying clarion-living-letter-update?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/sillyhippy-clarion-living-letter-update
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, writing, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/clarion-living-letter-update
What's inside
- Skill name
clarion-living-letter-update- Description
- Update 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, Looking Ahead) as [TODO] for the user to write with chat assistance. Append-only — refuses to overwrite an already-populated quarter without --force. Use when the user asks "update the letter", "quarterly letter update", "finalize the letter", or "write the {Q1/Q2/Q3/Q4} entry". Requires clarion-setup to have been run.
- License
- MIT
- Metadata
- author: cis.zo.computer · category: External · homepage: https://github.com/jingerzz/clarion-intelligence-system · display-name: Clarion Living Letter
- Instructions
- 93 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- body: contains an absolute path from the author's machine
Files (3)
- SKILL.md
- letter-format-guide.md · references/
- letter.py · scripts/
SKILL.md (first lines)
# Clarion living-letter update
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)](../../docs/PRINCIPLES.md#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.
## When to use
User says any of:
- "Update the letter."
- "Quarterly letter update."
- "Write the Q2 entry."
- "Finalize the {YEAR} letter."
Cadence:
- **Quarterly (minimum)** — at the end of each quarter, run `update`. The script writes the structured sections; the user fills the narrative.
- **Year-end** — after Q4 is filled in, run `finalize` to add the Year in Context intro and the Full Year Summary scaffold.
## Decision tree
1. **Pick the operation:**
- `update` (default) — append the current quarter's section
- `finalize` — year-end Year in Context + Full Year Summary
- `status` — show what's already in the letter
2. **Run the script.**
```bash
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.
3. **For `update`:** the script:
- Refuses to overwrite a populated quarter without `--force`
- Pulls regime via the shared `clarion-regime-check` data path
- Pulls active theses from `~/clarion/theses/` and renders the Thesis Health table + Portfolio Snapshot bucket positions
- Leaves the narrative sections as `[TODO]`
- Prints the path written and a checklist of TODOs the user must fill
4. **Walk the user through filling the [TODO] sections in order.** The most important to nail:
- **What We Did** — be specific (named tickers, prices, reasoning **at the time**)
- **What We Learned** — surprises, mistakes, patterns (per the format spec, this is the section that compounds in value over years)
5. **For `finalize`:** the script:
- Refuses to finalize before all four quarters are populated (override with `--force`)
- Scaffolds the Year in Context and Full Year Summary sections
- Pre-populates the Theses: Final Scorecard with every thesis on file (active + closed)
- Leaves performance numbers, mistakes & lessons, looking ahead as `[TODO]`
## How to run
```bash
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
```
## Voice
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."
## Hard rules
1. **Never edit past quarters retroactively.** The whole point is a timestamped record. Hindsight commentary belongs in NEW sections in brackets — not as edits to old quarters. The script enforces this by refusing to overwrite populated quarters without `--force`.
2. **The narrative sections are human-written.** The system can fill regime, theses, and portfolio bucket *positions* — but never What We Did or What We Learned. Those have to come from the principal.
3. **Show the reasoning, not the outcome.** A quarterly entry that only chronicles wins is fiction.
4. **Keep it concise.** Each quarterly update should be readable in 5-10 minutes. Link to thesis files for depth rather than duplicating.
## On error
- **`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`.From SillyHippy/zo-skills, MIT.
More from SillyHippy/zo-skills
- 0.526score
affidavit-rag
SillyHippy
RAG (Retrieval-Augmented Generation) system for affidavit workflows.
SkillBFreshness: BClaude Code +9 - 0.526score
affidavit-url-generator
SillyHippy
Generate pre-filled affidavit URL for justlegalsolutions.org/affidavit from plain text field values or extracted court document data.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-thesis-monitor
cis.zo.computer
Monitor the health of every active thesis in ~/clarion/theses/.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-regime-check
cis.zo.computer
Reads the SPY/TLT/RSP color regime and the equity hurdle rate.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-sec-research
cis.zo.computer
Pull, index, and search SEC EDGAR filings for any public company.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-setup
cis.zo.computer
Bootstraps the Clarion Intelligence System on Zo Computer.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-single-stock-eval
cis.zo.computer
Evaluate a single stock using the Buffett lens.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-thesis-write
cis.zo.computer
Scaffold a new thesis document for a ticker in the canonical Clarion thesis format.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-value-screener
cis.zo.computer
Run a value-quality screen and write a watchlist file.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-expected-return-calc
cis.zo.computer
Compute the equity-vs-T-bill allocation for the Value bucket (50% of portfolio).
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-portfolio-monitor
cis.zo.computer
Fetch live portfolio positions, balances, and daily transactions from TastyTrade.
SkillBFreshness: BClaude Code +9 - 0.522score
agent-swarm
sillyhippy.zo.computer
Mimics Moonshot AI's Kimi K2.6 Agent Swarm — decompose tasks into parallel sub-agents, coordinate execution via Zo API, and synthesize results.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 5, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/SillyHippy/zo-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from cis.zo.computer
- 0.525score
clarion-expected-return-calc
cis.zo.computer
Compute the equity-vs-T-bill allocation for the Value bucket (50% of portfolio).
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-portfolio-monitor
cis.zo.computer
Fetch live portfolio positions, balances, and daily transactions from TastyTrade.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-regime-check
cis.zo.computer
Reads the SPY/TLT/RSP color regime and the equity hurdle rate.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-sec-research
cis.zo.computer
Pull, index, and search SEC EDGAR filings for any public company.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-setup
cis.zo.computer
Bootstraps the Clarion Intelligence System on Zo Computer.
SkillBFreshness: BClaude Code +9 - 0.525score
clarion-single-stock-eval
cis.zo.computer
Evaluate a single stock using the Buffett lens.
SkillBFreshness: BClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get clarion-living-letter-update running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
clarion-living-letter-update skill. Agent Mart. https://agentmart.dev/skills/sillyhippy-clarion-living-letter-update (last updated 2026-10-24)