scribe

scribe is a skill for Claude Code, Codex from queelius/claude-anvil. It costs 113 tokens per session (1,905 once invoked), scanned A, original, MIT.

A tool for finding recurring themes across a collection of blog posts. It reads post titles, descriptions, tags, and related metadata to suggest themes connecting at least four posts.

In plain words
What is it for?
Finding possible series or synthesis topics in a blog corpus and listing the posts that support each suggested theme.
Why use it?
It helps reveal connections in existing writing that may not be obvious when posts are viewed separately. It proposes ideas without drafting the final article.

Skill for Claude CodeCodex

Part of the mf plugin — 2 skills, 2 commands shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/queelius/claude-anvil/scribe
Any agent
npx skills add queelius/claude-anvil --skill scribe
Clone the repo
git clone --depth 1 https://github.com/queelius/claude-anvil

Made for: Claude Code, Codex.

Or install mf, the plugin that ships this one along with the rest of its 2 skills, 2 commands.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for scribe

README.md
[![agentmods](https://agentmods.dev/badge/skills/queelius/claude-anvil/scribe.svg)](https://agentmods.dev/skills/queelius/claude-anvil/scribe)
Your own site
<a href="https://agentmods.dev/skills/queelius/claude-anvil/scribe"><img src="https://agentmods.dev/badge/skills/queelius/claude-anvil/scribe.svg" alt="Measured on agentmods" height="20"></a>
Per session 113 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,905 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00113 $0.01905
Opus 5 $0.00056 $0.00953
Sonnet 5 $0.00023 $0.00381
Haiku 4.5 $0.00011 $0.00191

Measured 4d ago against content hash ae72bdd6ebbe, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

scribe scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

mf/skills/scribe/SKILL.md · 130 lines

How it starts

The opening of the file, as written. The whole thing — 130 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Scribe: latent theme discovery

The smallest useful agent: find threads in your own corpus that you did not realize you had already written.

What this does (and doesn't)

Does: scans every post in the metafunctor content/post/ directory, returns 3 candidate themes that connect at least 4 posts each, each with a one-sentence through-line and a list of source posts.

Does NOT: write a draft. The output is a proposal you accept or reject. If you accept one, you tell me to expand it; we iterate from there. The smallest scribe stops at "here are the candidates."

This is intentional. Voice fidelity is hard. Validating that the corpus has interesting structure is easy. Do the easy thing first; if the candidates feel real, we build the drafting layer next.

Workflow

1. Read the corpus

Get title, date, description, and tags for every post. Three paths, in preference order:

  1. mf posts list --json (primary): one Bash call returns the whole corpus as a JSON array with slug, title, date, description, tags (plus categories/series/featured/draft). Works from any directory (mf resolves the site root itself), and the scribe filters map natively:
    • /scribe 5y (time window): mf posts list --json --since <ISO date> (or months, e.g. 60m; the CLI accepts YYYY-MM-DD or 30d/4w/3m forms, not years)
    • /scribe --tag philosophy: mf posts list --json -t philosophy
    • Requires an mf build that includes description in the JSON (added 2026-06-09); if description is missing from the output, fall through.
  2. crier_search (if the crier plugin is installed): crier_search(limit=300).
  3. Glob fallback (fully self-contained): resolve the metafunctor site root the way the mf skill does (the MF_SITE_ROOT env var, or the configured site root), then Glob content/post/**/index.md and read the YAML front matter.

You only need title, date, description, and tags; do not read post bodies for the smallest scribe. Default is the full corpus.

Read the full file on GitHub · 130 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 130 lines · 113 tokens per session scan A ae72bdd6ebbe

Subscribe to this mod's changes

scribe is a skill published in the GitHub repository queelius/claude-anvil (2 stars, last pushed 1mo ago), licensed MIT. It adds 113 tokens to every session and 1,905 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

alive:demo

Generate a believable, lived-in ALIVE world from a free-text persona description (custom path) or a deterministic sandbox preset. Routes the create/list/activate/deactivate/delete/status surface and orchestrates the 5-stage subagent generation pipeline.

alivecontext/alive · 52 tokens

alive:system-upgrade

Upgrade ALIVE to the current version. Handles v1/v2/v3.x source states, multi-surface aware (alive-mcp / Hermes / Codex), retroactive version detection, partial-failure resume, dry-run previews, and rollback inspection.

alivecontext/alive · 57 tokens

alive:session-history

Revive sessions (quick or heavy), browse, and search — 'what happened recently?', 'find the session where we discussed X', 'revive yesterday's session'. For single-session recall and multi-session browsing. If the human needs to merge multiple sessions into one working context or detect conflicts between parallel…

alivecontext/alive · 76 tokens

alive:world

The human doesn't know what to work on, or wants to see everything at once. They need the big picture — what's active, what's stale, what needs attention. Renders a live world view grouped by ALIVE domain, then routes to open, tidy, find, history, or map.

alivecontext/alive · 63 tokens

cco-task

Organize work by task, track tokens/cost per task, and keep a small patchable execution state that is re-injected after /compact (SKILL.state-style) — start a task, patch its state, list tasks, or mark the active one done. Pairs with /cco-pack to load minimal context per task.

egorfedorov/claude-context-optimizer · 70 tokens

cco-tools

Show what tools actually cost in tokens — learned per-tool averages from observed results, replacing the hardcoded MCP/Agent guesses.

egorfedorov/claude-context-optimizer · 27 tokens