Interactive implementation phase manager. Creates or updates .phases/ directory with index.yaml and phase files. If a PRD exists, ensures phases cover all scenarios from the PRD.
Interactive implementation phase manager. Creates or updates .phases/ directory with index.yaml and phase files. If a PRD exists, ensures phases cover all scenarios from the PRD.
arguments
[{"name":"phase","description":"Specific phase number to add or update","required":false}]
To Phases - Implementation Phase Manager
Overview
The To-Phases skill helps you create and manage implementation phases using a file-based structure that keeps orchestrator context lean. Phases are stored in .phases/ with an index file and separate phase files.
If a PRD exists (.phases/prd-*.md), this skill ensures phases cover all scenarios from the PRD.
Structure:
.phases/
├── prd-{feature-name}.md # PRD (optional, created by to-prd)
├── index.yaml # Lean summary (orchestrator reads ONLY this)
├── phase-01-project-setup.md
├── phase-02-core-domain.md
└── ...
EXECUTION INSTRUCTIONS
When this skill is invoked via /to-phases:
Step 0: Check for PRD
Check if .phases/prd-*.md exists:
if exists:
Read the PRD
Note all user stories and implementation decisions
Use these to guide phase creation
else:
Continue with standard phase creation
IMPORTANT: If a PRD exists, phases MUST cover:
All user stories from the PRD
All modules identified in implementation decisions
All testing requirements from testing decisions
Step 1: Check Existing State
if file_exists(".phases/index.yaml"):
Read and display current state (Append/Update Mode)
else:
Create new phases (Create Mode)
Create Mode
1a. Prompt for Project Name
Use AskUserQuestion:
Question: "What is the project name?"
Header: "Project"
This is REQUIRED. Do not proceed without a project name.
1b. Collect Phases
If PRD exists:
Analyze PRD user stories and group them into logical phases
Present proposed phases to user for approval
Use AskUserQuestion to confirm or modify phases
If no PRD:
For each phase, ask the user:
Phase name - Short descriptive name (e.g., "Project Setup", "Core Domain")
Tasks - List of implementation tasks as checklist items
Use AskUserQuestion:
Question: "Describe Phase {N}: {name}"
Header: "Phase {N}"
Ask for the tasks as a list. Each task should be a concrete, completable item.
After each phase, ask:
Question: "Add another phase?"
Header: "More?"
Options: "Yes, add another", "No, done with phases"
Continue until the user is done.
1c. Validate PRD Coverage (if PRD exists)
Before writing files, verify:
All user stories from PRD are covered by at least one phase
All modules from implementation decisions are addressed
Testing decisions are reflected in appropriate phases
If coverage is incomplete, warn the user and ask if they want to add phases.
1d. Write the Files
Create .phases/ directory if needed: mkdir -p .phases
Write .phases/index.yaml (format below)
Write .phases/phase-{NN}-{slug}.md for each phase (format below)