Explain Ender Wiggin technique and available commands
Manages task completion loops with checkpoint-based state persistence for repeatable workflows.
/plugin marketplace add sammcvicker/cc-plugins/plugin install sammcvicker-ender-wiggin-ender-wiggin@sammcvicker/cc-pluginsExplain the Ender Wiggin task completion loop to the user:
Ender Wiggin is a task completion loop plugin. Like ralph-wiggum, but for tasks that are designed to end.
Use it when you have a task that:
When you finish an iteration and try to exit, the checkpoint asks:
If context were cleared right now and this exact command given to a fresh instance, would it pick up wherever appropriate?
This ensures you wrap up properly before context resets.
/ender-loop /my-task --max-iterations 10| Ralph Wiggum | Ender Wiggin |
|---|---|
| General-purpose loops | Task completion loops |
| Runs forever by default | Designed to end |
| Same prompt each iteration | Checkpoint + command |
| For exploration/iteration | For tasks that should complete |
/ender-loop COMMAND [OPTIONS] - Start task completion loop
--max-iterations N - Stop after N iterations (default: unlimited)--completion-promise 'TEXT' - Stop when this promise can be truthfully output--checkpoint-prompt 'TEXT' - Custom checkpoint instructions/cancel-ender - Cancel an active loop
/ender-help - Show this help
# Development workflow
/ender-loop /work feature-x --max-iterations 10
/ender-loop /work --completion-promise 'All tests passing'
# Data processing
/ender-loop /process-batch --completion-promise 'Queue is empty'
# Review tasks
/ender-loop /review-prs --max-iterations 5
# Any repeatable task
/ender-loop 'Process next item' --completion-promise 'No items remaining'
# Custom checkpoint
/ender-loop /migrate --checkpoint-prompt 'Verify state saved to database'
To exit a loop with a completion promise, output:
<promise>Your exact promise text here</promise>
The promise must be completely and unequivocally TRUE. Do not lie to exit the loop.
The default checkpoint helps you wrap up for a fresh instance. Customize for specific workflows:
# Database state
--checkpoint-prompt 'Verify checkpoint saved to migrations table'
# File-based state
--checkpoint-prompt 'Confirm processed files moved to /completed'
# External API state
--checkpoint-prompt 'Ensure sync cursor persisted to state.json'
# Check current iteration
grep '^iteration:' .claude/ender-loop.local.md
# View full state
cat .claude/ender-loop.local.md
Your work persists through whatever mechanism your task uses:
This is why Ender works - each iteration can see prior work through persistent state, even with fresh context.