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 commands/kid-sid/claude-spellbook/test-gengit clone --depth 1 https://github.com/kid-sid/claude-spellbookWrote 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/commands/kid-sid/claude-spellbook/test-gen)<a href="https://agentmods.dev/commands/kid-sid/claude-spellbook/test-gen"><img src="https://agentmods.dev/badge/commands/kid-sid/claude-spellbook/test-gen.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.1 | $0.00000 | $0.00463 |
| Opus 5 | $0.00000 | $0.00231 |
| Sonnet 5 | $0.00000 | $0.00093 |
| Haiku 4.5 | $0.00000 | $0.00046 |
Grade A, and why
test-gen 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 6d 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.
What it actually says
Generate unit and integration tests for a given file or function.
Instructions
-
Read the target file the user specifies (or the most recently edited file if none given).
-
Identify the language and detect the existing test framework:
- Python: pytest (check for
conftest.py,pytest.ini,pyproject.toml) - TypeScript: Jest or Vitest (check
package.jsonforjestorvitest) - Go: stdlib
testingpackage - Rust: stdlib
#[cfg(test)]module
- Python: pytest (check for
-
Identify all public functions/methods and their behavior:
- What inputs do they accept?
- What outputs do they produce?
- What side effects do they have (DB, HTTP, file I/O)?
- What error conditions exist?
-
Generate tests following the unit-testing skill patterns:
- AAA pattern (Arrange / Act / Assert)
- Naming:
test_<unit>_<scenario>_<expected>(Python),describe/it(TS),TestXxx(Go) - Edge cases: null/None/nil, empty collections, boundary values
- Error paths: invalid input, missing dependencies, timeout
- Parameterized tests where multiple input/output pairs test the same logic
-
For functions with external dependencies (DB, HTTP, filesystem):
- Generate integration test stubs using Testcontainers or test clients
- Mock external I/O with appropriate library (unittest.mock, jest.fn(), interface-based in Go)
-
Place the test file in the correct location:
- Python:
tests/test_<module>.py - TypeScript:
<module>.test.ts(co-located) or__tests__/<module>.test.ts - Go:
<module>_test.go(same package) - Rust:
#[cfg(test)] mod testsat bottom of same file, ortests/for integration
- Python:
-
Run the tests to verify they pass. Fix any failures.
Output
- The generated test file
- A summary of what was tested and what was deliberately excluded (with reasoning)
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.
- 6d ago First seen · 39 lines · 0 tokens per session scan A b4994f8dd911
test-gen is a command published in the GitHub repository kid-sid/claude-spellbook (188 stars, last pushed 1mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 463 tokens. 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 commands, from other repositories
write-tests
Generate comprehensive test coverage for existing code.
test-tdd
Run when user calls /test-tdd. Scans modified files, locates their corresponding unit/integration test suites, and runs them.
kill-mutants
Analyze surviving mutants from a mutation testing run and write targeted unit tests to kill them. Re-runs mutations to confirm kills.
test
Generate comprehensive tests.
lg:node
Create, modify, and manage nodes in LangGraph graphs including LLM nodes, tool nodes, human-in-the-loop, subgraphs, and conditional nodes.
pr-enhance
Command "pr-enhance" from ruvnet/ruflo, covering pr-enhance, usage, options, examples and enhance pr.