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.
npx agentmods add skills/toverux/cantrips/compound-refreshnpx skills add toverux/cantrips --skill compound-refreshgit clone --depth 1 https://github.com/toverux/cantripsWrote 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.
[](https://agentmods.dev/skills/toverux/cantrips/compound-refresh)<a href="https://agentmods.dev/skills/toverux/cantrips/compound-refresh"><img src="https://agentmods.dev/badge/skills/toverux/cantrips/compound-refresh.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00032 | $0.01202 |
| Opus 5 | $0.00016 | $0.00601 |
| Sonnet 5 | $0.00006 | $0.00240 |
| Haiku 4.5 | $0.00003 | $0.00120 |
Grade A, and why
compound-refresh 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 today.
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.
How it starts
The opening of the file, as written. The whole thing — 76 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Audit the knowledge stores against the current codebase and prune what no longer earns its place.
Two stores: the project's AGENTS.md, always, and docs/solutions/ when the loop config enables it.
The loop config is docs/agents/cantrips-loop.md; when that doc is absent, the solutions store is off.
The opt-in docs/adr/ store stays out of scope by design — supersession is its own hygiene mechanism.
Every change is user-gated.
Scope
An argument narrows the sweep to matching docs/solutions/ docs — try it as a filename, then a frontmatter area/tags value, then a content keyword.
No argument → every doc plus AGENTS.md.
AGENTS.md is in scope on every run: when the solutions store is off, or no doc matches the argument, say so in one line and audit AGENTS.md alone.
Audit docs/solutions/
The format contract is ../compound/solutions-format.md.
For each doc in scope, cross-check its claims against the current code — cited paths and names still exist, the fix still matches how the code works today, snippets reflect the current implementation — and against its sibling docs for overlap and contradiction.
Verdict per file:
- Keep — still accurate and useful. No edit: reported as reviewed, zero churn.
- Update — the problem is still real but the doc drifted, from moved paths and renamed names up to a fix the current code now contradicts. On approval: evidence-backed in-place edits; on a contradicted fix, rewrite the doc to the current truth and present it as the rewrite it is.
- Consolidate — two docs overlap so heavily a maintainer must read both to get the truth. On approval: merge unique content into the canonical (broadest, most current) doc, delete the other.
- Delete — both the implementation and the problem domain are gone, or the doc is fully redundant. On approval: delete the file — git history is the archive.
Judgment rules:
- Match docs to reality, never the reverse. When code and doc disagree, the doc changes; whether the code should have changed is outside this skill.
- Age alone is clean. A two-year-old doc that still matches the code is a Keep; age only prompts a closer look.
- Unverifiable is not false. A claim the repo cannot corroborate — a schema fact, an operational practice, an environment behavior — is not thereby wrong; repos rarely witness their own operations. Never delete content, or strip it during a merge, solely because no in-repo artifact confirms it. Act only on contradiction, where the code demonstrably does otherwise; an unverifiable-but-plausible claim is a Keep with the verification gap noted in the report.
- Shared code is not shared problem. Two accurate docs on different sub-problems stay separate even when they cite the same file.
- Contradictions between docs outrank staleness — they actively mislead. Resolve them first, via Consolidate or Update.
- Before a Delete, check the problem domain and the inbound links. Implementation gone but the domain still alive (the app still handles what the doc addresses) → Update to the current truth instead. Other markdown citing the doc substantively (relying on it for content not stated inline) → Update instead; decorative "see also" citations are cleaned up alongside the delete.
- Skip cosmetic churn. Typos and wording polish are edits without evidence value.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- today Changed 279a0a7a7eda
- 5d ago First seen · 76 lines · 32 tokens per session scan A 1cb5f685cc42
compound-refresh is a skill published in the GitHub repository toverux/cantrips (2 stars, last pushed yesterday), licensed MIT. It adds 32 tokens to every session and 1,202 once invoked, about $0.0002 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.
Other skills, from other repositories
qmd
Search the vault using QMD semantic search. Use PROACTIVELY before reading files. Preference order: (1) MCP tools — mcpqmdquery, mcpqmdget, mcpqmdmultiget, mcpqmdstatus — if they appear in your tool menu, use them first; (2) CLI qmd --index ... as fallback; (3) Grep/Glob only when QMD is not installed. Trigger…
sessions
Search and ask questions about coding agent session history across Claude Code, Codex, and Cursor. Use when asking what was worked on, what was tried before, how a problem was investigated across sessions, what happened recently, or any question about past agent sessions. Also use when the user references prior…
handover
Use when wrapping up or capturing the current state of a coding session — writes a short, dated entry to the repo's RepoHandover.md so a future agent or you can resume without grepping archived sessions. Triggers on "handover", "hand off", "write handover", "capture state", "checkpoint this session".
map-debug
Structured MAP debugging via task-decomposer, actor, and monitor agents. Use when reproducing a bug, isolating a regression, or diagnosing an error with specialized agents — including failing or flaky tests (pytest AssertionError), crashes and segmentation faults, memory-corruption or memory errors in native/C…
map-memory-now
Finalize cross-session memory on demand; --finalize-all sweeps every dirty scratch. Use when ending a long session or before switching branches. Do NOT use for routine edits — finalize auto-runs at next SessionStart. Requires claude + git.
compact-kb
Use only when user explicitly invokes $compact-kb.