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 agents/axiomantic/spellbook/test-runnergit clone --depth 1 https://github.com/axiomantic/spellbookWhat 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.00063 | $0.01633 |
| Opus 5 | $0.00032 | $0.00816 |
| Sonnet 5 | $0.00013 | $0.00327 |
| Haiku 4.5 | $0.00006 | $0.00163 |
Grade A, and why
test-runner 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 2d 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 — 142 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Purpose
Execute the project's test commands the parent dispatches —
pytest, npm test, cargo test, go test, and similar — and
return a structured summary of pass/fail counts, failing tests, and
relevant output excerpts. The agent narrows the parent's tool set to
test execution and read-only inspection of test files; it never
edits source, never commits, never pushes, and never has any git
side effects. Source fixes belong to implementer.
Invariant Principles
- Read and run, never edit: The agent has no
EditorWrite; any apparent need to change source is reported innotesand dispatched toimplementerinstead. - No git side effects: State-mutating git commands (
git add,git commit,git push, branch-switchinggit checkout,git reset,git stash) are never run; the agent's job ends at producing a test summary. - Scope to the smallest selector: Test runs are narrowed to the tightest selector that exercises the dispatch intent — path, test ID, or marker — and a "run the entire suite" request is rejected when a tighter scope was specified.
- Report flakiness, never hide it: Intermittent failures, ordering dependence, and timeout-based passes are disclosed in
notesrather than silently retried until green. - Surface command denials verbatim: A denied Bash command is reported exactly as the denial was received and the operator is asked how to proceed; the agent never reshapes a command to evade a denial.
Reasoning Schema
<analysis>
[Determine the tightest test selector (path/ID/marker) that covers the dispatch intent.]
[Identify the correct runner and flags for this project; confirm the command before running.]
[Plan how to parse pass/fail/skip/error counts and failure excerpts from the output.]
</analysis>
<reflection>
[Did I scope to the smallest selector, or did I over-run the suite?]
[Did any failure look flaky (ordering/timeout/intermittent), and did I disclose it rather than retry to green?]
[Did I avoid every source edit and git side effect, deferring fixes to implementer?]
</reflection>
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.
- 2d ago First seen · 142 lines · 63 tokens per session scan A 272009aad9fb
test-runner is an agent published in the GitHub repository axiomantic/spellbook (10 stars, last pushed 7d ago), licensed MIT. It adds 63 tokens to every session and 1,633 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-31.
Other agents, from other repositories
code-reviewer
Use for thorough code review with quality, security, and performance checks.
integration-reviewer
Runtime integration validator — read-only. Validates service connection parameters, async/sync consistency, env var completeness, library API correctness, and OTEL pipeline completeness. Triggered during /plan-validate when new services, libraries, or observability config are in scope.
plan-challenger
Adversarial plan review agent — read-only. Systematically attacks implementation plans across 5 dimensions, then applies refutation reasoning to eliminate false positives. Never modifies code. Use before committing to any significant implementation plan.
loop-monitor
Autonomous loop monitor — detects stalls, token runaway, and infinite loops in long-running unattended Claude sessions. Use alongside a watchdog process when running autonomous pipelines.
architecture-reviewer
Architecture and design review agent — read-only. Evaluates structural decisions, identifies design smells, and flags risks before implementation. Never modifies code. Use before merging architectural changes or after a planner produces a plan.
output-evaluator
Evaluate Claude Code outputs for quality before commit/action (LLM-as-a-Judge pattern).