Combines Ralph Wiggum loops with structured feature plans for automated TDD-driven development...
Automated TDD development with Ralph Wiggum loops, Beads persistence, and Playwright E2E testing.
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Auto TDD Executor β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββββββββββββββ β
β β Feature βββββΆβ Ralph βββββΆβ Beads β β
β β Planner β β Wiggum β β (Persistence) β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββββββββββββββ β
β β β β β
β βΌ βΌ βΌ β
β Phase-based TDD Loop Survives context β
β Quality Gates Red-Green-Refactor compaction β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β E2E Test Phase β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β β β Playwright β β Playwright β β Playwright β β β
β β β Planner β β Generator β β Healer β β β
β β βββββββββββββββ βββββββββββββββ βββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Full Development Loop β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β 1. PLAN β
β βββΆ /auto-tdd-start β
β βββΆ Create Beads issues from plan β
β β
β 2. IMPLEMENT (TDD) βββββββββββββββββ β
β βββΆ /auto-tdd-run β β β
β βββΆ π΄ RED: Write failing tests βββββββββ€ Ralph β β
β βββΆ π’ GREEN: Implement minimal code ββββ€ Wiggum β β
β βββΆ π΅ REFACTOR: Improve quality ββββββββ€ Loop β β
β βββΆ β
Unit Tests Pass ββββββββββββββββββ β β
β β β
β 3. E2E TEST βΌ β
β βββΆ /auto-tdd-e2e βββββββββββββββββ β
β βββΆ playwright-test-planner βββββββββββββ€ Parallel β β
β βββΆ playwright-test-generator βββββββββββ€ Agents β β
β βββΆ If fail: playwright-test-healer βββββ β β
β β β
β ββββ FAIL βββΆ Back to Step 2 (fix bugs) β
β β β
β βΌ β
β 4. QUALITY GATE β
β βββΆ scripts/quality-gate.sh β
β βββΆ Unit Tests β
β βββΆ Lint β
β βββΆ Type Check β
β βββΆ Build β
β βββΆ E2E Tests β
β β β
β ββββ FAIL βββΆ Back to Step 2 β
β β β
β βΌ β
β 5. COMMIT β
β βββΆ git add . && git commit -m "Phase complete" β
β βββΆ git push β
β βββΆ bd close $ISSUE_ID β
β β β
β βΌ β
β 6. NEXT PHASE βββββββ΄βββΆ Repeat from Step 2 β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Command | Description |
|---|---|
/auto-tdd-start |
Initialize project with Beads issues from plan |
/auto-tdd-run |
Execute current phase with TDD + E2E |
/auto-tdd-e2e |
Run E2E tests with Playwright agents |
/auto-tdd-status |
Show progress and remaining phases |
# 1. Ralph Wiggum plugin
/plugin install ralph-wiggum@anthropics
# 2. Beads CLI
npm install -g @beads/bd
bd init
# 3. Playwright (for E2E)
npm install -D @playwright/test
npx playwright install
# 1. Create plan document
# Use feature-planner skill or create .doc/plans/PLAN_<feature>.md
# 2. Initialize beads issues
/auto-tdd-start
# 3. Execute phases (repeat until done)
/auto-tdd-run
# 4. Check status
/auto-tdd-status
specs/test.plan.mdtests/<suite>/<test>.spec.tsLaunch 3 Task tools in parallel:
1. subagent_type="playwright-test-generator" (Auth tests)
2. subagent_type="playwright-test-generator" (User tests)
3. subagent_type="playwright-test-generator" (API tests)
# Run all checks
./scripts/quality-gate.sh
# With options
./scripts/quality-gate.sh --verbose --skip-e2e
Returns:
/ralph-loop "
βββ PHASE: [Title] βββ
Issue: [ISSUE_ID]
CONTEXT: bd show [ISSUE_ID]
TDD:
π΄ RED: Write tests β npm test β Expect FAIL
π’ GREEN: Implement β npm test β Expect PASS
π΅ REFACTOR: Clean β npm test β Confirm PASS
QUALITY GATE:
npm test && npm run lint && npm run type-check && npm run build
ON PASS:
git add . && git commit -m 'Complete: [Title]'
bd close [ISSUE_ID]
<promise>PHASE_COMPLETE</promise>
" --max-iterations 50 --completion-promise "PHASE_COMPLETE"
# Create phase issue
bd create "Phase 1: Core Models" -t task -p 1
# Set dependencies
bd dep add <phase2> <phase1> --type blocks
# Update progress
bd update <id> --notes "Progress: 50%"
# Close on completion
bd close <id> --reason "Quality gate passed"
# Check what's ready
bd ready
project/
βββ .beads/ # Beads database
βββ docs/plans/ # Plan documents
β βββ PLAN_<feature>.md
βββ specs/ # E2E test plans
β βββ test.plan.md
βββ tests/ # E2E test files
β βββ seed.spec.ts
β βββ <suite>/
β βββ <test>.spec.ts
βββ src/ # Implementation
βββ scripts/
βββ quality-gate.sh # Quality gate automation
--completion-promise matches exactly--max-iterationsplaywright-test-healer agentnpm run dev)bd show <id>./scripts/quality-gate.sh --verbose