ralph-loop
Original:🇺🇸 English
Translated
Use when performing ralph wiggum style long-running development loops with pacing control.
4installs
Sourcezenobi-us/dotfiles
Added on
NPX Install
npx skill4agent add zenobi-us/dotfiles ralph-loopTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Ralph Wiggum - Long-Running Development Loops
Long-running iterative development loops with pacing control.
When to Use
- Complex tasks requiring multiple iterations
- Tasks with many discrete steps that build on each other
- Work that benefits from periodic reflection
Do NOT use for simple one-shot tasks or quick fixes.
Agent Tool
Call to begin a loop on yourself:
ralph_startralph_start({
name: "loop-name",
taskContent: "# Task\n\n## Goals\n- Goal 1\n\n## Checklist\n- [ ] Item 1\n- [ ] Item 2",
maxIterations: 50, // Default: 50
itemsPerIteration: 3, // Optional: suggest N items per turn
reflectEvery: 10, // Optional: reflect every N iterations
useSubagents: true, // Optional: delegate each task to subagent
subagentAgent: "default" // Optional: subagent name (default: 'default')
})Loop Behavior
- Task content is saved to
.ralph/<name>.md - Each iteration: work on task, update file
- Call tool to proceed to next iteration
ralph_done - When complete: output
<promise>COMPLETE</promise> - Loop ends on completion or max iterations (default 50)
User Commands
- - Start a new loop
/ralph start <name|path> - - Resume loop
/ralph resume <name> - - Pause loop (when agent idle)
/ralph stop - - Stop active loop (idle only)
/ralph-stop - - Show loops
/ralph status - - Show archived loops
/ralph list --archived - - Move loop to archive
/ralph archive <name> - - Clean completed loops
/ralph clean [--all] - - Delete loop
/ralph cancel <name> - - Delete all .ralph data
/ralph nuke [--yes]
During streaming: press ESC to interrupt, send a normal message to resume, and run when idle to end the loop.
/ralph-stopTask File Format
markdown
# Task Title
Brief description.
## Goals
- Goal 1
- Goal 2
## Checklist
- [ ] Item 1
- [ ] Item 2
- [x] Completed item
## Notes
(Update with progress, decisions, blockers)Subagent Mode
Delegate each checklist task to a separate subagent thread:
bash
/ralph start my-tasks --use-subagents --subagent-agent defaultHow it works:
- Extracts uncompleted checklist items ()
- [ ] Task - Each task is delegated to a fresh subagent thread (1 task = 1 subagent)
- Subagent completes task and marks it done ()
- [x] Task - Main loop orchestrates and tracks progress
- Automatic retry logic for failures (2 attempts)
Benefits:
- Fresh context per task (no pollution)
- Isolated execution (failures don't cascade)
- Clear task tracking and progress reporting
- Suitable for independent, discrete tasks
When to use:
- Tasks are independent (no shared state)
- Each task is substantial enough for separate execution
- You want clean separation between tasks
- Task list is well-defined upfront
Best Practices
- Clear checklist: Break work into discrete items
- Update as you go: Mark items complete, add notes
- Reflect when stuck: Use reflection to reassess approach (normal mode)
- Complete properly: Only output completion marker when truly done
- Subagent mode: Use for independent tasks with clear boundaries