Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.
Quelldateien prüfen
Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
The Ralph Wiggum technique is a simple but powerful pattern for autonomous AI-driven development:
PRD (prd.json): JSON file with user stories, each having a passes boolean
Progress file (progress.txt): LLM memory between iterations
Loop: Run Claude Code repeatedly until all tasks pass
Named after Ralph Wiggum from The Simpsons - simple but effective.
"Me fail English? That's unpossible!" - Ralph Wiggum
Why It Works
The Problem with AI Coding
LLMs lose context between sessions
No persistent memory of what worked/failed
Tendency to declare victory without verification
Complex orchestration systems add overhead
The Solution
Structured task list (JSON): Machine-readable, hard for LLM to corrupt
Progress file: Persistent memory across iterations
Verification gate: MUST pass all checks before marking complete
Git commits: Checkpoint after each success
Simple loop: No complex orchestration needed
Components
1. PRD File (plans/prd.json)
{"project":"My Project","version":"1.0.0","user_stories":[{"id":"US-001","epic":"Authentication","title":"User can sign up with email",
"description"
:
"As a user, I want to sign up so I can access the app"
,
"priority"
:
"critical"
,
"acceptance_criteria"
:
[
"Email validation works"
,
"Password strength checked"
,
"Confirmation email sent"
]
,
"verification"
:
{
"type_check"
:
true
,
"lint"
:
true
,
"unit_tests"
:
true
,
"e2e_tests"
:
true
,
"build"
:
true
}
,
"passes"
:
false
,
"last_attempt"
:
null
,
"attempt_count"
:
0
,
"depends_on"
:
[
]
}
]
,
"metadata"
:
{
"total_stories"
:
1
,
"passing_stories"
:
0
}
}
Key Fields
Field
Purpose
passes
Boolean gate - only true after verification
priority
Execution order: critical > high > medium > low
depends_on
Task IDs that must pass first
acceptance_criteria
Specific requirements to implement
attempt_count
Tracks failed attempts (for debugging)
2. Progress File (plans/progress.txt)
Append-only file with session entries:
# Ralph Wiggum Progress Log# Project: my-project# Created: 2026-01-07T10:00:00Z
---
## Session 1: 2026-01-07T10:30:00Z**Task**: US-001 - User can sign up with email
**Status**: IN_PROGRESS
### Work Done
- Created SignUpForm component at apps/web/src/components/auth/SignUpForm.tsx
- Added zod schema for email validation
### Issues Encountered
- useAuth hook missing return type annotation
### Learnings
- Always add explicit return types to custom hooks
- Email regex pattern: /^[^\s@]+@[^\s@]+\.[^\s@]+$/
### Next Steps
1. Fix useAuth hook return type
2. Add unit tests for SignUpForm
3. Run full verification
---
## Session 2: 2026-01-07T11:00:00Z
**Task**: US-001 - User can sign up with email
**Status**: COMPLETED
### Work Done
- Fixed useAuth return type
- Added comprehensive unit tests
- All verification passed
### Learnings
- Vitest mocking pattern for Supabase auth
### Next Steps
- Move to US-002
3. Verification Pipeline
ALL must pass before marking passes: true:
pnpm turbo run type-check # TypeScript compilation
pnpm turbo run lint # ESLint + Ruff linting
pnpm turbo run test# Unit tests (Vitest/Pytest)
pnpm turbo run build # Production build
pnpm --filter=web test:e2e # Playwright E2E tests
# Unix/Mac/WSL
./scripts/ralph.sh 50 # Max 50 iterations# Windows PowerShell
.\scripts\ralph.ps1 -MaxIterations 50
# Claude Code command
/ralph run 50
Best Practices
1. Small, Focused Tasks
Keep user stories to 1-2 hour scope:
// Good{"title":"Add email validation to sign-up form"}// Too big{"title":"Implement entire authentication system"}
2. Specific Acceptance Criteria
Vague criteria lead to incomplete implementations:
// Good{"acceptance_criteria":["Email format validated with regex","Error message shown for invalid email","Submit button disabled until valid"]}// Too vague{"acceptance_criteria":["Form works properly"]}
3. Use Dependencies
Order tasks logically:
{"id":"US-002","title":"User can log in","depends_on":["US-001"]// Sign-up must work first}
4. Read Progress Before Working
Check what was learned in previous iterations:
### Learnings- Vitest mocking pattern for Supabase: vi.mock('@supabase/ssr')
- Always await signUp() before checking error state
5. Commit After Each Success
Creates checkpoints for recovery:
git log --oneline
# feat(US-003): User can reset password# feat(US-002): User can log in# feat(US-001): User can sign up with email
6. Escalate Repeated Failures
If attempt_count >= 3:
Stop working on task
Record blocker in progress.txt
Move to next available task
Flag for human review
Integration with Existing Systems
Long-Running Agents
Ralph follows the same patterns as apps/backend/src/agents/long_running/:
Ralph
Long-Running
progress.txt
ProgressFile class
prd.json
FeatureManager
Session entries
SessionProgress
Orchestrator Delegation
The orchestrator can hand off to Ralph for autonomous completion:
============================================
Ralph Wiggum Technique
Autonomous Task Completion Loop
============================================
>>> Checking prerequisites...
Claude CLI found
PRD file found
All prerequisites OK
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Iteration 1: US-001
User can sign up with email
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
>>> Invoking Claude Code...
[Claude implements sign-up form]
>>> Running verification pipeline...
Running type check...
Type check: PASS
Running lint...
Lint: PASS
Running tests...
Tests: PASS
Running build...
Build: PASS
Running E2E tests...
E2E: PASS
Verification passed! Marking US-001 as complete.
[Auto-commit: feat(US-001): User can sign up with email]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Iteration 2: US-002
User can log in with email
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
...
============================================
Summary
============================================
Iterations: 5
Tasks Completed: 5
Progress: 5/5 tasks complete
Duration: 00:45:23
All tasks complete! Project finished in 5 iterations.
Australian Context
All implementations follow Australian defaults:
en-AU spelling (colour, organisation, behaviour)
DD/MM/YYYY date format
AUD currency formatting where applicable
Privacy Act 1988 compliance considerations for user data