Files
msd-core/commands/gsd/create-roadmap.md
Lex Christopherson 87909f97ae feat: enhance roadmap and planning workflows
- create-roadmap: improved phase structuring and requirements tracing
- plan-phase: better task decomposition and wave assignment
- roadmap.md template: cleaner format
- phase-prompt.md template: structured planning prompt

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 09:34:48 -06:00

3.2 KiB

name, description, allowed-tools
name description allowed-tools
gsd:create-roadmap Create roadmap with phases for the project
Read
Write
Bash
AskUserQuestion
Glob
Create project roadmap with phase breakdown.

Roadmaps define what work happens in what order. Phases map to requirements.

Run after /gsd:define-requirements.

<execution_context> @/.claude/get-shit-done/references/principles.md @/.claude/get-shit-done/workflows/create-roadmap.md @/.claude/get-shit-done/templates/roadmap.md @/.claude/get-shit-done/templates/state.md @~/.claude/get-shit-done/references/goal-backward.md </execution_context>

@.planning/PROJECT.md @.planning/config.json @.planning/REQUIREMENTS.md @.planning/research/SUMMARY.md (if exists) ```bash # Verify project exists [ -f .planning/PROJECT.md ] || { echo "ERROR: No PROJECT.md found. Run /gsd:new-project first."; exit 1; }

Verify requirements exist

[ -f .planning/REQUIREMENTS.md ] || { echo "ERROR: No REQUIREMENTS.md found. Run /gsd:define-requirements first."; exit 1; }

</step>

<step name="check_existing">
Check if roadmap already exists:

```bash
[ -f .planning/ROADMAP.md ] && echo "ROADMAP_EXISTS" || echo "NO_ROADMAP"

If ROADMAP_EXISTS: Use AskUserQuestion:

  • header: "Roadmap exists"
  • question: "A roadmap already exists. What would you like to do?"
  • options:
    • "View existing" - Show current roadmap
    • "Replace" - Create new roadmap (will overwrite)
    • "Cancel" - Keep existing roadmap

If "View existing": cat .planning/ROADMAP.md and exit If "Cancel": Exit If "Replace": Continue with workflow

Follow the create-roadmap.md workflow starting from detect_domain step.

The workflow handles:

  • Loading requirements
  • Domain expertise detection
  • Phase identification mapped to requirements
  • Requirement coverage validation (no orphaned requirements)
  • Research flags for each phase
  • Confirmation gates (respecting config mode)
  • ROADMAP.md creation with requirement mappings
  • STATE.md initialization
  • REQUIREMENTS.md traceability update
  • Phase directory creation
  • Git commit
``` Roadmap created: - Roadmap: .planning/ROADMAP.md - State: .planning/STATE.md - [N] phases defined

▶ Next Up

Phase 1: [Name] — [Goal from ROADMAP.md]

/gsd:plan-phase 1

/clear first → fresh context window


Also available:

  • /gsd:discuss-phase 1 — gather context first
  • /gsd:research-phase 1 — investigate unknowns
  • Review roadmap

</step>

</process>

<output>
- `.planning/ROADMAP.md`
- `.planning/STATE.md`
- `.planning/phases/XX-name/` directories
</output>

<success_criteria>
- [ ] PROJECT.md validated
- [ ] REQUIREMENTS.md validated
- [ ] All v1 requirements mapped to phases (no orphans)
- [ ] Success criteria derived for each phase (2-5 observable behaviors)
- [ ] Success criteria cross-checked against requirements (gaps resolved)
- [ ] ROADMAP.md created with phases, requirement mappings, and success criteria
- [ ] STATE.md initialized
- [ ] REQUIREMENTS.md traceability section updated
- [ ] Phase directories created
- [ ] Changes committed
</success_criteria>