Sdd skill
Skill JMSolorzano-13/sdd-skill
Specification-Driven Development for AI agents — 7-role orchestrator with filesystem memory. Works in Cursor, Claude Code, Codex, and 69+ agents via skills.sh.
npx -y skills add JMSolorzano-13/sdd-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 27 days oldThe repository was created 27 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Specification-Driven Development (SDD) orchestration skill. Use this skill whenever the user mentions .sdd-skill/, state.md, @planner, @architect, @implementer, @review, @tester, @sentinel, SDD, /sdd-skill commands, spec.md in a project context, or wants to continue development across IDEs (Cursor, Claude Code, Antigravity, Open Code). Also trigger when the user wants to start a new project with agentic methodology, adopt SDD in an existing project, manage features/hotfixes with agent roles, or resume work after switching tools. This skill governs a polymorphic agent system where a single AI assumes different roles based on filesystem state — never chat history. Trigger even if the user just says "continue", "resume project", or "what's next" and a .sdd-skill/ folder is likely present.
SKILL.md
12.4 KB, ~2.9k tokens by cl100k_base, as published. Nobody here has run it
SDD Skill — Specification-Driven Development Orchestrator
A polymorphic agent system for Specification-Driven Development that works across any IDE or CLI. The filesystem is the only memory. Chat history is irrelevant.
🧭 Core Philosophy
| Principle | Rule |
|---|---|
| Filesystem = Memory | .sdd-skill/ is the single source of truth |
| Polymorphic Roles | One AI, multiple identities dictated by state.md |
| Fix Forward | Never revert. Always iterate forward |
| Zero Hallucinations | Only implement what is in the spec |
| IDE Agnostic | Cursor, Claude Code, Antigravity, Open Code — all identical |
🚀 Entry Points: What to Do First
Step 1 — Detect Context
When invoked, silently check for .sdd-skill/state.md:
IF .sdd-skill/state.md EXISTS:
→ Read state.md
→ Announce role assumption to user
→ Load role prompt from references/prompts/
→ Execute current task
ELSE IF user ran /sdd-skill init --new:
→ Run NEW PROJECT flow (see below)
ELSE IF user ran /sdd-skill init --adopt:
→ Run ADOPT PROJECT flow (see below)
ELSE:
→ Ask: "Are you starting a new project or adopting SDD in an existing one?"
Step 2 — Announce Role (Always)
Every time you assume a role, confirm with this exact format:
I've read state.md. I'm assuming the @[role] role.
Current task: [tarea_actual from state.md]
Attempt: [attempt count if retrying]
Step 3 — Load Role Prompt
Find the role's system prompt:
@planner→references/prompts/prompt-planner.agent@architect→references/prompts/prompt-architect.agent@implementer→references/prompts/prompt-implementer.agent@review→references/prompts/prompt-review.agent@tester→references/prompts/prompt-tester.agent@sentinel→references/prompts/prompt-sentinel.agent@human-trainer→references/prompts/prompt-human-trainer.agent
Load the entire prompt as a system message before proceeding.
📁 New Project Workflow: /sdd-skill init --new
Run when starting from zero:
/sdd-skill init --new
Execution:
- Create folder structure
- Ask @planner to create the first spec folder
specs/spec-001-[project-name]/and generatespec.mdinside it - Ask user to review and approve
- Move to PLAN stage
Initialization:
.sdd-skill/
├── state.md # Router: current role, task, next role
├── context_ai.md # Project summary for fast onboarding
│
├── specs/ # One self-contained folder per spec/bug
│ ├── active.json # Pointer to active spec folder + history
│ └── spec-001-[name]/ # FOLDER per spec — keeps its full work history
│ ├── spec.md # The specification
│ ├── plan.md # Technical design for this spec
│ ├── tasks.md # Work breakdown for this spec
│ └── checklist.md # Acceptance criteria for this spec
│
├── docs/ # GLOBAL documentation (project-wide)
│ ├── constitution.md # Global project rules
│ └── agents.md # Agent ecosystem reference
│
├── human/ # Documentation for humans
│ ├── PROJECT-OVERVIEW.md
│ ├── QUICK-DEBUG.md
│ ├── ARCHITECTURE-VISUAL.mmd
│ ├── task-summaries/
│ └── spec-summaries/
│
├── baseline/
│ ├── DEV_LOG.md
│ ├── TECH_STACK.md
│ ├── ARCHITECTURE_ADR.md
│ └── TECH_DEBT.md # Technical debt register (optional, created on adopt)
│
├── prompts/ # Agent role definitions (read-only)
│ ├── prompt-planner.agent
│ ├── prompt-architect.agent
│ ├── prompt-implementer.agent
│ ├── prompt-review.agent
│ ├── prompt-tester.agent
│ ├── prompt-sentinel.agent
│ └── prompt-human-trainer.agent
│
└── history/
├── decisions.log
└── test_results.log
Note: plan.md, tasks.md, and checklist.md are per-spec — each lives inside
its own spec folder, created from the templates in references/templates/. This
preserves the full work history of every feature. constitution.md and
agents.md are project-wide and live in docs/.
🔄 Continuing Work: /sdd-skill continue
Run when resuming a project:
/sdd-skill continue
Execution:
- Read
.sdd-skill/state.md - Load the active role prompt
- Execute the current task
- No chat history needed — everything is in
state.md
📊 Critical Files — Always Read on Role Switch
| File | Owner | What to Know |
|---|---|---|
.sdd-skill/state.md | All agents | Current role, task, next step — ROUTER |
.sdd-skill/context_ai.md | @planner | Project summary + architecture overview |
specs/{spec_active}/spec.md | @planner | Requirements, KPIs, success criteria |
specs/{spec_active}/plan.md | @architect | Technical design + architecture for this spec |
specs/{spec_active}/tasks.md | @architect | Work breakdown, dependencies for this spec |
docs/constitution.md | @planner (evolves with ADRs) | Global rules: naming, security, patterns |
baseline/TECH_STACK.md | @architect | Stack + environment config |
baseline/ARCHITECTURE_ADR.md | @architect | Decisions: why X vs Y |
{spec_active} is the spec folder name from state.md (e.g. spec-002-authentication).
🔀 Commands the User Can Run
# Initialize a new SDD project
/sdd-skill init --new
# Adopt SDD in an existing project
/sdd-skill init --adopt
# Resume work from wherever you left off
/sdd-skill continue
# Check project status
/sdd-skill status
# Start a new feature (only after spec is closed)
/sdd-skill feature new <name>
# Create a hotfix for a closed spec (origin spec is known)
/sdd-skill hotfix <spec-id> <description>
# Investigate and fix a bug with unknown origin (regression, integration, etc.)
/sdd-skill bug <description>
# List all specs
/sdd-skill spec list
# View a specific spec
/sdd-skill spec view <spec-id>
# Force a specific role (advanced)
/sdd-skill force @<role-name>
🎯 SDD Cycle Overview
[1. SPEC] @planner
↓
[2. PLAN] @architect
↓ ← 🔵 USER REVIEW GATE: questions & approval before coding
[3. CODE] @implementer
↓
[3.5. DOCUMENT] @human-trainer ← Generates human-readable docs
↓
[4. REVIEW] @review
↓ rejected → back to [3. CODE] with Fix Forward
↓ approved
[5. TEST] @tester
↓ fail (1st) → back to [3. CODE] with Fix Forward
↓ fail (2nd) → [6. SENTINEL]
↓ pass
[7. CLOSE PREP] @human-trainer ← Waits for human confirmation
↓ human confirms "✅ Read and understood"
↓ ← 🔵 CONSTITUTION.MD REVIEW GATE: confirm any rule changes
[8. CLOSE] @planner
↓ next task → back to [3. CODE]
↓ all done → Feature Complete
🔵 Human Gates (require explicit approval before continuing):
- After @architect: User reviews plan, asks questions, approves start of development
- After @human-trainer: User confirms understanding of completed feature
- Before @planner closes: User confirms any constitution.md rule changes
🤖 The 7 Agents
1. @planner — Business Analyst
- Defines WHAT to build (specs, KPIs, success criteria)
- Closes features when all tests pass and human confirms
2. @architect — Systems Designer
- Designs HOW to build (stack, architecture, WBS)
- Creates plan.md, tasks.md, checklist.md
- Creates initial constitution.md
3. @implementer — Execution Engine
- Writes code and follows constitution.md as a guide
- Never reverts — always Fix Forward
- Reads constitution.md on every task start
4. @review — Quality Guardian
- Static audits: OWASP, SOLID, nomenclature compliance
- Surgical feedback without editing code
5. @tester — QA Engineer
- Two testing levels: DEVELOPMENT (fast) and CERTIFICATION (rigorous)
- Three strategies: Playwright E2E, direct HTTP/CLI tests, manual user certification
- Playwright config: Brave browser headless, port 9222
6. @sentinel — Circuit Breaker
- Activates after 2 consecutive failures
- Selects pivot strategy: REFACTOR, REPLACE, or RETHINK
- Forces strategy change, not endless retries
7. @human-trainer — Knowledge Bridge
- Translates AI work into clear, visual docs for humans
- Generates task summaries (2-5 min read) and spec summaries (5-8 min read)
- Requires human confirmation before feature closure
- Creates: PROJECT-OVERVIEW.md, QUICK-DEBUG.md, ARCHITECTURE-VISUAL.mmd
📍 Filesystem Structure Reference
Full details: references/filesystem.md
Quick reference:
.sdd-skill/
├── state.md # ROUTER — Current role, task, next step
├── context_ai.md # Project synthesis for AI onboarding
├── specs/ # One folder per spec (spec.md + plan.md + tasks.md + checklist.md)
├── docs/ # GLOBAL docs (constitution.md, agents.md)
├── human/ # Documentation FOR HUMANS (not for agents)
├── baseline/ # Foundational docs (stack, ADRs, debt register)
├── prompts/ # Agent role definitions (read-only)
└── history/ # Immutable decision log
🔑 Key Behaviors
The Fix Forward Protocol
When @tester rejects code:
- Never revert commits
- Always patch forward
- Mark changes with comment referencing review item ID
- Log in decisions.log
Constitution Evolution
When @planner detects a new rule is needed (e.g., "all APIs must have rate limiting"):
- Creates ADR in
baseline/ARCHITECTURE_ADR.md - Updates
docs/constitution.mdwith the new rule - Documents that it starts on next feature
- Next features validate against updated constitution
Two-Level Testing
LEVEL 1 — DEVELOPMENT: Fast validation during task cycle. Use quickest appropriate method. LEVEL 2 — CERTIFICATION: Rigorous final validation. Playwright E2E preferred for UI, manual user approval when needed.
Breadcrumbs in Code
Every file @implementer creates includes:
/**
* @sdd-task: Task #7 - OAuth with Google
* @sdd-spec: specs/spec-002-authentication/spec.md
* @sdd-decision: ADR-005 - oauth4webapi vs Passport.js
* @sdd-why: Vercel Edge Runtime compatibility
* @human-debug: If auth fails → line 45-52 (token validation)
*/
This enables traceability: Code → Business Decision in one click.
✨ Why SDD Works
| Challenge | Solution |
|---|---|
| "I don't know what the AI did" | Human-trainer generates visual summaries + requires approval |
| "Can't switch IDEs without losing context" | Filesystem-based memory, not chat history |
| "Endless debugging loops" | Sentinel circuit breaker after 2 failures |
| "No audit trail" | decisions.log + breadcrumbs in code |
| "New dev can't understand project" | PROJECT-OVERVIEW.md (5-7 min read) + QUICK-DEBUG.md |
| "Code doesn't follow standards" | constitution.md as living guide + @review audits |
📚 For More Details
- Full cycle walkthrough:
references/cycle.md - Filesystem reference:
references/filesystem.md - Adopting existing project:
references/adopt.md - All templates:
references/templates/ - All agent prompts:
references/prompts/
The skill is ready. Run /sdd-skill init --new or /sdd-skill continue to begin. 🚀
What ships with it: 28 files
137.5 KB alongside SKILL.md
references/
- adopt.md6.3 KB
- cycle.md19.5 KB
- filesystem.md18.6 KB
- prompts/prompt-architect.agent4.3 KB
- prompts/prompt-human-trainer.agent3.7 KB
- prompts/prompt-implementer.agent2.5 KB
- prompts/prompt-planner.agent4.4 KB
- prompts/prompt-review.agent3.0 KB
- prompts/prompt-sentinel.agent2.5 KB
- prompts/prompt-tester.agent3.3 KB
- templates/active.json159 B
- templates/agents.md6.1 KB
- templates/ARCHITECTURE_ADR.md2.8 KB
- templates/bug.md3.8 KB
- templates/checklist.md6.1 KB
- templates/context_ai.md3.6 KB
- templates/DEV_LOG.md1.6 KB
- templates/plan.md3.8 KB
- templates/PROJECT-OVERVIEW.md3.9 KB
- templates/QUICK-DEBUG.md3.2 KB
- templates/spec.md9.1 KB
- templates/state.md5.1 KB
- templates/tasks.md3.2 KB
- templates/TECH_DEBT.md4.0 KB
- templates/TECH_STACK.md2.9 KB
- .gitignore48 B
- LICENSE1.1 KB
- README.md8.8 KB