Spec Runner — Testing skill for Claude Code
Agent skill and CLI that runs a bounded task feature by feature: a features.json queue kept outside the repository, progress.txt as memory across context windows, one landed commit per feature.
How to install Spec Runner
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open ptshih/spec-runner and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Spec Runner does
Agent skill and CLI that runs a bounded task feature by feature: a features.json queue kept outside the repository, progress.txt as memory across context windows, one landed commit per feature. For Claude Code, Pi and Codex.
Alternatives in Testing
- Test Runner — Run Python tests with pytest, unittest, or other testing frameworks 23.4k ★
- Crlf — Test for CRLF / HTTP response-splitting and host-header injection — Set-Cookie injection, cache poisoning, res 4.5k ★
- Gsd To Autoforge Spec — Convert GSD codebase mapping to AutoForge app_spec.txt 1.8k ★
README
spec-runner
**Run a bounded task feature by feature, one landed commit at a time.**
spec-runner is an agent skill with a small CLI. `features.json` holds the ordered queue, `progress.txt` is the memory that outlives a context window or a session, and `init.sh` is the baseline check. The agent takes the next pending feature, writes the failing test, makes it pass, runs the check, lands the commit, records the pass and continues in the same turn until the queue is complete or a feature is blocked. Nothing external pokes it: the [skill](SKILL.md) supplies the loop, the CLI supplies the state and the guardrails. A pass needs a clean tree and records the landing commit; a queue left in a repository root is refused.
The queue lives outside the repository at `$XDG_STATE_HOME/spec-runner//` (default `~/.local/state`), keyed by the main checkout so a project's worktrees share it. `SPEC_RUNNER_DIR` overrides the location, absolute or relative to the repo root. Nothing in the tree needs ignoring.
Install
The skill directory carries the CLI, so installing the skill installs the tool.
npx skills add ptshih/spec-runner # copies into ~/.agents/skills and links every detected harness
pi install git:github.com/ptshih/spec-runner # as a Pi package
claude plugin marketplace add ptshih/spec-runner && claude plugin install spec-runner@spec-runner
Or clone the repository anywhere your harness reads skills from. Requirements: [Bun](https://bun.sh), git and bash. A shell command is optional:
ln -s ~/.agents/skills/spec-runner/scripts/spec-runner.ts ~/.local/bin/spec-runner
Then ask the agent to run spec-runner, or to work feature by feature. The skill defines `spec-runner` as `bun /scripts/spec-runner.ts`.
Commands
| Command | What it does |
|---|---|
spec-runner init [title] |
Scaffold features.json, progress.txt and init.sh in the queue directory |
spec-runner status |
Print the queue path, completio |
Related Skills
Ace Step Deck
🎛️ AceDeck — desktop app & GUI for ACE-Step 1.5 AI music generation on Windows: one-click install, generation
Reconcile
Reconcile git history into the spec corpus — draft stub specs / memory notes for work committed outside FORGE
Feature Add
Add or update a feature spec under .memory/features/ with OKF frontmatter.
Claudemd Uninstall
Pre-uninstall cleanup. Run BEFORE /plugin uninstall claudemd@claudemd to clear the plugin manifest, state dir,
Packrift Commerce Agent
Anthropic's Claude commerce-agents shopping agent running on a live 13,000-SKU packaging store (Shopify UCP +
Doc Landed
Retire a landed implementation spec and replace it with a living, agent-facing usage doc built from the code.
Related Agents
Cascade Runner
Sub-agent that orchestrates the PDF acquisition cascade for a batch of refs. Delegates the actual work to the
Swe2 Runner
Dispatches a bounded implementation task to an external SWE-2 agent (Cognition devin CLI) inside a named workt
QA Desktop Tester
Desktop tester for flows outside the browser - native apps, OS dialogs, file pickers, Electron apps, OS settin