This skill should be used when the user asks to "plan a feature", "create feature plan", "start planning", "new feature", or wants comprehensive planning with analysis, spec, research, design, and...
Create a comprehensive feature planning artifact for: $ARGUMENTS
This planning session follows the Feature Planning Methodology documented in aidocs/feature-planning-methodology.md.
Run this command to find the next feature number:
{ ls backlog/plans/ 2>/dev/null; ls backlog/plans/_completed/ 2>/dev/null; } | grep -E '^[0-9]{3}' | sort -r | head -1
The Feature ID format is {NNN}-{slug} where:
NNN = 3-digit sequential number (001, 002, 003...)slug = lowercase, hyphenated descriptor (2-4 words)git checkout -b feature/{NNN}-{slug}
mkdir -p backlog/plans/{NNN}-{slug}/contracts
Note: When feature is complete, move folder to backlog/plans/_completed/{NNN}-{slug}/
Create all artifacts in sequence using templates from references/templates.md.
analysis.md)Goal: Understand the problem space, existing code, and patterns.
Key sections:
spec.md)Goal: Define requirements from user perspectives.
Key sections:
research.md)Goal: Validate design against external specifications, APIs, or standards.
Key sections:
Create three artifacts:
4a. Implementation Plan (plan.md)
4b. Data Model (data-model.md)
4c. Contracts (contracts/)
5a. Spec Tests (specs/tests/{NNN}-{slug}.md)
CRITICAL: Before writing spec tests, load the spec-tests skill:
Skill(skill="all-skills:spec-tests")
See references/spec-tests-guide.md for detailed writing guidance.
Key principles:
5b. Task Breakdown (tasks.md)
Organize tasks by phase with TDD workflow:
[TEST] tasks: Write failing tests first[IMPL] tasks: Implement to pass tests[SPEC] tasks: Run spec tests at phase boundariesInclude dependency diagram and task summary table.
analysis.md - understand problem spacespec.md - define requirementsresearch.md - validate against external specs (if applicable)plan.md, data-model.md, contracts/ - designspecs/tests/{NNN}-{slug}.md and tasks.md - test designbacklog/plans/ (e.g., backlog/plans/YYYYMMDD-{slug}.md) since the full planning artifacts supersede itAs work progresses through each phase:
After completing all phases, summarize:
Feature: {NNN}-{slug}
Branch: feature/{NNN}-{slug}
Created Artifacts:
├── backlog/plans/{NNN}-{slug}/
│ ├── analysis.md ✅
│ ├── spec.md ✅
│ ├── research.md ✅
│ ├── plan.md ✅
│ ├── data-model.md ✅
│ ├── tasks.md ✅
│ └── contracts/
│ └── README.md ✅
└── specs/tests/{NNN}-{slug}.md ✅
Cleaned Up:
- Removed quick plan: backlog/plans/YYYYMMDD-{slug}.md 🗑️
Next Steps:
1. Review planning artifacts
2. Commit: git add backlog/plans/{NNN}-{slug} specs/tests/{NNN}-{slug}.md && git commit -m "feat: planning for {NNN}-{slug}"
3. Begin implementation: /work-plan {NNN}
4. When complete: mv backlog/plans/{NNN}-{slug} backlog/plans/_completed/
For detailed templates and guidance, consult:
references/templates.md - Full templates for all planning artifactsreferences/spec-tests-guide.md - Detailed spec test writing guidance