Refine Superpowers Lite execution workflow
This commit is contained in:
@@ -26,7 +26,7 @@ You MUST create a task for each of these items and complete them in order:
|
|||||||
3. **Ask clarifying questions** — one at a time, understand purpose/constraints/success criteria
|
3. **Ask clarifying questions** — one at a time, understand purpose/constraints/success criteria
|
||||||
4. **Propose 2-3 approaches** — with trade-offs and your recommendation
|
4. **Propose 2-3 approaches** — with trade-offs and your recommendation
|
||||||
5. **Present design** — in sections scaled to their complexity, get user approval after each section
|
5. **Present design** — in sections scaled to their complexity, get user approval after each section
|
||||||
6. **Write design doc** — save to `.superpowers-lite/specs/YYYY-MM-DD-<topic>-design.md` and keep it out of git
|
6. **Write design doc** — save to `.superpowers-lite/specs/YYYY-MM-DD-<topic>-design.md` using the project plan storage config
|
||||||
7. **Spec self-review** — quick inline check for placeholders, contradictions, ambiguity, scope (see below)
|
7. **Spec self-review** — quick inline check for placeholders, contradictions, ambiguity, scope (see below)
|
||||||
8. **User reviews written spec** — ask user to review the spec file before proceeding
|
8. **User reviews written spec** — ask user to review the spec file before proceeding
|
||||||
9. **Transition to implementation** — invoke writing-plans skill to create implementation plan
|
9. **Transition to implementation** — invoke writing-plans skill to create implementation plan
|
||||||
@@ -108,11 +108,15 @@ digraph brainstorming {
|
|||||||
|
|
||||||
**Documentation:**
|
**Documentation:**
|
||||||
|
|
||||||
- Before writing files, ensure `.superpowers-lite/` is listed in `.git/info/exclude` when the project is a git repository
|
- Before writing files, check whether `.superpowers-lite/` exists
|
||||||
|
- If it does not exist, ask whether Superpowers Lite plans/specs should be tracked by git for this project, then create `.superpowers-lite/config.json` with `planGitTracking` set to `"tracked"` or `"local"`
|
||||||
|
- If `.superpowers-lite/` exists but `.superpowers-lite/config.json` is missing, ask the same question once and create the config
|
||||||
|
- If `.superpowers-lite/config.json` already exists, follow it without asking again
|
||||||
|
- If `planGitTracking` is `"local"`, ensure `.superpowers-lite/` is listed in `.git/info/exclude`; if it is `"tracked"`, do not exclude it
|
||||||
- Write the validated design (spec) to `.superpowers-lite/specs/YYYY-MM-DD-<topic>-design.md`
|
- Write the validated design (spec) to `.superpowers-lite/specs/YYYY-MM-DD-<topic>-design.md`
|
||||||
- (User preferences for spec location override this default)
|
- (User preferences for spec location override this default)
|
||||||
- Use elements-of-style:writing-clearly-and-concisely skill if available
|
- Use elements-of-style:writing-clearly-and-concisely skill if available
|
||||||
- Do not commit generated design documents unless the user explicitly asks
|
- Commit or leave generated design documents uncommitted according to the user's normal workflow and the project plan storage config
|
||||||
|
|
||||||
**Spec Self-Review:**
|
**Spec Self-Review:**
|
||||||
After writing the spec document, look at it with fresh eyes:
|
After writing the spec document, look at it with fresh eyes:
|
||||||
@@ -127,7 +131,7 @@ Fix any issues inline. No need to re-review — just fix and move on.
|
|||||||
**User Review Gate:**
|
**User Review Gate:**
|
||||||
After the spec review loop passes, ask the user to review the written spec before proceeding:
|
After the spec review loop passes, ask the user to review the written spec before proceeding:
|
||||||
|
|
||||||
> "Spec written to `<path>` as a local, untracked artifact. Please review it and let me know if you want to make any changes before we start writing out the implementation plan."
|
> "Spec written to `<path>`. Please review it and let me know if you want to make any changes before we start writing out the implementation plan."
|
||||||
|
|
||||||
Wait for the user's response. If they request changes, make them and re-run the spec review loop. Only proceed once the user approves.
|
Wait for the user's response. If they request changes, make them and re-run the spec review loop. Only proceed once the user approves.
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ description: Manual-only skill. Activate only after an explicit user request for
|
|||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Load plan, review critically, group tasks into phases when useful, execute all phases, report when complete.
|
Load plan, review critically, execute every task in the current branch in one run, perform one overall code review, then report when complete.
|
||||||
|
|
||||||
**Announce at start:** "I'm using the executing-plans skill to implement this plan."
|
**Announce at start:** "I'm using the executing-plans skill to implement this plan."
|
||||||
|
|
||||||
@@ -23,26 +23,38 @@ Load plan, review critically, group tasks into phases when useful, execute all p
|
|||||||
5. If concerns: Raise them with your human partner before starting
|
5. If concerns: Raise them with your human partner before starting
|
||||||
6. If no concerns: Create TodoWrite and proceed
|
6. If no concerns: Create TodoWrite and proceed
|
||||||
|
|
||||||
### Step 2: Group Tasks Into Phases
|
### Step 2: Prepare a Single Run
|
||||||
|
|
||||||
Before implementation, decide whether adjacent tasks should run as one phase:
|
Before implementation, organize the work for one uninterrupted run:
|
||||||
|
|
||||||
- Group tasks that touch the same files or complete one coherent behavior
|
- Preserve the plan's task checklist for progress tracking
|
||||||
- Keep tasks separate when they are independent, risky, or easier to review alone
|
- Use phases only as an execution grouping aid, not as review checkpoints
|
||||||
- Preserve the plan's task checklist, but use phase-level review checkpoints
|
- Do not create or switch to a worktree unless the user explicitly asks
|
||||||
|
|
||||||
### Step 3: Execute Phases
|
### Step 3: Execute All Tasks
|
||||||
|
|
||||||
For each phase:
|
Complete every task from the plan in the current branch:
|
||||||
1. Mark as in_progress
|
|
||||||
|
1. Mark the active task or phase as in_progress
|
||||||
2. Follow each included task step exactly (plan has bite-sized steps)
|
2. Follow each included task step exactly (plan has bite-sized steps)
|
||||||
3. Run verifications specified by the included tasks
|
3. Run verifications specified by the included tasks
|
||||||
4. Request or perform one review for the whole phase
|
4. Mark tasks completed as they finish
|
||||||
5. Mark all included tasks as completed only after the phase review is addressed
|
5. Continue until all tasks are implemented and verified
|
||||||
|
|
||||||
### Step 4: Complete Development
|
Do not request code review between tasks or phases by default. Save review for Step 4.
|
||||||
|
|
||||||
After all tasks complete and verified:
|
### Step 4: Overall Code Review
|
||||||
|
|
||||||
|
After all tasks are implemented and verified:
|
||||||
|
|
||||||
|
1. Use superpowers-lite:requesting-code-review for one overall review of the full implementation
|
||||||
|
2. Fix Critical and Important findings
|
||||||
|
3. Re-run relevant verification
|
||||||
|
4. Re-review if substantial fixes were required
|
||||||
|
|
||||||
|
### Step 5: Complete Development
|
||||||
|
|
||||||
|
After all tasks complete, verified, and reviewed:
|
||||||
- Announce: "I'm using the finishing-a-development-branch skill to complete this work."
|
- Announce: "I'm using the finishing-a-development-branch skill to complete this work."
|
||||||
- **REQUIRED SUB-SKILL:** Use superpowers-lite:finishing-a-development-branch
|
- **REQUIRED SUB-SKILL:** Use superpowers-lite:finishing-a-development-branch
|
||||||
- Follow that skill to verify tests, present options, execute choice
|
- Follow that skill to verify tests, present options, execute choice
|
||||||
@@ -69,6 +81,7 @@ After all tasks complete and verified:
|
|||||||
- Review plan critically first
|
- Review plan critically first
|
||||||
- Follow plan steps exactly
|
- Follow plan steps exactly
|
||||||
- Don't skip verifications
|
- Don't skip verifications
|
||||||
|
- Do one overall code review after all tasks are done
|
||||||
- Reference skills when plan says to
|
- Reference skills when plan says to
|
||||||
- Stop when blocked, don't guess
|
- Stop when blocked, don't guess
|
||||||
- Work in the current branch by default; do not create or switch to a worktree unless the user explicitly asks
|
- Work in the current branch by default; do not create or switch to a worktree unless the user explicitly asks
|
||||||
@@ -78,6 +91,7 @@ After all tasks complete and verified:
|
|||||||
|
|
||||||
**Required workflow skills:**
|
**Required workflow skills:**
|
||||||
- **superpowers-lite:writing-plans** - Creates the plan this skill executes
|
- **superpowers-lite:writing-plans** - Creates the plan this skill executes
|
||||||
|
- **superpowers-lite:requesting-code-review** - Overall review after all tasks are complete
|
||||||
- **superpowers-lite:finishing-a-development-branch** - Complete development after all tasks
|
- **superpowers-lite:finishing-a-development-branch** - Complete development after all tasks
|
||||||
|
|
||||||
**Optional workflow skills:**
|
**Optional workflow skills:**
|
||||||
|
|||||||
@@ -7,13 +7,13 @@ description: Manual-only skill. Activate only after an explicit user request for
|
|||||||
|
|
||||||
Dispatch a code reviewer subagent to catch issues before they cascade. The reviewer gets precisely crafted context for evaluation — never your session's history. This keeps the reviewer focused on the work product, not your thought process, and preserves your own context for continued work.
|
Dispatch a code reviewer subagent to catch issues before they cascade. The reviewer gets precisely crafted context for evaluation — never your session's history. This keeps the reviewer focused on the work product, not your thought process, and preserves your own context for continued work.
|
||||||
|
|
||||||
**Core principle:** Review early, review often.
|
**Core principle:** In Superpowers Lite default plan execution, review once after the full implementation is complete. Request earlier reviews only when the user asks, risk is unusually high, or you are stuck.
|
||||||
|
|
||||||
## When to Request Review
|
## When to Request Review
|
||||||
|
|
||||||
**Mandatory:**
|
**Mandatory:**
|
||||||
- After each phase in subagent-driven development
|
- After completing all tasks in an implementation plan
|
||||||
- After completing major feature
|
- After completing a major feature
|
||||||
- Before merge to main
|
- Before merge to main
|
||||||
|
|
||||||
**Optional but valuable:**
|
**Optional but valuable:**
|
||||||
@@ -48,16 +48,16 @@ Use Task tool with `general-purpose` type, fill template at `code-reviewer.md`
|
|||||||
## Example
|
## Example
|
||||||
|
|
||||||
```
|
```
|
||||||
[Just completed Phase 2: Add verification function and CLI wiring]
|
[Just completed all tasks in .superpowers-lite/plans/deployment-plan.md]
|
||||||
|
|
||||||
You: Let me request code review before proceeding.
|
You: Let me request the overall code review.
|
||||||
|
|
||||||
BASE_SHA=$(git log --oneline | grep "Task 1" | head -1 | awk '{print $1}')
|
BASE_SHA=<commit-before-plan-execution>
|
||||||
HEAD_SHA=$(git rev-parse HEAD)
|
HEAD_SHA=$(git rev-parse HEAD)
|
||||||
|
|
||||||
[Dispatch code reviewer subagent]
|
[Dispatch code reviewer subagent]
|
||||||
DESCRIPTION: Added verifyIndex(), repairIndex(), and CLI wiring
|
DESCRIPTION: Completed deployment verification workflow
|
||||||
PLAN_OR_REQUIREMENTS: Phase 2 from .superpowers-lite/plans/deployment-plan.md
|
PLAN_OR_REQUIREMENTS: Full plan from .superpowers-lite/plans/deployment-plan.md
|
||||||
BASE_SHA: a7981ec
|
BASE_SHA: a7981ec
|
||||||
HEAD_SHA: 3df7661
|
HEAD_SHA: 3df7661
|
||||||
|
|
||||||
@@ -69,19 +69,19 @@ HEAD_SHA=$(git rev-parse HEAD)
|
|||||||
Assessment: Ready to proceed
|
Assessment: Ready to proceed
|
||||||
|
|
||||||
You: [Fix progress indicators]
|
You: [Fix progress indicators]
|
||||||
[Continue to Task 3]
|
[Re-run relevant verification, re-review if substantial]
|
||||||
```
|
```
|
||||||
|
|
||||||
## Integration with Workflows
|
## Integration with Workflows
|
||||||
|
|
||||||
**Subagent-Driven Development:**
|
**Subagent-Driven Development:**
|
||||||
- Review after each phase, which may contain one or more related tasks
|
- Default to one overall review after all phases are complete
|
||||||
- Catch issues before they compound
|
- Use phase reviews only when the user asks or a phase is unusually risky
|
||||||
- Fix before moving to next task
|
- Fix Critical and Important findings before finishing
|
||||||
|
|
||||||
**Executing Plans:**
|
**Executing Plans:**
|
||||||
- Review after each task or at natural checkpoints
|
- Review once after all tasks are implemented and verified
|
||||||
- Get feedback, apply, continue
|
- Get feedback, apply fixes, re-run relevant verification
|
||||||
|
|
||||||
**Ad-Hoc Development:**
|
**Ad-Hoc Development:**
|
||||||
- Review before merge
|
- Review before merge
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ description: Manual-only skill. Activate only after an explicit user request for
|
|||||||
|
|
||||||
# Subagent-Driven Development
|
# Subagent-Driven Development
|
||||||
|
|
||||||
Execute plan by dispatching fresh subagent per phase, where a phase may contain one or more related tasks. Run a two-stage review after each phase: spec compliance review first, then code quality review.
|
Execute plan in the current branch, dispatching implementation help as needed, then run one overall review after all phases are complete.
|
||||||
|
|
||||||
**Why subagents:** You delegate tasks to specialized agents with isolated context. By precisely crafting their instructions and context, you ensure they stay focused and succeed at their task. They should never inherit your session's context or history — you construct exactly what they need. This also preserves your own context for coordination work.
|
**Why subagents:** You delegate tasks to specialized agents with isolated context. By precisely crafting their instructions and context, you ensure they stay focused and succeed at their task. They should never inherit your session's context or history — you construct exactly what they need. This also preserves your own context for coordination work.
|
||||||
|
|
||||||
**Core principle:** Fresh subagent per coherent phase + two-stage review (spec then quality) = high quality without review overhead on every tiny task
|
**Core principle:** Complete the full plan in one current-branch run, then review the whole implementation once. Use phase reviews only when the user asks or risk justifies the overhead.
|
||||||
|
|
||||||
**Continuous execution:** Do not pause to check in with your human partner between phases unless blocked. Execute all tasks from the plan in the current branch without stopping. The only reasons to stop are: current branch is `main` or `master`, BLOCKED status you cannot resolve, ambiguity that genuinely prevents progress, or all tasks complete. "Should I continue?" prompts and progress summaries waste their time — they asked you to execute the plan, so execute it.
|
**Continuous execution:** Do not pause to check in with your human partner between phases unless blocked. Execute all tasks from the plan in the current branch without stopping. The only reasons to stop are: current branch is `main` or `master`, BLOCKED status you cannot resolve, ambiguity that genuinely prevents progress, or all tasks complete. "Should I continue?" prompts and progress summaries waste their time — they asked you to execute the plan, so execute it.
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ digraph when_to_use {
|
|||||||
**vs. Executing Plans (parallel session):**
|
**vs. Executing Plans (parallel session):**
|
||||||
- Same session (no context switch)
|
- Same session (no context switch)
|
||||||
- Fresh subagent per phase (no context pollution)
|
- Fresh subagent per phase (no context pollution)
|
||||||
- Two-stage review after each phase: spec compliance first, then code quality
|
- One overall review after all phases are complete by default
|
||||||
- Faster iteration (no human-in-loop between tasks)
|
- Faster iteration (no human-in-loop between tasks)
|
||||||
|
|
||||||
## Phase Grouping
|
## Phase Grouping
|
||||||
@@ -49,6 +49,7 @@ Before dispatching implementers, group tasks into phases:
|
|||||||
- Keep a task as its own phase when it is risky, broad, independent, or likely to need a focused review
|
- Keep a task as its own phase when it is risky, broad, independent, or likely to need a focused review
|
||||||
- Never group tasks just to hide uncertainty; if grouping makes requirements harder to verify, split the phase
|
- Never group tasks just to hide uncertainty; if grouping makes requirements harder to verify, split the phase
|
||||||
- Record phase membership in TodoWrite so progress is visible at both phase and task level
|
- Record phase membership in TodoWrite so progress is visible at both phase and task level
|
||||||
|
- Do not review between phases by default; finish all phases first, then review the whole implementation
|
||||||
|
|
||||||
## The Process
|
## The Process
|
||||||
|
|
||||||
@@ -62,18 +63,14 @@ digraph process {
|
|||||||
"Implementer subagent asks questions?" [shape=diamond];
|
"Implementer subagent asks questions?" [shape=diamond];
|
||||||
"Answer questions, provide context" [shape=box];
|
"Answer questions, provide context" [shape=box];
|
||||||
"Implementer subagent implements, tests, commits, self-reviews" [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 phase tasks complete in TodoWrite" [shape=box];
|
"Mark phase tasks complete in TodoWrite" [shape=box];
|
||||||
}
|
}
|
||||||
|
|
||||||
"Read plan, extract all tasks with full text, group into phases, note context, create TodoWrite" [shape=box];
|
"Read plan, extract all tasks with full text, group into phases, note context, create TodoWrite" [shape=box];
|
||||||
"More phases remain?" [shape=diamond];
|
"More phases remain?" [shape=diamond];
|
||||||
"Dispatch final code reviewer subagent for entire implementation" [shape=box];
|
"Dispatch final code reviewer subagent for entire implementation" [shape=box];
|
||||||
|
"Fix Critical/Important findings and re-run verification" [shape=box];
|
||||||
|
"Final review approved?" [shape=diamond];
|
||||||
"Use superpowers-lite:finishing-a-development-branch" [shape=box style=filled fillcolor=lightgreen];
|
"Use superpowers-lite:finishing-a-development-branch" [shape=box style=filled fillcolor=lightgreen];
|
||||||
|
|
||||||
"Read plan, extract all tasks with full text, group into phases, note context, create TodoWrite" -> "Dispatch implementer subagent (./implementer-prompt.md)";
|
"Read plan, extract all tasks with full text, group into phases, note context, create TodoWrite" -> "Dispatch implementer subagent (./implementer-prompt.md)";
|
||||||
@@ -81,19 +78,14 @@ digraph process {
|
|||||||
"Implementer subagent asks questions?" -> "Answer questions, provide context" [label="yes"];
|
"Implementer subagent asks questions?" -> "Answer questions, provide context" [label="yes"];
|
||||||
"Answer questions, provide context" -> "Dispatch implementer subagent (./implementer-prompt.md)";
|
"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 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)";
|
"Implementer subagent implements, tests, commits, self-reviews" -> "Mark phase tasks complete in TodoWrite";
|
||||||
"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 phase tasks complete in TodoWrite" [label="yes"];
|
|
||||||
"Mark phase tasks complete in TodoWrite" -> "More phases remain?";
|
"Mark phase tasks complete in TodoWrite" -> "More phases remain?";
|
||||||
"More phases remain?" -> "Dispatch implementer subagent (./implementer-prompt.md)" [label="yes"];
|
"More phases remain?" -> "Dispatch implementer subagent (./implementer-prompt.md)" [label="yes"];
|
||||||
"More phases remain?" -> "Dispatch final code reviewer subagent for entire implementation" [label="no"];
|
"More phases remain?" -> "Dispatch final code reviewer subagent for entire implementation" [label="no"];
|
||||||
"Dispatch final code reviewer subagent for entire implementation" -> "Use superpowers-lite:finishing-a-development-branch";
|
"Dispatch final code reviewer subagent for entire implementation" -> "Final review approved?";
|
||||||
|
"Final review approved?" -> "Fix Critical/Important findings and re-run verification" [label="no"];
|
||||||
|
"Fix Critical/Important findings and re-run verification" -> "Dispatch final code reviewer subagent for entire implementation" [label="re-review if substantial"];
|
||||||
|
"Final review approved?" -> "Use superpowers-lite:finishing-a-development-branch" [label="yes"];
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -116,9 +108,9 @@ Use the least powerful model that can handle each role to conserve cost and incr
|
|||||||
|
|
||||||
Implementer subagents report one of four statuses. Handle each appropriately:
|
Implementer subagents report one of four statuses. Handle each appropriately:
|
||||||
|
|
||||||
**DONE:** Proceed to spec compliance review.
|
**DONE:** Mark the phase complete and continue to the next phase. Do not review yet unless the user explicitly requested phase reviews.
|
||||||
|
|
||||||
**DONE_WITH_CONCERNS:** The implementer completed the work but flagged doubts. Read the concerns before proceeding. If the concerns are about correctness or scope, address them before review. If they're observations (e.g., "this file is getting large"), note them and proceed to review.
|
**DONE_WITH_CONCERNS:** The implementer completed the work but flagged doubts. Read the concerns before proceeding. If the concerns affect correctness or scope, address them before moving to the next phase. If they're observations (e.g., "this file is getting large"), note them and continue; the overall review will evaluate the full implementation.
|
||||||
|
|
||||||
**NEEDS_CONTEXT:** The implementer needs information that wasn't provided. Provide the missing context and re-dispatch.
|
**NEEDS_CONTEXT:** The implementer needs information that wasn't provided. Provide the missing context and re-dispatch.
|
||||||
|
|
||||||
@@ -133,8 +125,8 @@ Implementer subagents report one of four statuses. Handle each appropriately:
|
|||||||
## Prompt Templates
|
## Prompt Templates
|
||||||
|
|
||||||
- `./implementer-prompt.md` - Dispatch implementer subagent
|
- `./implementer-prompt.md` - Dispatch implementer subagent
|
||||||
- `./spec-reviewer-prompt.md` - Dispatch spec compliance reviewer subagent
|
- `./spec-reviewer-prompt.md` - Optional phase-level spec review when explicitly requested or unusually risky
|
||||||
- `./code-quality-reviewer-prompt.md` - Dispatch code quality reviewer subagent
|
- `./code-quality-reviewer-prompt.md` - Overall code quality review after all phases are complete
|
||||||
|
|
||||||
## Example Workflow
|
## Example Workflow
|
||||||
|
|
||||||
@@ -162,12 +154,6 @@ Implementer: "Got it. Implementing now..."
|
|||||||
- Self-review: Found I missed --force flag, added it
|
- Self-review: Found I missed --force flag, added it
|
||||||
- Committed
|
- 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 Phase 1 tasks complete]
|
[Mark Phase 1 tasks complete]
|
||||||
|
|
||||||
Phase 2: Recovery modes and CLI wiring
|
Phase 2: Recovery modes and CLI wiring
|
||||||
@@ -182,32 +168,18 @@ Implementer:
|
|||||||
- Self-review: All good
|
- Self-review: All good
|
||||||
- Committed
|
- 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 Phase 2 tasks complete]
|
[Mark Phase 2 tasks complete]
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|
||||||
[After all tasks]
|
[After all tasks]
|
||||||
[Dispatch final code-reviewer]
|
[Dispatch final code-reviewer]
|
||||||
|
Final reviewer:
|
||||||
|
- Important: Missing progress reporting (spec says "report every 100 items")
|
||||||
|
- Minor: Magic number (100)
|
||||||
|
|
||||||
|
[Fix findings, rerun relevant verification]
|
||||||
|
[Re-review if substantial fixes were required]
|
||||||
Final reviewer: All requirements met, ready to merge
|
Final reviewer: All requirements met, ready to merge
|
||||||
|
|
||||||
Done!
|
Done!
|
||||||
@@ -224,7 +196,7 @@ Done!
|
|||||||
**vs. Executing Plans:**
|
**vs. Executing Plans:**
|
||||||
- Same session (no handoff)
|
- Same session (no handoff)
|
||||||
- Continuous progress (no waiting)
|
- Continuous progress (no waiting)
|
||||||
- Review checkpoints automatic
|
- One overall review after all implementation work
|
||||||
|
|
||||||
**Efficiency gains:**
|
**Efficiency gains:**
|
||||||
- No file reading overhead (controller provides full text)
|
- No file reading overhead (controller provides full text)
|
||||||
@@ -234,32 +206,29 @@ Done!
|
|||||||
|
|
||||||
**Quality gates:**
|
**Quality gates:**
|
||||||
- Self-review catches issues before handoff
|
- Self-review catches issues before handoff
|
||||||
- Two-stage review: spec compliance, then code quality
|
- Overall code review checks spec compliance and code quality after the full implementation exists
|
||||||
- Review loops ensure fixes actually work
|
- Review loops ensure substantial fixes actually work
|
||||||
- Spec compliance prevents over/under-building
|
|
||||||
- Code quality ensures implementation is well-built
|
|
||||||
|
|
||||||
**Cost:**
|
**Cost:**
|
||||||
- More subagent invocations than inline work (implementer + 2 reviewers per phase)
|
- Fewer review subagent invocations than phase-by-phase review
|
||||||
- Controller does more prep work (extracting all tasks upfront)
|
- Controller does more prep work (extracting all tasks upfront)
|
||||||
- Review loops add iterations
|
- Final review loops may add iterations
|
||||||
- But catches issues early (cheaper than debugging later)
|
- But catches issues early (cheaper than debugging later)
|
||||||
|
|
||||||
## Red Flags
|
## Red Flags
|
||||||
|
|
||||||
**Never:**
|
**Never:**
|
||||||
- Start implementation on `main` or `master`
|
- Start implementation on `main` or `master`
|
||||||
- Skip phase reviews (spec compliance OR code quality)
|
- Skip the final overall code review
|
||||||
- Proceed with unfixed issues
|
- Proceed with unfixed issues
|
||||||
- Dispatch multiple implementation subagents in parallel when phases share files or state
|
- Dispatch multiple implementation subagents in parallel when phases share files or state
|
||||||
- Make subagent read plan file (provide full text instead)
|
- Make subagent read plan file (provide full text instead)
|
||||||
- Skip scene-setting context (subagent needs to understand where task fits)
|
- Skip scene-setting context (subagent needs to understand where task fits)
|
||||||
- Ignore subagent questions (answer before letting them proceed)
|
- Ignore subagent questions (answer before letting them proceed)
|
||||||
- Accept "close enough" on spec compliance (spec reviewer found issues = not done)
|
- Accept "close enough" on final review findings
|
||||||
- Skip review loops (reviewer found issues = implementer fixes = review again)
|
- Skip review loops for substantial fixes
|
||||||
- Let implementer self-review replace actual review (both are needed)
|
- Let implementer self-review replace actual review (both are needed)
|
||||||
- **Start code quality review before spec compliance is ✅** (wrong order)
|
- Treat phase self-review as the final code review
|
||||||
- Move to next phase while either review has open issues
|
|
||||||
|
|
||||||
**If subagent asks questions:**
|
**If subagent asks questions:**
|
||||||
- Answer clearly and completely
|
- Answer clearly and completely
|
||||||
@@ -267,10 +236,9 @@ Done!
|
|||||||
- Don't rush them into implementation
|
- Don't rush them into implementation
|
||||||
|
|
||||||
**If reviewer finds issues:**
|
**If reviewer finds issues:**
|
||||||
- Implementer (same subagent) fixes them
|
- Fix Critical and Important issues
|
||||||
- Reviewer reviews again
|
- Re-run relevant verification
|
||||||
- Repeat until approved
|
- Re-review if fixes were substantial
|
||||||
- Don't skip the re-review
|
|
||||||
|
|
||||||
**If subagent fails a phase:**
|
**If subagent fails a phase:**
|
||||||
- Dispatch fix subagent with specific instructions
|
- Dispatch fix subagent with specific instructions
|
||||||
@@ -280,7 +248,7 @@ Done!
|
|||||||
|
|
||||||
**Required workflow skills:**
|
**Required workflow skills:**
|
||||||
- **superpowers-lite:writing-plans** - Creates the plan this skill executes
|
- **superpowers-lite:writing-plans** - Creates the plan this skill executes
|
||||||
- **superpowers-lite:requesting-code-review** - Code review template for reviewer subagents
|
- **superpowers-lite:requesting-code-review** - Overall code review after all phases are complete
|
||||||
- **superpowers-lite:finishing-a-development-branch** - Complete development after all tasks
|
- **superpowers-lite:finishing-a-development-branch** - Complete development after all tasks
|
||||||
|
|
||||||
**Optional workflow skills:**
|
**Optional workflow skills:**
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
# Code Quality Reviewer Prompt Template
|
# Code Quality Reviewer Prompt Template
|
||||||
|
|
||||||
Use this template when dispatching a code quality reviewer subagent.
|
Use this template when dispatching the overall code quality reviewer after all phases are complete.
|
||||||
|
|
||||||
**Purpose:** Verify implementation is well-built (clean, tested, maintainable)
|
**Purpose:** Verify implementation is well-built (clean, tested, maintainable)
|
||||||
|
|
||||||
**Only dispatch after phase spec compliance review passes.**
|
**Dispatch after all implementation phases are complete and the task-level verifications have passed.**
|
||||||
|
|
||||||
```
|
```
|
||||||
Task tool (general-purpose):
|
Task tool (general-purpose):
|
||||||
Use template at requesting-code-review/code-reviewer.md
|
Use template at requesting-code-review/code-reviewer.md
|
||||||
|
|
||||||
DESCRIPTION: [phase summary, from implementer's report]
|
DESCRIPTION: [overall implementation summary]
|
||||||
PLAN_OR_REQUIREMENTS: Phase N from [plan-file]
|
PLAN_OR_REQUIREMENTS: Full implementation plan from [plan-file]
|
||||||
BASE_SHA: [commit before phase]
|
BASE_SHA: [commit before executing the plan]
|
||||||
HEAD_SHA: [current commit]
|
HEAD_SHA: [current commit]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Spec Compliance Reviewer Prompt Template
|
# Spec Compliance Reviewer Prompt Template
|
||||||
|
|
||||||
Use this template when dispatching a spec compliance reviewer subagent after a phase implementation.
|
Use this template only when explicitly requesting an optional phase-level spec compliance review.
|
||||||
|
|
||||||
**Purpose:** Verify implementer built what was requested (nothing more, nothing less)
|
**Purpose:** Verify implementer built what was requested (nothing more, nothing less)
|
||||||
|
|
||||||
|
|||||||
@@ -65,9 +65,19 @@ After the user opts in: "Fix this bug" → debugging first, then domain-specific
|
|||||||
|
|
||||||
The skill itself tells you which.
|
The skill itself tells you which.
|
||||||
|
|
||||||
## Local Artifacts
|
## Project Plan Storage
|
||||||
|
|
||||||
Generated design specs and implementation plans are local working artifacts. Keep them outside git by default under `.superpowers-lite/`, and ensure that path is ignored via `.git/info/exclude` before writing files.
|
Generated design specs and implementation plans live under `.superpowers-lite/`.
|
||||||
|
|
||||||
|
On first use in a project, if `.superpowers-lite/` does not exist, ask the user whether Superpowers Lite plans/specs should be tracked by git for this project. If `.superpowers-lite/` exists but `.superpowers-lite/config.json` is missing, ask the same question once and create the config. Save the answer in `.superpowers-lite/config.json`:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"planGitTracking": "local"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Use `"tracked"` when the user wants plans/specs in git. Use `"local"` when they should stay local. For later sessions, do not ask again; follow the local config. If the config says `"local"`, ensure `.superpowers-lite/` is listed in `.git/info/exclude` before writing plan/spec files. If it says `"tracked"`, do not add `.superpowers-lite/` to `.git/info/exclude`.
|
||||||
|
|
||||||
## User Instructions
|
## User Instructions
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,9 @@ Assume they are a skilled developer, but know almost nothing about our toolset o
|
|||||||
**Save plans to:** `.superpowers-lite/plans/YYYY-MM-DD-<feature-name>-implementation.md`
|
**Save plans to:** `.superpowers-lite/plans/YYYY-MM-DD-<feature-name>-implementation.md`
|
||||||
- (User preferences for plan location override this default)
|
- (User preferences for plan location override this default)
|
||||||
|
|
||||||
**Git tracking:** Generated design and implementation plans are local artifacts, not project deliverables. Before saving a plan in a git repository, ensure `.superpowers-lite/` is listed in `.git/info/exclude`. Do not add or commit generated plans unless the user explicitly asks.
|
**Project plan storage:** Before saving a plan, check whether `.superpowers-lite/` exists. If it does not, ask whether Superpowers Lite plans/specs should be tracked by git for this project, then create `.superpowers-lite/config.json` with `planGitTracking` set to `"tracked"` or `"local"`. If `.superpowers-lite/` exists but `.superpowers-lite/config.json` is missing, ask the same question once and create the config. If the config already exists, follow it without asking again. If `planGitTracking` is `"local"`, ensure `.superpowers-lite/` is listed in `.git/info/exclude`; if it is `"tracked"`, do not exclude it.
|
||||||
|
|
||||||
|
**Diagrams:** If the plan needs diagrams, prefer PlantUML. Use fenced `plantuml` blocks with complete `@startuml` / `@enduml` content. Use Mermaid only if the user explicitly asks for it or PlantUML is a poor fit.
|
||||||
|
|
||||||
## Scope Check
|
## Scope Check
|
||||||
|
|
||||||
@@ -44,7 +46,7 @@ This structure informs the task decomposition. Each task should produce self-con
|
|||||||
- "Run the tests and make sure they pass" - step
|
- "Run the tests and make sure they pass" - step
|
||||||
- "Commit" - step
|
- "Commit" - step
|
||||||
|
|
||||||
Execution may group several tasks into one phase when the tasks share files, are tightly coupled, or are cheaper to review together. Preserve bite-sized task detail in the plan, but add phase suggestions when grouping is obvious.
|
Execution should complete all tasks in the current branch in one run, then perform one overall code review. You may group tasks into phases for readability, but phases are not review checkpoints by default.
|
||||||
|
|
||||||
## Plan Document Header
|
## Plan Document Header
|
||||||
|
|
||||||
@@ -53,7 +55,7 @@ Execution may group several tasks into one phase when the tasks share files, are
|
|||||||
```markdown
|
```markdown
|
||||||
# [Feature Name] Implementation Plan
|
# [Feature Name] Implementation Plan
|
||||||
|
|
||||||
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers-lite:subagent-driven-development (recommended) or superpowers-lite:executing-plans to implement this plan. Steps use checkbox (`- [ ]`) syntax for tracking, and tasks may be grouped into phases for execution and review.
|
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers-lite:executing-plans by default, or superpowers-lite:subagent-driven-development only when explicitly requested. Steps use checkbox (`- [ ]`) syntax for tracking, and tasks may be grouped into phases for execution readability. Complete all tasks first, then run one overall code review.
|
||||||
|
|
||||||
**Goal:** [One sentence describing what this builds]
|
**Goal:** [One sentence describing what this builds]
|
||||||
|
|
||||||
@@ -61,7 +63,7 @@ Execution may group several tasks into one phase when the tasks share files, are
|
|||||||
|
|
||||||
**Tech Stack:** [Key technologies/libraries]
|
**Tech Stack:** [Key technologies/libraries]
|
||||||
|
|
||||||
**Suggested Phases:** [Group related tasks for execution/review, or "One task per phase" if no grouping is useful]
|
**Suggested Phases:** [Optional grouping for execution readability, or "Single run" if no grouping is useful]
|
||||||
|
|
||||||
---
|
---
|
||||||
```
|
```
|
||||||
@@ -141,18 +143,18 @@ If you find issues, fix them inline. No need to re-review — just fix and move
|
|||||||
|
|
||||||
After saving the plan, offer execution choice:
|
After saving the plan, offer execution choice:
|
||||||
|
|
||||||
**"Plan complete and saved to `.superpowers-lite/plans/<filename>.md` as a local, untracked artifact. Two execution options:**
|
**"Plan complete and saved to `.superpowers-lite/plans/<filename>.md`. Default execution is a single current-branch run followed by one overall code review."**
|
||||||
|
|
||||||
**1. Subagent-Driven (recommended)** - I dispatch a fresh subagent per phase, then run one review loop for that phase
|
**1. Execute Now (recommended)** - Complete all tasks in the current branch, then run one final code review
|
||||||
|
|
||||||
**2. Inline Execution** - Execute tasks in this session using executing-plans, batch tasks into phases with review checkpoints
|
**2. Subagent-Driven** - Use subagents for implementation/review only if you explicitly want that workflow
|
||||||
|
|
||||||
**Which approach?"**
|
**Which approach?"**
|
||||||
|
|
||||||
|
**If Execute Now chosen:**
|
||||||
|
- **REQUIRED SUB-SKILL:** Use superpowers-lite:executing-plans
|
||||||
|
- Complete all tasks, then one code review
|
||||||
|
|
||||||
**If Subagent-Driven chosen:**
|
**If Subagent-Driven chosen:**
|
||||||
- **REQUIRED SUB-SKILL:** Use superpowers-lite:subagent-driven-development
|
- **REQUIRED SUB-SKILL:** Use superpowers-lite:subagent-driven-development
|
||||||
- Fresh subagent per phase + two-stage review
|
- Complete all phases, then one overall review unless the user asks for phase reviews
|
||||||
|
|
||||||
**If Inline Execution chosen:**
|
|
||||||
- **REQUIRED SUB-SKILL:** Use superpowers-lite:executing-plans
|
|
||||||
- Batch execution with checkpoints for review
|
|
||||||
|
|||||||
Reference in New Issue
Block a user