executing-plans
CRITICAL CONSTRAINTS
You MUST NOT call EnterPlanMode or ExitPlanMode during this skill. This skill operates in normal mode, executing a plan that already exists on disk. Plan mode is unnecessary and dangerous here — it restricts Write/Edit tools needed for implementation.
Executing Plans
Overview
Load plan, review critically, execute all tasks, report when complete.
Announce at start: "I'm using the executing-plans skill to implement this plan."
Note: Tell your human partner that Superpowers works much better with access to subagents. The quality of its work will be significantly higher if run on a platform with subagent support (such as Claude Code or Codex). If subagents are available, use superpowers-extended-cc:subagent-driven-development instead of this skill.
The Process
Step 0: Load Persisted Tasks
- Call
TaskListto check for existing native tasks - CRITICAL - Locate tasks file: Try
<plan-path>.tasks.json, if not found glob for matching.tasks.json - If tasks file exists AND native tasks empty: recreate from JSON using TaskCreate:
- Include full
descriptionfrom .tasks.json (not just subject) - Include
metadatafield if present (files, verifyCommand, acceptanceCriteria) - Restore
blockedBywith TaskUpdate
- Include full
- If native tasks exist: verify they match plan, resume from first
pending/in_progress - If neither: proceed to Step 1b to bootstrap from plan
Update .tasks.json after every task status change.
Step 0.5: Verify Workspace (Worktree Check)
Before calling using-git-worktrees, check if a worktree already exists:
- Run
git worktree listto see all existing worktrees - If a worktree for the plan's branch already exists: cd into it — do NOT create a new one
- If on main/master with no worktree: REQUIRED SUB-SKILL: Use
superpowers-extended-cc:using-git-worktreesto create one
Step 1: Load and Review Plan
- Read plan file
- Review critically - identify any questions or concerns about the plan
- If concerns: Raise them with your human partner before starting
- If no concerns: Proceed to task setup
Step 1b: Bootstrap Tasks from Plan (if needed)
If TaskList returned no tasks or tasks don't match plan:
- Parse the plan document for
## Task N:or### Task N:headers - For each task found, use TaskCreate with:
- subject: The task title from the plan
- description: Full structured content (Goal, Files, Acceptance Criteria, Verify, Steps) with
json:metadatacode fence at the end containing files, verifyCommand, acceptanceCriteria - activeForm: Present tense action (e.g., "Implementing X")
- CRITICAL - Dependencies: For EACH task that has blockedBy in the plan or .tasks.json:
- Call
TaskUpdatewithtaskIdandaddBlockedBy: [list-of-blocking-task-ids] - Do NOT skip this step - dependencies are essential for correct execution order
- Call
- Call
TaskListand verify blockedBy relationships show correctly (e.g., "blocked by #1, #2")
Step 2: Execute Tasks
For each task:
- Mark as in_progress
- Follow each step exactly (plan has bite-sized steps)
- Use metadata for verification: Parse the
json:metadatacode fence from the task description. RunverifyCommandand check eachacceptanceCriteriabefore marking complete. - Mark as completed
- Sync
.tasks.json: Read the tasks file, update the task's"status"to"completed"(or"in_progress"in step 1), set"lastUpdated"to current ISO timestamp, write back. This keeps the persistence file in sync with native tasks for cross-session resume.
Step 3: Complete Development
After all tasks complete and verified:
- Announce: "I'm using the finishing-a-development-branch skill to complete this work."
- REQUIRED SUB-SKILL: Use superpowers-extended-cc:finishing-a-development-branch
- Follow that skill to verify tests, present options, execute choice
When to Stop and Ask for Help
STOP executing immediately when:
- Hit a blocker (missing dependency, test fails, instruction unclear)
- Plan has critical gaps preventing starting
- You don't understand an instruction
- Verification fails repeatedly
Ask for clarification rather than guessing.
When to Revisit Earlier Steps
Return to Review (Step 1) when:
- Partner updates the plan based on your feedback
- Fundamental approach needs rethinking
Don't force through blockers - stop and ask.
Remember
- Review plan critically first
- Follow plan steps exactly
- Don't skip verifications
- Reference skills when plan says to
- Stop when blocked, don't guess
- Never start implementation on main/master branch without explicit user consent
Integration
Required workflow skills:
- superpowers-extended-cc:using-git-worktrees - REQUIRED: Set up isolated workspace before starting
- superpowers-extended-cc:writing-plans - Creates the plan this skill executes
- superpowers-extended-cc:finishing-a-development-branch - Complete development after all tasks
More from mrclrchtr/superpowers-extended-cc
writing-plans
Use when you have a spec or requirements for a multi-step task, before touching code
1brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
1writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
1using-git-worktrees
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification
1using-superpowers
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
1systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
1