Help us improve
Share bugs, ideas, or general feedback.
From lighterpowers
Use when executing implementation plans with human-in-loop batch checkpoints between tasks
npx claudepluginhub bradwindy/lighterpowersHow this skill is triggered — by the user, by Claude, or both
Slash command
/lighterpowers:batch-developmentThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Execute plans in batches with human checkpoints between each batch.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
Execute plans in batches with human checkpoints between each batch.
Core principle: Human stays in control. Execute N tasks, pause for feedback, repeat.
## Requirementsdocs/lighterpowers/plans/feature.md)--batch-size=N: Number of tasks per batch (default: 3)Load Plan -> Pre-Execution Setup -> Execute Batch (N tasks)
-> Batch Verification Gate -> Report & Wait for Feedback
-> More tasks? -> (yes) Execute Batch -> ...
-> (no) Completion (summary + user decision)
These offers are presented before the task loop. User decides whether to execute each.
### Pre-Execution VerificationBefore starting task loop, verify:
Skipping required offers results in incomplete setup. User can decline any offer - the requirement is presentation, not execution.
Check if on main/master/develop:
git branch --show-current
If on base branch, dispatch issue-tracking agent:
Task(description: "Get branch convention",
prompt: "Operation: get-branch-convention
Context: [plan goal/primary issue]",
model: "haiku",
subagent_type: "general-purpose")
Present offer to user:
AskUserQuestion(
questions: [{
question: "Create this branch?",
header: "Branch",
options: [
{label: "Yes", description: "Create branch: feature/PROJ-123-add-user-auth"},
{label: "Modify", description: "Let me specify a different branch name"},
{label: "Skip", description: "Don't create a branch, stay on current"}
],
multiSelect: false
}]
)
Only execute after user approval via AskUserQuestion response.
If primary issue identified (from plan header, branch name, or discovery), dispatch issue-tracking agent:
Task(description: "Prepare status update",
prompt: "Operation: update-status
Issue: [primary issue ID]
New status: in-progress",
model: "haiku",
subagent_type: "general-purpose")
Present offer:
AskUserQuestion(
questions: [{
question: "Update issue PROJ-123 status to in-progress?",
header: "Status",
options: [
{label: "Yes", description: "Update status to in-progress"},
{label: "Skip", description: "Leave status unchanged"}
],
multiSelect: false
}]
)
Only execute after user approval via AskUserQuestion response.
For each batch of N tasks:
docs/lighterpowers/current-progress.md after each taskAfter each batch, before reporting:
Any unchecked item blocks reporting. Complete all verifications first.
## Human Checkpoint GateAfter reporting batch results, use AskUserQuestion:
AskUserQuestion(
questions: [{
question: "Batch complete. How should I proceed?",
header: "Continue",
options: [
{label: "Continue", description: "Proceed to next batch"},
{label: "Pause", description: "I have feedback before continuing"},
{label: "Stop", description: "Stop here, I'll resume later"}
],
multiSelect: false
}]
)
Verification:
Proceeding without AskUserQuestion response bypasses human control. Plain text questions don't provide structured response UI.
Create docs/lighterpowers/current-progress.md (gitignored) for session state:
# Current Progress
## Plan
docs/lighterpowers/plans/feature-plan.md
## Batch Size
3
## Active Batch
Tasks 4-6
## Completed Tasks
- [x] Task 1: Setup project structure
- [x] Task 2: Add base API client
- [x] Task 3: Add error handling
## Remaining Tasks
- [ ] Task 4: Add retry logic
- [ ] Task 5: Add rate limiting
- [ ] Task 6: Add tests
## Discovered Work
- [ ] "Need to add rate limiting to API" (discovered in Task 3)
- [ ] "Auth tokens should expire after 24h" (discovered in Task 5)
During task execution, when work uncovers something that should be tracked:
Append to docs/lighterpowers/current-progress.md:
## Discovered Work
- [ ] "Need to add rate limiting" (discovered in Task 3)
- [ ] "Auth tokens should expire" (discovered in Task 5)
No offers during execution - batched for final verification phase.
After all batches complete:
rm -f docs/lighterpowers/current-progress.md
Present final summary:
## All Batches Complete
**Tasks Completed:** N/N
**Batches:** M
**Discovered Work:** [list items if any]
AskUserQuestion(
questions: [{
question: "All tasks complete. How would you like to finish?",
header: "Complete",
options: [
{label: "Commit all", description: "Stage and commit remaining changes"},
{label: "Review changes", description: "Show me a diff before committing"},
{label: "Done", description: "Leave changes as-is, I'll handle it"}
],
multiSelect: false
}]
)
| Violation | Consequence | Recovery |
|---|---|---|
| Plain text questions instead of AskUserQuestion | User can't respond via structured UI | Use AskUserQuestion tool |
| Proceeding without user feedback | Defeats purpose of batch approach | Stop, wait for response |
| Skipping batch verifications | Ships unverified code | Run verifications, show output |
| Skipping pre-execution offers | Missing branch/status setup | Present required offers |
| "Ready for feedback" without verification | False confidence | Verify then report |
| Batch size of "all remaining" | Loses checkpoint value | Stick to configured batch size |
| Starting new batch without user response | Human-in-loop is the value | Wait for explicit "continue" |
Required workflow skills:
This skill relies on human feedback. No prompt templates needed.
## Requirements Reminder