SDD Explain
Explain Spec-Driven Development (SDD) with a CLI-first mental model. Use this skill to teach lane selection, phase flow, and how workflow skills and ae sdd commands work together.
Required Skills
spec-driven-developmentresearch
Instructions
Identify Intent: Determine whether the user wants a quick overview, lane guidance, or a deep dive on one phase/command.
Why SDD: Explain the three outcomes:
- Clarity: behavior is defined before implementation drift
- Traceability: tasks and code map back to specs
- Confidence: reconcile/validation checks prove intent matches implementation
CLI-First Operating Model:
- Change sets are initialized with
ae sdd init <name> --lane <full|vibe|bug>. - Progress is tracked with
ae sdd status [name]andae-sdd-next [name]. - Full-lane implementation uses
ae sdd task list|start|complete|complete --next. - Use
ae sdd spec listto discover canonical spec paths before reading or editing canonical specs. - Workflow skills (
ae-sdd-init,ae-sdd-proposal,ae-sdd-specs,ae-sdd-tasks, etc.) are assistants; the CLI is the source of truth for state transitions.
- Change sets are initialized with
Deterministic Full-Lane Loop (Plan <-> Implement):
- Explain this exact loop until all tasks are complete:
ae-sdd-planprepares the current task plan (task is selected via CLI task commands)ae-sdd-nextadvancesplan -> implementae-sdd-implementexecutes and completes the current task viaae sdd task completeae-sdd-nextdecides transition deterministically using CLI guards:- remaining tasks: loop
implement -> plan - all tasks complete: advance
implement -> reconcile
- remaining tasks: loop
- Emphasize that workflow commands do not manually force phase transitions.
- Explain this exact loop until all tasks are complete:
Lane Flows:
- Full:
proposal -> specs -> discovery -> tasks -> plan -> implement -> reconcile -> finish - Vibe:
context -> plan -> implement -> [reconcile -> finish] - Bug:
triage -> plan -> implement -> [reconcile -> finish]
- Full:
Change Set Structure:
changes/<name>/ state.toml # lane, phase, notes, pending proposal.md # full lane proposal context.md # vibe/bug context when needed docs/specs/ # behavior contracts (default; configurable via .ae-config.json specRoot) thoughts/ # discovery notes tasks.toml # ordered tasks with spec_requirements plans/ # implementation plansCommand Map:
Command Use For ae sdd initCreate a new change set ae sdd statusSee current lane/phase/tasks ae-sdd-nextVerify current-phase artifacts, then advance phase ae sdd task startStart next full-lane task ae sdd task currentShow active in-progress task ae sdd task nextShow next pending task ae sdd task completeComplete current in-progress task ae sdd task complete --nextFinish and chain tasks ae sdd phase complete --nextUnderlying guarded transition used by ae-sdd-nextae sdd phase setManual override only by explicit user request ae sdd notes setPersist resume context/decisions ae sdd pending add/clearTrack unresolved blockers ae sdd spec listList canonical specs ae sdd config initInitialize .ae-config.jsonae-sdd-initDerive and approve a new change-set name, then initialize ae-sdd-continueResume an existing change set from CLI status ae-sdd-vibeStart or continue vibe-lane exploratory work ae-sdd-bugTriage and initialize bug-lane fixes ae-sdd-proposalDraft and refine proposal ae-sdd-specsCreate/update specs ae-sdd-discoveryValidate architecture and risks ae-sdd-tasksBuild tasks.tomlfrom specsae-sdd-planCreate execution plans ae-sdd-implementExecute planned work ae-sdd-critiqueReview artifacts for quality and gaps ae-sdd-scenario-testValidate behavior using realistic scenarios ae-sdd-commitCraft commit(s) aligned to SDD progress ae-sdd-reconcileVerify implementation vs specs ae-sdd-finishClose out change set ae-sdd-explainTeach SDD concepts and workflow usage How To Guide Users:
- Recommend lane choice based on risk and ambiguity.
- Explain next command, why it is next, and what artifact it should produce.
- Use
researchfor repo-specific details when asked how current code behaves.
Success Criteria
- User understands when to use full vs vibe vs bug lane.
- User understands that
ae sddCLI drives state and phase progression. - User can name the next command and expected artifact in their current phase.
Usage Examples
Explain CLI + command relationship
"Use ae-sdd-specs to draft the contract, then run ae-sdd-next when you want to advance phases."
Followup Question
[!IMPORTANT] End by asking one focused follow-up: "Do you want a lane recommendation for your current task, or a step-by-step walkthrough of your current phase?"