spec-driven-development
Skill3 starsChanged 6 months agoMITView on GitHub
Author a PRD-style spec before writing implementation. Use when the user says "write a spec", "PRD", "design doc", "spec out", "let's plan this", or invokes /spec. Produce a written, reviewable artifact (problem, scope, non-goals, acceptance criteria, open questions). End with `jutsu swarm doc-review <spec.md>` to surface gaps before declaring done.
103 other projects use a version of this.
Adopted by
Most recently taken up by
- thistleknot/skillstheir own version, first seen Nov 8, 2026
- mariano-aguero/spec-driven-development-skilltheir own version, first seen Nov 8, 2026
- ishandutta2007/Awesome-Agent-Skillstheir own version, first seen Nov 8, 2026
- MMACABRE/SKILLStheir own version, first seen Nov 8, 2026
- steven123397/nexuskit-skillstheir own version, first seen Nov 1, 2026
- rumotion/ai-agent-project-templatetheir own version, first seen Nov 1, 2026
Used with
Projects with it also use using-agent-skills, idea-refine and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
LLl0k0laDSkillusing-agent-skills
Use when starting a session or when you need to discover which skill applies to the current task. This is the meta-skill that governs how all other skills are discovered and invoked.
Also in 44 projects that use this
LLl0k0laDSkillidea-refine
Refine ideas through structured divergent and convergent thinking. Use "idea-refine" or "ideate" to trigger.
Also in 54 projects that use this
MrCipherSmithSkillconstraint-driven-development
Use when a project needs a persistent, measurable quality bar — starting a project without documented standards, 'set up constraints', or when coverage/perf/a11y thresholds get re-debated per-PR. Produces CONSTRAINTS.md with enforceable numbers, ratchets, and a guard against silent weakening. NOT for throwaway prototypes or a one-off CI setup.
Also in 16 projects that use this
HK-hubSkillobservability-and-instrumentation
Instruments code so production behavior is visible and diagnosable. Use when adding logging, metrics, tracing, or alerting. Use when shipping any feature that runs in production and you need evidence it works. Use when production issues are reported but you can't tell what happened from the available data.
Also in 36 projects that use this
seikaikyoSkilldoubt-driven-development
對非平凡決策啟動新鮮 context 對抗審查(找碴不背書),在修正還便宜的時候抓出錯誤方向。適用:高風險改動(production、資安敏感邏輯、不可逆操作)、不熟的程式碼、要宣稱「這樣是安全的 / 可行的」之前。機械性操作與一行修改不適用。
Also in 44 projects that use this
- +5 more from LLl0k0laD
Other versions103 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 103
- addyosmani/agent-skills★ 114ksame name
- ollaya-dev/ollaya★ 1.4ksame name
- kdlbs/kandev★ 1.1ksame name
- jasonkneen/kiro★ 753same name
- shashankswe2020-ux/whoop-mcp★ 174same name
- magnus919/agent-skills★ 172same name
- FredAntB/Spec-Driven-Development★ 153same name
- tranhieutt/software_development_department★ 71same name
- drvoss/everything-copilot-cli★ 48same name
- vinvcn/addyosmani-agent-skills-zh★ 46same name
93 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository26 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- code-simplificationSkill
- dcgSkill
- editorial-reviewSkill
- journalSkill
- readme-updateSkill
- security-and-hardeningSkill
- session-retroSkill
- autopilotSkill
- blunder-huntSkill
- brainstormSkill
- convergence-detectSkill
- deslopSkill
- dispatch-parallelSkill
- doc-reviewSkill
- dreamSkill
- incremental-implementationSkill
- planning-and-task-breakdownSkill
- polishSkill
- pr-reviewSkill
- refactor-planSkill
- scope-checkSkill
- security-auditSkill
- unstuckSkill
- verification-before-completionSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 6 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 96 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 23
Ask the user — or write down — what problem this solves.
- Distinctive: line 33
If you can't fill this in cleanly, the spec is premature — go back to the user with clarifying questions.
- Distinctive: line 56
If a criterion can't be checked by reading the diff, running a command, or observing behavior, it's prose — drop it.
- Very specific: line 83
Run the spec through doc-review — kaijutsu's universal QA gate that orchestrates claude / codex / antigravity in parallel with prose-tuned …
- Distinctive: line 93
Read the disagreement table FIRST.
- Distinctive: line 96
Stop when the disagreement table shows zero issue-level findings or only contested-minor / info-level rows.
- Very specific: line 98
If jutsu swarm doc-review fails with "unknown preset", the doc-review skill isn't installed — jutsu install doc-review and retry.
- Very specific: line 104
If the spec touched architectural decisions, write them to docs/decisions/<date>-<slug>.md as ADRs.
- Distinctive: line 123
Non-goals are not optional: Every spec has at least 3 explicit non-goals or it's not finished.
“Common” is measured: kept by at least 6 in 10 of the 96 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Spec-Driven Development
Adapted from
addyosmani/agent-skillsunder the MIT License. Copyright (c) Addy Osmani. Modifications by kaijutsu maintainers — wrapped in the kaijutsu schema, with the final review pass migrated tojutsu swarm doc-review(the universal QA gate).
A spec is a workflow artifact, not an essay. The deliverable is a markdown file that the user (and future agent sessions) can read in 5 minutes and act on.
When to invoke
- User describes a problem fuzzy ("we should make it faster", "users keep getting confused")
- User asks for "a plan" before any implementation begins
- A change spans more than one file or one obvious step
- The agent is about to start coding without first writing what they're going to build
Process
Step 1: Capture the problem
Ask the user — or write down — what problem this solves. Not the solution, the problem. Format:
Problem: <one sentence>
Who feels it: <user persona, role, or system>
When: <conditions / triggers / frequency>
Today's workaround: <what people do now>
Cost of doing nothing: <what breaks / stays broken>If you can't fill this in cleanly, the spec is premature — go back to the user with clarifying questions.
Step 2: Scope + non-goals
Two equally important sections:
In scope: <bullet list — what this change WILL deliver>
Non-goals: <bullet list — what this change explicitly does NOT cover>Non-goals are the discipline. Without them every spec becomes "fix everything." Aim for at least 3 explicit non-goals.
Step 3: Acceptance criteria
Concrete, observable, falsifiable:
- [ ] <user-facing behavior or system property>
- [ ] <test that passes>
- [ ] <metric that moves>If a criterion can't be checked by reading the diff, running a command, or observing behavior, it's prose — drop it.
Step 4: Open questions + risks
Open questions:
- Q1: <decision the user / team needs to make>
- Q2: ...
Risks:
- <thing that could derail this; mitigation if known>Open questions block implementation until resolved. Risks are documented but don't necessarily block.
Step 5: Write to disk
Save the spec to:
docs/specs/YYYY-MM-DD-<short-slug>.md(or wherever the project's spec convention dictates — read CLAUDE.md / AGENTS.md / contributing docs).
Step 6: Multi-agent review (DO NOT skip)
Run the spec through doc-review — kaijutsu's universal QA gate that orchestrates claude / codex / antigravity in parallel with prose-tuned lenses (completeness, implementability, consistency):
jutsu swarm doc-review docs/specs/<filename>.md(or the equivalent skill wrapper: ~/.claude/skills/doc-review/scripts/run.sh docs/specs/<filename>.md)
The output is a synthesized markdown review with a disagreement table. Iterate findings:
- Read the disagreement table FIRST. 1/N findings (lone-wolf) are highest-leverage — the one agent that flagged it either saw a real gap others missed OR hallucinated. Investigate before dismissing.
- Fix issue-level findings (consensus or not). Fix consensus minor findings.
- Re-save the spec. Re-run
jutsu swarm doc-reviewif the changes were substantive (note: NEW content = new cache key = re-spend; same content =--replay <key>is free). - Stop when the disagreement table shows zero issue-level findings or only contested-minor / info-level rows.
If jutsu swarm doc-review fails with "unknown preset", the doc-review skill isn't installed — jutsu install doc-review and retry. (doc-review is in this skill's deps.skills so a full jutsu install spec-driven-development should pull it transitively.)
Version constraint note: this skill's deps.skills pins doc-review@^0.1, which means ">=0.1.0, <0.2.0" per semver. When doc-review v0.2.0 ships, transitive installs of this skill won't pick it up automatically. If you need the newer doc-review, either upgrade this skill to a version whose constraint matches OR install doc-review explicitly with jutsu install doc-review@^0.2.
Step 7: ADR capture (if architectural)
If the spec touched architectural decisions, write them to docs/decisions/<date>-<slug>.md as ADRs. Decisions made during spec authoring deserve the same record-keeping as decisions made during implementation.
Anti-rationalization table
| Excuse | Rebuttal |
| "I'll just code it; the spec will write itself" | Specs surface disagreement BEFORE expensive implementation. A 30-min spec saves a day of rework. |
| "The user already explained what they want" | The user explained ONE solution. The spec separates problem from solution and reveals other valid approaches. |
| "We'll add acceptance criteria during implementation" | Implicit criteria become political fights at PR review. Write them upfront, fight about them once. |
| "Open questions can be resolved later" | Unresolved questions usually compile into bugs or shipping the wrong thing. Resolve them now. |
| "It's a small change, I don't need a spec" | If it's actually small (one file, one obvious step), agreed — skip. If you're rationalizing, it's not small. |
| "doc-review costs money / I'll skip it" | The cost is bounded by --max-cost (defaults to $1.00) and you'll usually spend 1–3× less than the iteration time you'd waste on a spec gap caught at PR review. Skip only on genuinely tiny specs. |
Hard rules
- The spec is the deliverable of this skill. Implementation happens in a separate session, after the user signs off on the spec.
- Never skip the doc-review pass. A spec that hasn't been multi-agent-reviewed is a draft, period.
- Save to disk before declaring done. Conversation specs vanish; file specs survive.
- Acceptance criteria must be checkable. Drop anything that depends on subjective judgment.
- Non-goals are not optional. Every spec has at least 3 explicit non-goals or it's not finished.
Output format
## Spec: <short title>
**Saved to:** `docs/specs/<filename>.md`
**Reviewed by:** doc-review (`jutsu swarm doc-review`)
**Open questions:** <count> blocking, <count> non-blocking
**Status:** ready for review / needs user input / implementation green-lightComposes
doc-review— universal multi-agent QA gate; ships the prose-tuned lenses (completeness / implementability / consistency) the final review uses.
When NOT to use
- True one-line bug fix (
s/foo/bar/) - Pure refactor with no semantic change (and a passing test suite)
- Time-bounded experiment that the user explicitly framed as throwaway
For everything else, write the spec.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

