What is Ralph?
Ralph is an autonomous AI agent loop pattern that emphasizes “naive persistence” - the agent keeps trying until it succeeds. Named after the character Ralph Wiggum from The Simpsons, it embodies a simple but effective philosophy: clear the context, read the state from files, make progress, and repeat. Key Principles:- Fresh Context: Each iteration starts with a clean LLM context window
- File-Based State: Progress persists through files and Git history, not chat memory
- Completion Promises: Agent signals task completion via explicit markers
- Doom Loop Detection: Prevents repetitive, non-productive cycles
Quick Start
1
Basic Loop
2
With Completion Promise
<promise>DONE</promise> in its response when complete.3
With Context Clearing
How It Works
Configuration Options
CLI Options
Programmatic Options
Completion Detection
The agent signals completion by including a promise marker in its output:- Promise matched: Output contains
<promise>{TEXT}</promise>matching the configured promise - Max iterations: Reached the iteration limit
- Timeout: Exceeded the time limit
- Doom loop: Detected repetitive non-productive actions
- User interrupt: Ctrl+C cancellation
Common Patterns
Long-Running Development Tasks
Debugging Sessions
Refactoring Tasks
Best Practices
Use file-based state for complex tasks
Use file-based state for complex tasks
When
--clear-context is enabled, ensure your agent writes progress to files (like progress.txt or a task list) so state persists across iterations.Set appropriate completion promises
Set appropriate completion promises
Choose unique, unmistakable completion words like
TASK_COMPLETE, DONE, or FEATURE_SHIPPED. Avoid common words that might appear accidentally.Use timeouts for safety
Use timeouts for safety
Always set
--timeout for production use to prevent runaway loops from consuming excessive resources.Enable verbose mode for debugging
Enable verbose mode for debugging
Use
-v when developing new autonomous workflows to understand the agent’s behavior across iterations.Related
Autonomy
Configure autonomous agent behavior
Execution
Control execution limits and patterns

