Execution Plan
Overview
Load the plan, conduct a critical review, execute all tasks, and report upon completion.
Announce at start: "I am using the executing-plans skill to implement this plan."
Note: Tell your human partner that Superpowers work much better with sub-agent support. If running on a platform that supports sub-agents (such as Claude Code or Codex), the quality of work will improve significantly. If sub-agents are available, use superpowers:subagent-driven-development instead of this skill.
Process
Step 1: Load and Review the Plan
- Read the plan file
- Critical review – identify any issues or concerns in the plan
- If there are concerns: Raise them to your human partner before starting
- If no concerns: Create a TodoWrite and proceed
Key review checks:
- Are there missing dependencies between steps? (A depends on B, but B is listed after A)
- Are validation conditions clear? ("Confirm availability" is not acceptable; "Run with all passing" is)
- Are there implicit environment assumptions? (Node version, database connection, API Key)
Review example:
Plan file: docs/plan.md
Task list: 5 tasks
Review findings:
- Task 3 (Add database migration) should come after Task 2 (Write data model), order is correct ✓
- The validation condition for Task 4 says "Confirm functionality works" → Needs clarification: What specific tests should be run?
- The plan does not mention Python version requirements → Needs confirmation
To partner:
"The plan is generally executable. There are two issues: (1) The validation condition for Task 4 is not specific enough, it is recommended to change it to 'Run pytest tests/test_api.py with all passing'; (2) Need to confirm the Python version requirement."
Step 2: Execute Tasks
For each task:
- Mark as in progress – Update TodoWrite
- Understand the goal – Re-read the task description to clarify completion criteria
- Execute implementation – Follow the plan steps strictly (the plan includes detailed sub-steps)
- Run validation – Execute required tests or checks as specified
- Submit changes – Commit once per task completed, reference the task number in the commit message
- Mark as completed – Update TodoWrite
Rhythm for each task:
--- Task 2/5: Add User Validation ---
[Mark as in progress]
Goal: Add input validation for /api/users
Completion criteria: All validation tests pass, invalid inputs return 400
[Implementation]
- Add validateUser() middleware
- Write 3 validation rules (email format, password strength, username length)
[Validation]
$ npm test -- --grep "validation"
✓ Reject invalid email (12ms)
✓ Reject weak password (8ms)
✓ Reject overly long username (5ms)
3 passing
[Submission]
$ git add src/middleware/validate.js tests/validation.test.js
$ git commit -m "feat: Add user input validation (Task 2/5)"
[Mark as completed]
--- Task 2/5 Completed ---
Batch review checkpoints:
- After completing every 3 tasks, pause to review: Is the overall direction still correct? Have we deviated from the plan?
- If issues are found in previous implementations, fix them before proceeding; do not continue with unresolved problems
Step 3: Handle Common Exceptions
Test failures:
- Read error messages to locate the cause of failure
- Distinguish: Is it an implementation bug? A problem with the test itself? Or an error in the plan description?
- Implementation bug → Fix and re-run
- Test issue → Fix the test and inform the partner
- Plan error → Stop execution, report to the partner and suggest corrections
Missing dependencies:
Task 3 requires a Redis connection, but Redis configuration is not mentioned in the plan.
→ Stop execution
→ Report to partner: "Task 3 requires Redis, but the plan does not include configuration steps.
Recommendation: Insert 'Configure Redis connection' step before Task 3."
Unclear instructions:
- Do not guess intentions, do not "reasonably infer"
- List your understanding and confusion, ask the partner to clarify
- Wait for a response before proceeding
Step 4: Complete Development
After all tasks are completed and validated:
- Announce: "I am using the finishing-a-development-branch skill to complete this work."
- Required sub-skill: Use superpowers:finishing-a-development-branch
- Follow the guidelines of that skill to validate tests, present options, and execute selections
Completion report template:
## Execution Report
**Plan:** docs/plan.md
**Branch:** feature/user-validation
**Tasks:** 5/5 completed
### Completed Tasks
1. ✅ Initialize project structure
2. ✅ Add user validation
3. ✅ Add database migration
4. ✅ Implement API endpoints
5. ✅ Add integration tests
### Validation Results
- Unit tests: 23/23 passed
- Integration tests: 8/8 passed
- Lint check: 0 warnings
### Deviations from Plan
- Task 3: Redis configuration changed from env to config.yaml (approved by partner)
### Next Steps
Process merge/PR according to the finishing-a-development-branch skill
When to Stop and Ask for Help
Stop execution immediately in the following cases:
- Encountering blocks (missing dependencies, test failures, unclear instructions)
- The plan has serious flaws that prevent starting
- You do not understand an instruction
- Validation fails repeatedly (the same test fails more than 2 times)
Ask when in doubt, do not guess.
When to Return to Previous Steps
Return to Review (Step 1) when:
- The partner updates the plan based on your feedback
- The fundamental solution needs to be reconsidered
Do not force through blocks – Stop and ask.
Notes
- Conduct a critical review of the plan first
- Follow the plan steps strictly
- Do not skip validation
- Commit separately for each task, reference the task number in the commit message
- Reference corresponding skills when required by the plan
- Stop and ask when encountering blocks, do not guess
- Never start implementation on the main/master branch without explicit user consent
Integration
Required workflow skills:
- superpowers:using-git-worktrees - Required: Set up an isolated workspace before starting
- superpowers:writing-plans - Create the plan to be executed by this skill
- superpowers:finishing-a-development-branch - Wrap up development after all tasks are completed