skills/update-topic-ledger/SKILL.md
--- name: update-topic-ledger description: Maintains substacker shared-context/topic-ledger.md as an append-and-update index of all topics in the corpus. Each topic row tracks seed/draft/published counts, last-touched date, top-3 seed ids by density, and a hot/warm/cold temperature indicator. Use after any seed is created, promoted to draft, published, or killed. Trigger keywords: ledger, topic index, update index, topic ledger, hot/cold topics. --- # Update Topic Ledger ## Table of Contents
npx skillsauth add lyndonkl/claude skills/update-topic-ledgerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Related skills: Called by ingest-inbox-item step 8 for each topic on a new seed. Called by any status-changing agent on promote/publish/kill events.
Each topic gets a block in shared-context/topic-ledger.md:
## {topic-slug}
- seeds: N
- drafts: N
- published: N
- last_touched: YYYY-MM-DD
- temperature: hot | warm | cold
- top_seeds:
- {seed-id} (density={N})
- {seed-id} (density={N})
- {seed-id} (density={N})
Update ledger for one topic + event:
- [ ] Step 1: Read the ledger; find or create the row for {topic}
- [ ] Step 2: Update counts based on event (ADDED | PROMOTED | PUBLISHED | KILLED)
- [ ] Step 3: Update last_touched = today
- [ ] Step 4: Recompute temperature
- [ ] Step 5: Recompute top_seeds = top 3 by density across all statuses except dead
- [ ] Step 6: Write the updated row back
| Event | seeds | drafts | published | dead |
|---|---|---|---|---|
| ADDED (new seed) | +1 | — | — | — |
| PROMOTED (seed → draft) | -1 | +1 | — | — |
| PUBLISHED (draft → published) | — | -1 | +1 | — |
| KILLED (any → dead) | -1, 0, 0 (whichever bucket) | -1 | -1 | +1 |
hot: last_touched within last 14 days.warm: last_touched 14–60 days ago.cold: last_touched >60 days ago.Temperature is computed, not stored — recompute on every update.
Event: {topic: regularization, event: ADDED, seed_id: 2026-04-21-dropout-as-ensemble-thinned-networks, density: 7}
Existing row:
## regularization
- seeds: 3
- drafts: 1
- published: 1
- last_touched: 2026-03-11
- temperature: warm
- top_seeds:
- 2026-03-11-l2-as-gaussian-prior (density=6)
- 2025-11-14-noise-as-regularization (density=5)
- 2025-09-22-weight-decay-intuition (density=4)
Updated row:
## regularization
- seeds: 4
- drafts: 1
- published: 1
- last_touched: 2026-04-21
- temperature: hot
- top_seeds:
- 2026-04-21-dropout-as-ensemble-thinned-networks (density=7)
- 2026-03-11-l2-as-gaussian-prior (density=6)
- 2025-11-14-noise-as-regularization (density=5)
temperature: cold to preserve historical signal.#pending-tags; this skill only updates rows for tags already in canonical.top_seeds excludes dead seeds. A seed promoted from seed → draft retains its density score.{topic: str, event: str, seed_id: str, density: int}.topic-ledger.md.testing
--- name: advisory-edit description: A strict advisory-only editing discipline for a writer who dictates ("speaks out") essays and wants help WITHOUT having their voice changed. The editor directs structure, flags grammar, and suggests strategic language — but never modifies the writer's text unless the writer explicitly says "apply" / "make that change" / "rewrite this." Produces a line-referenced, suggestion-only critique where every item is marked the writer's call. Four passes: structural, l
testing
Provides the house style for analyst-grade strategist writing — third-person register with sparing first-person, no em dashes, no "not X, not Y, not Z" negation cascades, numbered footnote citations rather than inline source parentheticals, specific opinion-signaling phrases, and topic-forward paragraph structure modeled on voice patterns observed in Damodaran's Musings on Markets and Thompson's Stratechery. Use when consolidating working notes into a finished long-form strategist or analyst report that must read as written by a senior human analyst rather than an AI assistant.
testing
Renders a markdown report to a PDF using pandoc with xelatex (11pt serif body, 1-inch margins, numbered footnotes, formal heading hierarchy). Requires a one-time install of pandoc and a LaTeX engine on the user's machine — basictex on macOS or texlive-xetex on Linux. Does not attempt automatic install. Fails loudly with the exact install commands if pandoc or xelatex is missing on the user's PATH. Use when producing a finished strategist or analyst report PDF from a polished markdown source.
testing
Produces step-by-step computational walkthroughs of vector and matrix operations as a sequence of numbered "frames", showing the explicit state at each step. The text-equivalent of a 3Blue1Brown animation — each frame shows what changed and why, so the learner can re-trace the operation by hand. Use when the learner needs to *see* a computation unfold (eigenvalue computation, attention with 3 tokens, gradient descent step, SVD on a 2×2, layer norm on a 3-vector, softmax of a small input), when an explanation has been given but the learner needs to ground it in a worked example, or when introducing an operation that's intimidating in symbol form but trivial in pencil-and-paper form.