fstandhartinger/ralph-wiggum
Ralph Wiggum: Autonomous AI coding with spec-driven development. Point your AI agent here to get started.
npx skills add fstandhartinger/ralph-wiggumREADME
π§ Ralph Wiggum
Autonomous AI coding with spec-driven development
β οΈ 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!)
# 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 for a guided setup with interactive interview.
Human Developer? Start Here:
Read 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
<promise>DONE</promise>when criteria are 100% met - π§ 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:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β RALPH LOOP β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Orient βββββΆβ Pick Task βββββΆβ Implement β β
β β Read specs β β from Plan β β & Test β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β
β ββββββββββββββββββββββββββββββββββββββββββ β
β βΌ β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Verify βββββΆβ Commit βββββΆβ Output DONE β β
β β Criteria β β & Push β β (if passed) β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β
β ββββββββββββββββββββββββββββββββββββββββββ β
β βΌ β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Bash loop checks for <promise>DONE</promise> β β
β β If found: next iteration | If not: retry β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
The Magic Phrase
The agent outputs <promise>DONE</promise> 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 specs.
Installation
For AI Agents (Recommended)
Point your AI agent to this repo and say:
"Set up Ralph Wiggum in my project using https://github.com/fstandhartinger/ralph-wiggum"
The agent will read INSTALLATION.md and guide you through a lightweight, pleasant setup:
- Quick Setup (~1 min) β Create directories, download scripts
- Project Interview (~3-5 min) β Focus on your vision and goals, not technical minutiae
- Constitution β Create a guiding document for all future sessions
- Next Steps β Clear guidance on creating specs and starting Ralph
The interview prioritizes understanding what you're building and why over interrogating you about tech stack details. For existing projects, the agent can detect your stack automatically.
Manual Setup
See INSTALL.md for step-by-step manual instructions.
Usage
1. Create Specifications
Tell your AI what you want to build, or use `/speckit.sp
...