/speckit.checklist command generates custom quality validation checklists that act as “unit tests for requirements” - they validate the quality, clarity, and completeness of requirements in a specific domain.
Purpose
Create checklists that validate requirement quality:- Test if requirements are well-written (not if code works)
- Check completeness, clarity, and consistency
- Ensure measurability and testability
- Identify gaps, ambiguities, and conflicts
- Validate coverage of scenarios and edge cases
Checklists are NOT for testing implementation. They test whether requirements themselves are complete, clear, and ready for implementation.
Core Concept: Unit Tests for English
Think of checklists as unit tests for your specification:Usage
How It Works
Setup
Runs prerequisite check and parses:
FEATURE_DIR: Current feature directoryAVAILABLE_DOCS: List of available documents (spec, plan, tasks, etc.)
Clarify Intent (Dynamic)
Asks up to 3 contextual questions based on:
- Your phrasing and domain keywords
- Signals from spec/plan/tasks
- Risk indicators
- Stakeholder hints
- Scope refinement
- Risk prioritization
- Depth calibration
- Audience framing
- Boundary exclusion
Understand Request
Combines your input + clarifying answers to derive:
- Checklist theme (security, UX, API, performance, etc.)
- Must-have items you mentioned
- Focus areas (completeness, clarity, coverage, etc.)
Load Feature Context
Reads relevant portions of:
- spec.md (requirements, user stories)
- plan.md (technical decisions, if exists)
- tasks.md (implementation tasks, if exists)
Generate Checklist
Creates checklist testing requirement quality:
- Groups items by quality dimension (Completeness, Clarity, Consistency, etc.)
- Numbers items sequentially (CHK001, CHK002, …)
- Includes traceability references
[Spec §X.Y],[Gap],[Ambiguity] - Ensures ≥80% of items have traceability markers
- Caps at ~40 items (prioritizes by risk/impact if more)
Create Checklist File
Writes to
FEATURE_DIR/checklists/[domain].md:- Short, descriptive filename (e.g.,
ux.md,security.md,api.md) - If file exists with same name, appends to existing
- Each run creates a NEW file (never overwrites existing checklists)
Checklist Structure
Metadata
Quality Dimensions
Items grouped by what they test:Checklist Types
Common domain-specific checklists:UX Requirements Quality
API Requirements Quality
Performance Requirements Quality
Item Format
Required Structure
Components
- Checkbox:
- [ ](markdown task) - ID:
CHK###(sequential, starting CHK001) - Separator:
- - Question: Testing requirement quality (not implementation)
- Markers:
[Dimension],[Spec §X.Y],[Gap], etc.
Traceability Markers
[Spec §X.Y]: References existing spec section[Gap]: Identifies missing requirements[Ambiguity]: Flags unclear requirements[Conflict]: Notes contradictory requirements[Assumption]: Questions undocumented assumptions[Completeness],[Clarity],[Consistency],[Coverage],[Measurability]: Quality dimensions
Clarification Questions
Dynamic questions based on your request:Real-World Example
Best Practices
Generate Multiple Checklists
Create domain-specific checklists:checklists/ux.mdchecklists/security.mdchecklists/api.md
Complete Before Implementation
The/speckit.implement command:
- Scans all checklists in
checklists/ - Counts incomplete items
- Stops and asks if any checklist is incomplete
- Proceeds automatically if all complete
Checklists act as quality gates before implementation. Complete them to ensure requirements are implementation-ready.
Focus on High-Impact Domains
Prioritize checklists for:- Security (prevents vulnerabilities)
- UX (ensures usability)
- Performance (avoids rework)
- API contracts (prevents breaking changes)
Answer Clarification Questions Thoughtfully
Your answers shape the checklist:- Scope: Determines item count and breadth
- Risk areas: Focuses on critical concerns
- Depth: Balances thoroughness vs. speed
Handoffs
After checklist generation:Complete Checklist
Review and check off all items in the generated checklist file
Fix Issues
Address any requirement gaps, ambiguities, or conflicts identified
Implement
Once all checklists complete, proceed to implementation
File Structure
Next Steps
Implement
Complete all checklists, then execute the implementation plan