Execute the plan by dispatching a new subagent for each task, with a two-stage review after each task: first a spec compliance review, then a code quality review.
Core principles: Fresh subagent per task + two-stage review (spec then quality) = high quality, fast iteration
When to use
digraph when_to_use {
"Have implementation plan?" [shape=diamond];
"Tasks mostly independent?" [shape=diamond];
"Stay in this session?" [shape=diamond];
"subagent-driven-development" [shape=box];
"executing-plans" [shape=box];
"Manual execution or brainstorm first" [shape=box];
"Have implementation plan?" -> "Tasks mostly independent?" [label="yes"];
"Have implementation plan?" -> "Manual execution or brainstorm first" [label="no"];
"Tasks mostly independent?" -> "Stay in this session?" [label="yes"];
"Tasks mostly independent?" -> "Manual execution or brainstorm first" [label="no - tightly coupled"];
"Stay in this session?" -> "subagent-driven-development" [label="yes"];
"Stay in this session?" -> "executing-plans" [label="no - parallel session"];
}
**與。執行計劃(平行會議):**
- 同一會話(無上下文切換)
- 每個任務都有新的子代理(無上下文污染)
- 每項任務後進行兩階段審查:首先是規範合規性,然後是程式碼品質
- 更快的迭代(任務之間沒有人在循環)
## 流程
```dot
digraph process {
rankdir=TB;
subgraph cluster_per_task {
label="Per Task";
"Dispatch implementer subagent (./implementer-prompt.md)" [shape=box];
"Implementer subagent asks questions?" [shape=diamond];
"Answer questions, provide context" [shape=box];
"Implementer subagent implements, tests, commits, self-reviews" [shape=box];
"Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" [shape=box];
"Spec reviewer subagent confirms code matches spec?" [shape=diamond];
"Implementer subagent fixes spec gaps" [shape=box];
"Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [shape=box];
"Code quality reviewer subagent approves?" [shape=diamond];
"Implementer subagent fixes quality issues" [shape=box];
"Mark task complete in TodoWrite" [shape=box];
}
"Read plan, extract all tasks with full text, note context, create TodoWrite" [shape=box];
"More tasks remain?" [shape=diamond];
"Dispatch final code reviewer subagent for entire implementation" [shape=box];
"Use superpowers:finishing-a-development-branch" [shape=box style=filled fillcolor=lightgreen];
"Read plan, extract all tasks with full text, note context, create TodoWrite" -> "Dispatch implementer subagent (./implementer-prompt.md)";
"Dispatch implementer subagent (./implementer-prompt.md)" -> "Implementer subagent asks questions?";
"Implementer subagent asks questions?" -> "Answer questions, provide context" [label="yes"];
"Answer questions, provide context" -> "Dispatch implementer subagent (./implementer-prompt.md)";
"Implementer subagent asks questions?" -> "Implementer subagent implements, tests, commits, self-reviews" [label="no"];
"Implementer subagent implements, tests, commits, self-reviews" -> "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)";
"Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" -> "Spec reviewer subagent confirms code matches spec?";
"Spec reviewer subagent confirms code matches spec?" -> "Implementer subagent fixes spec gaps" [label="no"];
"Implementer subagent fixes spec gaps" -> "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" [label="re-review"];
"Spec reviewer subagent confirms code matches spec?" -> "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [label="yes"];
"Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" -> "Code quality reviewer subagent approves?";
"Code quality reviewer subagent approves?" -> "Implementer subagent fixes quality issues" [label="no"];
"Implementer subagent fixes quality issues" -> "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [label="re-review"];
"Code quality reviewer subagent approves?" -> "Mark task complete in TodoWrite" [label="yes"];
"Mark task complete in TodoWrite" -> "More tasks remain?";
"More tasks remain?" -> "Dispatch implementer subagent (./implementer-prompt.md)" [label="yes"];
"More tasks remain?" -> "Dispatch final code reviewer subagent for entire implementation" [label="no"];
"Dispatch final code reviewer subagent for entire implementation" -> "Use superpowers:finishing-a-development-branch";
}
Prompt template
./implementer-prompt.md- Dispatch implementer subagent./spec-reviewer-prompt.md- Dispatch spec compliance reviewer subagent./code-quality-reviewer-prompt.md- Dispatch code quality reviewer subagent
Example workflow
You: I'm using Subagent-Driven Development to execute this plan.
[Read plan file once: docs/plans/feature-plan.md]
[Extract all 5 tasks with full text and context]
[Create TodoWrite with all tasks]
Task 1: Hook installation script
[Get Task 1 text and context (already extracted)]
[Dispatch implementation subagent with full task text + context]
Implementer: "Before I begin - should the hook be installed at user or system level?"
You: "User level (~/.config/superpowers/hooks/)"
Implementer: "Got it. Implementing now..."
[Later] Implementer:
- Implemented install-hook command
- Added tests, 5/5 passing
- Self-review: Found I missed --force flag, added it
- Committed
[Dispatch spec compliance reviewer]
Spec reviewer: ✅ Spec compliant - all requirements met, nothing extra
[Get git SHAs, dispatch code quality reviewer]
Code reviewer: Strengths: Good test coverage, clean. Issues: None. Approved.
[Mark Task 1 complete]
Task 2: Recovery modes
[Get Task 2 text and context (already extracted)]
[Dispatch implementation subagent with full task text + context]
Implementer: [No questions, proceeds]
Implementer:
- Added verify/repair modes
- 8/8 tests passing
- Self-review: All good
- Committed
[Dispatch spec compliance reviewer]
Spec reviewer: ❌ Issues:
- Missing: Progress reporting (spec says "report every 100 items")
- Extra: Added --json flag (not requested)
[Implementer fixes issues]
Implementer: Removed --json flag, added progress reporting
[Spec reviewer reviews again]
Spec reviewer: ✅ Spec compliant now
[Dispatch code quality reviewer]
Code reviewer: Strengths: Solid. Issues (Important): Magic number (100)
[Implementer fixes]
Implementer: Extracted PROGRESS_INTERVAL constant
[Code reviewer reviews again]
Code reviewer: ✅ Approved
[Mark Task 2 complete]
...
[After all tasks]
[Dispatch final code-reviewer]
Final reviewer: All requirements met, ready to merge
Done!
Advantages
Vs. manual execution:
- Subagents naturally follow TDD
- Each task has fresh context (no confusion)
- Parallel safe (subagents do not interfere)
- Subagents can ask questions (before and during work)
Vs. executing the plan:
- Same session (no switching)
- Continuous progress (no waiting)
- Automated review checkpoints
Efficiency gains:
- No file read overhead (the controller provides the full text)
- The controller accurately plans the required context
- Subagents receive complete information up front
- Problems surface before work starts (rather than after)
Quality gates:
- Self-review before handoff catches problems
- Two-stage review: spec compliance, then code quality
- The review loop ensures fixes actually work
- Spec compliance prevents overbuilding/underbuilding
- Code quality ensures good implementation
Cost:
- More subagent calls (implementer + 2 reviewers per task)
- The controller does more preparation work (extract all tasks in advance)
- The review loop adds iterations
- But problems are found early (cheaper than debugging later)
Red flags
Never:
- Start implementation on the main/master branch with the user's explicit consent
- Skip review (spec compliance or code quality)
- Continue working on unresolved issues
- Dispatch multiple implementation subagents in parallel (conflicts)
- Have the subagent read the plan file (provide the full text instead)
- Skip setting the scene context (the subagent needs to know where the task fits)
- Ignore subagent questions (answer before continuing)
- Accept spec compliance as "close enough" (spec reviewer finds issues = not done)
- Skip the review loop (reviewer finds issues = implementer fixes = review again)
- Let the implementer's self-review replace actual review (both are needed)
- **Start code quality review before spec compliance is ✅** (wrong order)
- Move to the next task when either review has unresolved issues
If a subagent asks a question:
- Answer clearly and completely
- Provide additional context if needed
- Do not rush implementation
If reviewers find issues:
- The implementer (same subagent) fixes them
- Reviewer reviews again
- Repeat until approval is obtained
- Do not skip re-review
If the subagent task fails:
- Dispatch a fix subagent with specific instructions
- Do not attempt to fix manually (context pollution)
Integration
Required workflow skills:
- Superpowers: using-git-worktrees - Required: set up an isolated workspace before starting
- Superpowers: writing-plans - Create the plan that this skill executes
- superpowers:requesting-code-review - Plan code review template for reviewer subagent plans
- Superpowers: finishing-a-development-branch - Finish development after completing all tasks
Subagents should use:
- Superpowers: test-driven-development - Subagents follow TDD to execute each task
Alternative workflow:
- superpowers:executing-plans - For endpoint sessions instead of same-session execution