Comprehensive understanding of the spec-kit methodology. Constitution-driven feature development with specify, plan, tasks, and implement phases.
The SpecKit methodology is a constitution-driven approach to feature development. It ensures consistency across features by grounding all decisions in project principles.
Constitution First: Every feature is designed against the project's constitution - a living document of principles, constraints, and standards.
Governance Over Convention: Rather than implicit patterns, SpecKit makes governance explicit through:
.specify/
โโโ memory/
โ โโโ constitution.md # Project principles and standards
โโโ .current-feature # Active feature pointer
โโโ templates/ # Artifact templates
โ โโโ spec-template.md
โ โโโ plan-template.md
โ โโโ tasks-template.md
โ โโโ checklist-template.md
โโโ specs/
โโโ <id>-<name>/ # Feature directories
โโโ .speckit-state.json
โโโ .progress.md
โโโ .coordinator-prompt.md
โโโ spec.md # Feature specification
โโโ plan.md # Technical design
โโโ tasks.md # Implementation tasks
โโโ research.md # Research findings (optional)
โโโ data-model.md # Entity definitions (optional)
โโโ contracts/ # API contracts (optional)
โโโ checklists/ # Quality checklists
Features use auto-incremented 3-digit IDs:
001-user-auth002-payment-gateway003-notification-systemBenefits:
/speckit:constitution)Establish or update project-wide principles.
Inputs: Project context, team preferences
Outputs: .specify/memory/constitution.md
Constitution sections:
/speckit:specify)Define the feature specification against constitution.
Inputs: Feature goal, constitution reference
Outputs: spec.md
Specification contains:
/speckit:clarify) - OptionalResolve ambiguities through structured Q&A.
Inputs: spec.md with ambiguities
Outputs: Updated spec.md with clarifications
Rules:
/speckit:plan)Generate technical design from specification.
Inputs: spec.md, constitution, codebase context
Outputs: plan.md, optionally data-model.md, contracts/
Plan contains:
/speckit:tasks)Break plan into dependency-ordered implementation tasks.
Inputs: plan.md, spec.md
Outputs: tasks.md
Task format:
- [ ] T001 [P] [US1] Task description `path/to/file.ts`
Components:
T001: Sequential task ID[P]: Parallel marker (optional)[US1]: User story reference (optional)Task phases:
/speckit:implement)Execute tasks via Ralph Wiggum loop.
Inputs: tasks.md, state file
Outputs: Code changes, commits, updated progress
Execution model:
.speckit-state.json){
"featureId": "001",
"name": "user-auth",
"basePath": ".specify/specs/001-user-auth",
"phase": "execution",
"taskIndex": 0,
"totalTasks": 15,
"taskIteration": 1,
"maxTaskIterations": 5,
"globalIteration": 1,
"maxGlobalIterations": 100,
"awaitingApproval": false
}
.progress.md)Tracks:
/speckit:checklist)Domain-specific quality checklists:
Checklists are "unit tests for requirements" - verifiable criteria before implementation.
/speckit:analyze)Cross-artifact consistency analysis:
| Command | Purpose | Phase |
|---|---|---|
/speckit:start <name> |
Create or resume feature | Entry |
/speckit:constitution |
Create/update project principles | 1 |
/speckit:specify |
Define feature specification | 2 |
/speckit:clarify |
Resolve spec ambiguities | 3 |
/speckit:plan |
Generate technical design | 4 |
/speckit:tasks |
Break plan into tasks | 5 |
/speckit:implement |
Execute tasks | 6 |
/speckit:analyze |
Check consistency | Any |
/speckit:checklist |
Generate quality checklist | Any |
/speckit:status |
Show current state | Any |
/speckit:switch <id> |
Change active feature | Any |
/speckit:cancel |
Stop execution, cleanup | Any |
| Agent | Purpose | Used By |
|---|---|---|
constitution-architect |
Create/update constitution | constitution |
spec-analyst |
Generate specifications | specify |
plan-architect |
Technical design | plan |
task-planner |
Task breakdown | tasks |
spec-executor |
Execute single task | implement |
qa-engineer |
Verification tasks | implement |
All phases reference the constitution:
Constitution markers in artifacts:
[Cยง3.1]: References constitution section 3.1[MUST]: Required by constitution[SHOULD]: Recommended by constitution[MAY]: Optional per constitution