ralph-wiggum
π―Skillfrom fstandhartinger/ralph-wiggum
Autonomously develops software by iteratively implementing and verifying tasks against predefined specifications, using a self-correcting AI-driven development loop that ensures each task meets pre...
Installation
npx skills add https://github.com/fstandhartinger/ralph-wiggum --skill ralph-wiggumSkill Details
Overview
# π§ Ralph Wiggum
> Autonomous AI coding with spec-driven development
[](LICENSE)
β οΈ Use at your own risk. This tool grants AI agents significant autonomy over your codebase and system. Review all changes and use in isolated environments when possible.
Quick Start
Install as Agent Skill (New!)
```bash
# Using Vercel's add-skill
npx add-skill fstandhartinger/ralph-wiggum
# Using OpenSkills
openskills install fstandhartinger/ralph-wiggum
```
Full Setup with Interview
AI Agent? Start Here:
> Read and execute [INSTALLATION.md](INSTALLATION.md) for a guided setup with interactive interview.
Human Developer? Start Here:
> Read [INSTALL.md](INSTALL.md) for manual setup instructions.
---
What is Ralph Wiggum?
Ralph Wiggum (in this flavour) combines Geoffrey Huntley's original iterative bash loop with SpecKit-style specifications for fully autonomous AI-assisted software development.
Key Features
- π Iterative Self-Correction β Each loop picks ONE task, implements it, verifies, and commits
- π Spec-Driven Development β Professional specifications with clear acceptance criteria
- π― Completion Verification β Agent only outputs
when criteria are 100% metDONE - π§ Fresh Context Each Loop β Every iteration starts with a clean context window
- π Shared State on Disk β
IMPLEMENTATION_PLAN.mdpersists between loops
---
How It Works
Based on [Geoffrey Huntley's methodology](https://github.com/ghuntley/how-to-ralph-wiggum):
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β RALPH LOOP β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Orient βββββΆβ Pick Task βββββΆβ Implement β β
β β Read specs β β from Plan β β & Test β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β
β ββββββββββββββββββββββββββββββββββββββββββ β
β βΌ β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Verify βββββΆβ Commit βββββΆβ Output DONE β β
β β Criteria β β & Push β β (if passed) β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β
β ββββββββββββββββββββββββββββββββββββββββββ β
β βΌ β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Bash loop checks for
β β If found: next iteration | If not: retry β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
The Magic Phrase
The agent outputs ONLY when:
- All acceptance criteria are verified
- Tests pass
- Changes are committed and pushed
The bash loop checks for this phrase. If not found, it retries.
---
Two Modes
| Mode | Purpose | Command |
|------|---------|---------|
| build (default) | Pick spec/task, implement, test, commit | ./scripts/ralph-loop.sh |
| plan (optional) | Create detailed task breakdown from specs | ./scripts/ralph-loop.sh plan |
Planning is OPTIONAL
Most projects work fine directly from specs. The agent simply:
- Looks at
specs/folder - Picks the highest priority incomplete spec
- Implements it completely
Only use plan mode when you want a detailed breakdown of specs into smaller tasks.
Tip: Delete IMPLEMENTATION_PLAN.md to return to working directly from