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/joanseg/specmanager/specmanager-plangit clone --depth 1 https://github.com/joanseg/specmanagerWhat 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.00691 |
| Opus 5 | $0.00016 | $0.00345 |
| Sonnet 5 | $0.00006 | $0.00138 |
| Haiku 4.5 | $0.00003 | $0.00069 |
Grade A, and why
specmanager-plan 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 — 29 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Generate a Plan + phased tasks for the feature: $ARGUMENTS.
Steps
-
Resolve the feature.
list_features→ match byid/slug. Stop if not found. -
Check the gate.
check_gate({ featureId, stage: "plan" })— Architecture must be approved AND (no design doc exists OR design approved). If closed, reportreasonto the user (the reason string says which leg of the compound gate failed) and stop. A common case: design doc is indraft— the user either approves it or deletes the brief to skip design entirely. -
Confirm no draft already exists.
list_documents({ featureId, stage: "plan" }). Don't duplicate. -
Look up the design doc id (optional).
list_documents({ featureId, stage: "design" }). If a doc exists (it must be approved at this point — the gate enforced it), grab its id + version. If none exists, passnullin the subagent prompt. -
Invoke the subagent.
Task({ subagent_type: "planner", prompt: ... }). Include:- Feature id, title, slug.
- The Architecture doc id (look up first, pass explicitly).
- The PRD doc id (for context).
- The Design doc id + version (or
null), so the planner's design-grounding step can read it. - Any extra context the user gave.
The planner writes
plan.md(organised into## Phase <name> — <theme>sections with**Exit test:**lines) AND emits acreate_taskcall per Build-order item withphaseand Fibonaccicomplexity(≤3). Most features come back as a single named phase — that is the expected common output, not a degenerate case. The planner only splits into multiple phases for a genuinely large project with a real mid-build test boundary, and confirms any such split with you viaAskUserQuestionbefore persisting tasks. When a design doc was passed in, the planner references the brief's screens/components/tokens by name in the plan body. -
Sync CLAUDE.md. Call
sync_claude_md. -
Report. Plan doc id + file path + per-phase task counts (e.g.
Phase A: 5 tasks, Phase B: 7 tasks) and whether the plan was grounded in a design brief. Suggest opening the board to see the Build column populated.
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 · 29 lines · 32 tokens per session scan A 85f8b2215ee2
specmanager-plan is a command published in the GitHub repository joanseg/specmanager (19 stars, last pushed 18d ago), licensed MIT. It adds 32 tokens to every session and 691 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-30.
Other commands, from other repositories
add-plugin
Integrate a spec-driven/skill framework as a bundled agtx plugin. Pass a GitHub repo URL to auto-generate the plugin.toml, or run without arguments to write one from scratch.
example-only
This command documents how to dispatch. Example only.
develop-configure
The develop orchestrator body: phases, dispatch discipline, quality gates, ceremony lock, ledger, and handoff. Loaded by the develop skill once the operator has chosen a ceremony path.
add-skill
Add a new Skill to the current plugin with proper structure.
my-cmd
Use the agent tool with.
bad-cmd
Use the agent tool with.