Explain Ralph Wiggum technique and available commands
Iterative development technique where the same prompt repeats in a loop, letting Claude see its own previous work in files. Use for well-defined tasks needing refinement through multiple attempts.
/plugin marketplace add jeffh/claude-plugins/plugin install ralph@jeffh-claude-pluginsPlease explain the following to the user:
The Ralph Wiggum technique is an iterative development methodology based on continuous AI loops, pioneered by Geoffrey Huntley.
Core concept:
while :; do
cat PROMPT.md | claude-code --continue
done
The same prompt is fed to Claude repeatedly. The "self-referential" aspect comes from Claude seeing its own previous work in the files and git history, not from feeding output back as input.
Each iteration:
The technique is described as "deterministically bad in an undeterministic world" - failures are predictable, enabling systematic improvement through prompt tuning.
Start a Ralph loop in your current session.
Usage:
/ralph-loop "Refactor the cache layer" --max-iterations 20
/ralph-loop "Add tests" --completion-promise "TESTS COMPLETE"
Options:
--max-iterations <n> - Max iterations before auto-stop--completion-promise <text> - Promise phrase to signal completionHow it works:
.claude/.ralph-loop.local.md state fileCancel an active Ralph loop (removes the loop state file).
Usage:
/cancel-ralph
How it works:
.claude/.ralph-loop.local.mdTo signal completion, Claude must output a <promise> tag:
<promise>TASK COMPLETE</promise>
The stop hook looks for this specific tag. Without it (or --max-iterations), Ralph runs infinitely.
The "loop" doesn't mean Claude talks to itself. It means:
/ralph-loop "Fix the token refresh logic in auth.ts. Output <promise>FIXED</promise> when all tests pass." --completion-promise "FIXED" --max-iterations 10
You'll see Ralph:
Good for:
Not good for: