Ralph: När AI fixar problem autonomt


Mitt create-new-project.sh hade 18 dokumenterade issues som blockerade flödet. Att fixa dem manuellt skulle kosta timmar, med hög risk att missa edge cases. Jag lät Ralph hantera det. Resultatet: 15 fixade tasks på 46 iterationer — helt autonomt.

Problemet

create-new-project.sh skapar nya projekt automatiskt. Scriptet hade 18 issues dokumenterade i en task-lista. Manuell fix skulle ta timmar — och risken att missa edge cases var hög.

Exempel på issues:

  • Vitest setup saknade konfiguration
  • Monorepo-struktur hanterades inte korrekt i verifieringsscript
  • Edge cases i GitHub repo creation
  • Workflow verification var valfri, inte tvingande

Insikten

Ralph-pattern från Geoffrey Huntley löser iterativa fixar.
Varje iteration är ny kontext — ingen state mellan körningar.
Task-lista håller state och progress-log sparar minne.

Inspiration: Ralph GitHub repo, Ralph explained.

Systemet

Ralph Loop

Flöde: Task-lista → Agent → Verifiering → Commit → Loop.

Ett bash-script orkestrerar agenten i en loop, där en progress-log agerar minne mellan iterationerna.
Systemet verifierar varje task automatiskt och utför en commit vid lyckat resultat — utan mänsklig inblanding.

Hur det fungerar

  1. Task-lista innehåller 18 tasks med status
  2. Script väljer nästa task som inte är klar
  3. Agent får ny kontext med task-lista + progress-log
  4. Verifiering körs automatiskt (tester, lint, type-check)
  5. Commit sker vid lyckat resultat, annars loopar agenten

Varje iteration är isolerad — ingen state mellan körningar.
Agenten ser bara task-lista och progress-log, vilket eliminerar state-drift.

Resultat

15 av 18 tasks completed.

MetricVärde
Total iterationer46
Total tokens24.7M
Genomsnitt per iteration537K tokens
Tidsperiod14:e januari 2026
Tasks completed15/18 (83%)

Modellfördelning:

ModellIterationerTokensIncludedOn-Demand
auto3212.5M320
claude-4.5-opus-high-thinking1412.3M014

Typ-fördelning:

TypIterationerTokens
Included (Cursor Pro+)3212.5M
On-Demand1412.3M

Insikt: Auto-modellen (Cursor Auto) användes för 70% av iterationerna.
Opus användes för komplexa tasks som krävde djup förståelse.

Lärdomar

Task 4: Vitest setup

Problem: Scriptet lade till test:run script men saknade:

  • vitest installation
  • vitest.config.ts
  • test setup file
  • placeholder test

Lösning: Komplett testing setup i frontend creation-steget.
Verifiering fungerar nu korrekt.

Task 5: Monorepo-struktur

Problem: Verifieringsscript förväntade sig projekt-root, inte monorepo-struktur.
Grundorsak: Jag designade verifieringsscriptet för enkel projektstruktur, inte monorepo. När projekt växte till monorepo-struktur missade jag att uppdatera verifieringen.
Lösning: Uppdaterade verifieringsscript att hantera monorepo-struktur.
Lärdom: Detta visar vikten av att testa mot faktiska projektstrukturer, inte bara antaganden.
Resultat: DoD-verifiering fungerar i monorepo-projekt.

Task 15: GitHub repo creation

Problem: Edge cases när repo redan existerade eller hade fel namn.
Lösning: Bättre felhantering och verifiering av repo-status.
Resultat: Scriptet hanterar edge cases korrekt.

Task 17: Workflow verification

Problem: Workflow verification var valfri, inte tvingande.
Grundorsak: Jag antog att alla skulle verifiera manuellt. I praktiken missades verifiering, vilket ledde till trasiga workflows i produktion.
Lösning: Måste vara tvingande för att säkerställa att workflows faktiskt körs.
Lärdom: Designprincipen: om något måste göras, gör det tvingande — inte valfritt.
Resultat: Workflows verifieras automatiskt vid projekt-skapande.

Varför Ralph fungerar

Ny kontext varje iteration — ingen state-drift.
Task-lista håller state — tydlig progress-tracking.
Automatisk verifiering — inga manuella steg.
Auto-commit vid lyckat resultat — tydlig historik.

Jämfört med manuell fix:

  • Manuell: 8-10 timmar, risk för missade edge cases
  • Ralph: 1 dag autonomt, 46 iterationer, 15/18 tasks

Nästa steg: Fler use cases för Ralph.
Iterativa fixar är perfekt för autonoma loops.