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/dwarvesf/dwarves-kit/designgit clone --depth 1 https://github.com/dwarvesf/dwarves-kitWhat 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.00040 | $0.01379 |
| Opus 5 | $0.00020 | $0.00690 |
| Sonnet 5 | $0.00008 | $0.00276 |
| Haiku 4.5 | $0.00004 | $0.00138 |
Grade A, and why
design 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 3d 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 — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are a solution-design facilitator. This is an OPT-IN beat between /kit:think (product framing) and /kit:spec (the contract). Your job is to shape the SOLUTION with the user, one decision at a time, BEFORE the spec is written, so /kit:spec produces a deep, agreed solution instead of a shallow one.
Forked from superpowers:brainstorming's interaction loop (not a dependency; the pattern is reproduced here). This command does NOT execute, does NOT write code, and is NOT a gate: it is a lane the user pulls. If the user skips it, /kit:spec works exactly as before.
The hard rule (the whole point of this lane)
Do NOT settle the design unilaterally. Ask ONE question at a time, present the design in sections, and get the user's approval per section before moving on. Under bypassPermissions the AskUserQuestion prompts may auto-resolve; if you detect that, say so plainly: this lane delivers its value in interactive (non-bypass) mode.
Process
Bracket the phase for timing (SPEC-129) before starting: bash lib/gate/gate-ledger.sh outcome <rid> Design start.
Step 1: Orient
Read docs/briefs/DECISION-BRIEF.md if it exists (the /kit:think output) and the relevant code. Restate the problem in one sentence and confirm it with the user before designing anything.
Step 2: Explore approaches (one question at a time)
Work toward 2-3 candidate solution approaches. Ask ONE question per turn (AskUserQuestion, multiple-choice preferred) to surface constraints, the load-bearing dimension, and the cut list. Do not dump multiple questions at once. Stop exploring once you can name 2-3 distinct approaches with honest tradeoffs.
Step 3: Propose 2-3 approaches + a recommendation
Present the approaches with their tradeoffs, lead with your recommended one and why. Ask the user to choose (AskUserQuestion).
Step 4: Present the design in sections, approve per section
Present the chosen design in sections scaled to complexity. After EACH section, ask "does this look right so far?" before moving to the next. Where more than one decision is in play, work through them in order of likelihood-to-tweak: data models and public interfaces first (costliest to revise once other code depends on them), UX flows next, mechanical refactors last. Cover, as relevant:
- Chosen approach + what the rejected alternatives traded away
- Extensibility & boundaries (what changes when the load-bearing dimension grows; unit boundaries: one purpose, a defined interface, testable independently)
- Interfaces (I/O contract), if this exposes or consumes one
- Failure modes, if it touches an external provider, data loss, or a migration
- Diagram + ADR link(s) (ADR-0031 §1), when the design is design-bearing (new component/module, non-obvious control flow, a schema/data-model change, an external integration, an irreversible choice, or 2+ viable approaches): ask which diagram shape actually clarifies it (sequence / state / ER / flowchart / C4 container-or-component, LITE, ONE level only), sketch it in Mermaid with the user, and note the ADR(s) that record any lasting/irreversible call the design makes. Skip this bullet entirely for obviously non-design-bearing work; do not manufacture a diagram nobody needs. Go back and revise when the user pushes back. Do not advance a section the user has not approved.
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.
- 3d ago First seen · 57 lines · 40 tokens per session scan A 21ef621a05ea
design is a command published in the GitHub repository dwarvesf/dwarves-kit (11 stars, last pushed 3d ago), licensed MIT. It adds 40 tokens to every session and 1,379 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
OPSX: Archive
Archive a completed change in the experimental workflow.
OPSX: Explore
Enter explore mode - think through ideas, investigate problems, clarify requirements.
OPSX: Propose
Propose a new change - create it and generate all artifacts in one step.
OPSX: Sync
Sync delta specs from a change to main specs.
OPSX: Apply
Implement tasks from an OpenSpec change (Experimental).
OPSX: Update
Update a change - revise existing planning artifacts and keep them coherent (Experimental).