implement-plan
π―SkillInstallation
npx skills add mhylle/claude-skills-collection --skill implement-planRun it in a terminal; it asks which AI coding tools to install it for (Claude Code, Codex, Cursor and more).
Uses skills.sh Β· Node.js 22.20+
After installing
Ask for related work and the agent uses it on its own, or call it yourself.
/implement-planInstall by hand
Copy the whole skill folder from GitHub to the place below. Copying only SKILL.md can leave out files the skill uses.
Open the skill folder β- This project
.claude/skills/implement-plan/ - All projects
~/.claude/skills/implement-plan/
These paths are for Claude Code. For other tools, the command above puts it in the right place.
SKILL.md
View on GitHub βOrchestrate the execution of complete implementation plans, delegating each phase to implement-phase skill. This skill manages the full plan lifecycle including phase sequencing, user confirmation between phases, and overall progress tracking. Triggers on "implement the plan", "execute the implementation plan", or when given a path to a plan file.
Implement Plan
Contents
- Your Role: Orchestrator
- Getting Started
- Phase Execution
- Resuming Interrupted Work
- Final Completion
- Adapting to Plan Size
- Key Principles
- Skill Dependencies
- Reference
Reference files (open one when a step points to it):
references/plan-format.md: Implementation Plan Format Reference
Orchestrate complete implementation plans by sequencing phases and running each one through the implement-phase skill, in this session. Read a plan, track progress, and coordinate phase-by-phase execution with user confirmation between phases.
Your Role: Orchestrator
This session coordinates β it does not implement. All code writing, testing, and file creation is done by the subagents that implement-phase spawns. When you invoke implement-phase, its procedure loads into this same session, which becomes the phase lead; the lead still hands the actual work to subagents.
Why this separation matters:
- Context preservation β This session retains the full plan context across all phases. Implementation work would fill the context with code details and lose sight of the overall plan.
- Clean error boundaries β Implementation failures are isolated within the subagents. The orchestrator stays clean and can reason about recovery without being entangled in failing code.
- Parallelization β implement-phase runs multiple tasks concurrently within a phase.
In practice: use Read/Glob to understand context, Skill to invoke implement-phase, and Task tools to track progress. Do not use Write/Edit/NotebookEdit; if you are about to, run implement-phase's procedure instead, which spawns subagents for the work.
This holds whenever the Agent tool is available. A user's "foreground", "no background agents" or "don't poll" is about how this session waits for agents, not about who writes the code; only an explicit "write the code yourself in this session" overrides the rule, so ask when unsure.
Getting Started
1. Locate and Read the Plan
Find the plan file (common locations: docs/plans/, thoughts/plans/, or the user-specified path). Read the entire plan β full context is essential for sequencing phases correctly.
2. Assess the Environment
Check what supporting infrastructure exists. Not all projects have all of these β adapt accordingly:
| Check | If present | If absent |
|---|---|---|
| Task tools progress | Resume from first incomplete phase | Start from Phase 1 |
ADR directory (docs/decisions/) | Pass to implement-phase for compliance | Say so in the phase context; implement-phase's ADR step expects docs/decisions/INDEX.md |
Prompt files (docs/prompts/phase-*.md) | Pass matching prompt to implement-phase | implement-phase uses plan directly |
3. Check or Create Progress Tracking
TaskList β Look for tasks matching "Phase N:" pattern
If tasks exist with some completed:
β Resume from first non-completed task
β Show progress summary
If no tasks exist:
β Create one task per phase with sequential dependencies
β Start from Phase 1
4. Confirm Before Starting
Present a brief summary before executing:
- Plan name and total phases
- Current progress (if resuming)
- Which phase executes first
- Notable dependencies or prerequisites
Wait for user confirmation to begin.
Phase Execution
Announce
Briefly state what's about to happen:
======================================
STARTING PHASE [N]: [Phase Name]
======================================
Objectives: [1-2 sentences]
Dependencies: [Previous phase status]
Running implement-phase...
Run implement-phase
Mark the phase's task in_progress, then invoke the skill:
Skill(skill="implement-phase"): Execute Phase [N] of the implementation plan.
Context:
- Plan: [plan file path]
- Phase: [N] ([Phase Name])
- Task ID: [from TaskList, if available]
- Prompt: [prompt file path if discovered, otherwise "None"]
- Previous Phase Status: [Complete/N/A]
Execute all quality gates and end with the PHASE_RESULT block.
Optional parameters to pass through when specified in the plan:
TDD Mode,Coverage Thresholdβ from plan metadataSkip Stepsβ if specific quality gates should be skipped
Its procedure loads into this session, which then acts as the phase lead through Steps 1β8; nothing comes back from elsewhere, so continue from the PHASE_RESULT block that ends Step 8.
Its agents report asynchronously, so this session ends turns while it waits for them. That is the phase still in progress, not the phase ending: each report resumes the phase, which runs on until Step 8.
Handle Results
The PHASE_RESULT block that ends each phase has one of three statuses:
COMPLETE β All quality gates passed.
- Update task status to
completed - Present results summary
- Note any manual verification items (rare β implement-phase handles most verification)
- Wait for user confirmation before next phase
FAILED β Quality gates could not be satisfied after internal retries.
- Present failure details and what was attempted
- Do not automatically retry the whole phase β implement-phase already retried internally
- Offer options:
- Fix and retry β User provides guidance, re-run the phase
- Skip β Mark as skipped, note the risk, continue (user's call)
- Abort β Stop plan execution
- Wait for user decision
BLOCKED β During a phase, implement-phase asks the user about a blocker itself, since it runs in this session, and resumes the blocked step after the answer. A PHASE_RESULT with status: BLOCKED only ends a phase when no one could be asked (an unattended run). When you see one:
- Present the blocker with full context
- Include options from implement-phase plus your recommendation
- Wait for user decision
- On resolution, resume from the blocked step (not from Phase 1)
Confirm Between Phases
After each phase completes:
======================================
PHASE [N] COMPLETE: [Phase Name]
======================================
Results:
Implementation: [files created/modified]
Verification: [build/test/lint status]
Code Review: [status]
ADR Compliance: [status]
[Manual verification items, if any]
Progress: [N]/[total] phases complete
Next: Phase [N+1] β [Name]
Ready to proceed?
======================================
Resuming Interrupted Work
When tasks already exist for this plan:
- Call TaskList to see current state
- Find the first non-completed task
- Spot-check that previous work exists (verify a few key files from completed phases)
- Present resume summary and continue
Resuming: [Plan Name]
Phase 1: [Name] β completed
Phase 2: [Name] β completed
Phase 3: [Name] β resuming here
Phase 4: [Name] β pending
Continuing from Phase 3...
Final Completion
After all phases complete:
======================================
PLAN COMPLETE: [Plan Name]
======================================
Summary:
Phases Completed: [N]/[N]
Files Created: [count]
Files Modified: [count]
Tests Added: [count]
Quality Gates: All passed across all phases
Final Verification:
[Remaining manual items, if any β often none]
======================================
Adapting to Plan Size
Not every plan needs full ceremony:
| Plan Size | Approach |
|---|---|
| 1-2 phases | Brief announcements, compact status |
| 3-5 phases | Standard flow with summaries |
| 6+ phases | Full tracking, progress percentages |
The implement-phase pipeline is the same regardless β this adaptation is about how much orchestration scaffolding this skill adds around it.
Key Principles
- Delegate, don't implement β All code work flows through the subagents implement-phase spawns
- Confirm between phases β Give the user a chance to review, adjust, or abort
- Trust the
PHASE_RESULTblock β Act on the block that ends each phase - Surface problems clearly β Present failures and blockers with context and options
- Degrade gracefully β Missing prompts or task history should not block execution
- Resume cleanly β Task tools let work survive session restarts
Skill Dependencies
implement-plan
βββ implement-phase (required, runs in this session)
βββ verification-loop (required)
βββ devflow:code-review (required)
βββ adr (required for compliance)
Reference
See references/plan-format.md for:
- Standard plan structure and formatting
- Exit condition templates by project type (Node.js, Python, Go, Rust, Java)
- Phase organization and sizing guidelines
More from this repository10
Skill
Skill
Skill
Skill
Skill
Skill
Skill
Skill
Skill
Skill