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 skills add svy04/ballast --skill rehearsalgit clone --depth 1 https://github.com/svy04/ballastWrote 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/svy04/ballast/rehearsal)<a href="https://agentmods.dev/skills/svy04/ballast/rehearsal"><img src="https://agentmods.dev/badge/skills/svy04/ballast/rehearsal/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/svy04/ballast/rehearsal"><img src="https://agentmods.dev/badge/skills/svy04/ballast/rehearsal.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.1 | $0.00050 | $0.00729 |
| Opus 5 | $0.00025 | $0.00365 |
| Sonnet 5 | $0.00010 | $0.00146 |
| Haiku 4.5 | $0.00005 | $0.00073 |
Grade A, and why
rehearsal 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 11d 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.
How it starts
The opening of the file, as written. The whole thing — 39 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Rehearsal — the recipient has no context
Whatever you just wrote reads clearly to you because you wrote it. The recipient has none of that. The failure mode this prevents: a deliverable that fails on first contact with its reader — after shipping, when every stall costs a round-trip.
The setup
Hand the deliverable — and nothing else — to a zero-context executor: a fresh subagent, or a person who hasn't seen this conversation. No history, no verbal explanation, no "what I meant was". If it needs an explanation to work, the explanation belongs inside the deliverable.
The instruction has three parts
- Persona, precisely. Who will actually receive this: what they know, what they don't, what tools they have, what language they read. Those facts come from the user or the deliverable's stated audience — if neither says who it's for, ask; the recipient is the user's fact to give, not yours to invent. A generic "reader" is the wrong test — the real recipient usually knows the domain and not your shorthand.
- Execute, don't review. Follow the deliverable and actually do what it says — run the steps, fill the form, build the thing. Reading and nodding finds nothing.
- Report the stalls. Every place they stopped, guessed, or misread — line by line, no pushing past a gap. The stalls are the finding, not a footnote.
Rounds
Fix what stalled, hand it to a fresh executor, repeat — three rounds at most. Round one tends to find the real blockers, round two finds what the fixes broke, round three is mostly false alarms: that's convergence.
Clean means the executor finished without a blocking stall — a report that points at text which already answers it is a false alarm, not a stall. Not clean by round three? The structure is wrong, not the wording: redesign instead of re-polishing, and a redesigned deliverable is a new deliverable — its rounds start again at one.
One redesign is normal. A second redesign that still isn't clean ends the loop: take the stall list to the user — the deliverable's shape is now their decision, not another rewrite.
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.
- 11d ago First seen · 39 lines · 50 tokens per session scan A ea1e3bf0bd2c
rehearsal is a skill published in the GitHub repository svy04/ballast (71 stars, last pushed 16d ago), licensed MIT. It adds 50 tokens to every session and 729 once invoked, about $0.0003 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-30.
Other skills, from other repositories
developer-skill-execution-outcome-reporting-v0-18-1
SKILL EXECUTION + OUTCOME REPORTING (v0.18.1) — extracted from roles.json deepPrompt for developer.
are-you-done
A completion checker for coding work that asks for evidence before allowing an assistant to say a task is finished.
test-case-design
A test-case planning process that turns acceptance criteria—the conditions a feature must meet—into structured test cases. It covers normal use, expected failures, and edge conditions.
browser-qa
Use to exercise the running app in a real browser — after UI changes, before ship, or when the user asks to QA the site, smoke-test a branch, or check "does it actually work". Drives affected routes headlessly via Playwright, captures console errors, failed requests, and screenshots, and produces a report with a…
tdd
Use when building any T3 feature or bugfix, recommended for T2 on the affected path — write the failing test before the implementation, one behavior at a time, through public interfaces.
tdd
Test-Driven Development methodology and patterns. Triggers on: "tdd", "test first", "write tests", "failing test", "red green refactor", "test driven", "test before", "coverage", "unit test", "feature test", "widget test". Provides TDD patterns for Laravel (PHPUnit/Pest), Flutter, and Vue (Vitest/Jest).