
Ralph loop: technika pro autonomní AI programování
Ralph loop je technika iterativního spouštění AI agenta v nekonečné smyčce. Agent pracuje samostatně, dokud nesplní zadaný úkol.
Ralph loop je technika pro autonomní programování s AI. V jádru jde o nekonečnou smyčku, která opakovaně spouští AI agenta se stejným promptem, dokud není úkol dokončen.
Proč se to jmenuje Ralph?
Název pochází od Ralpha Wigguma ze Simpsonů. Postava je známá svou vytrvalostí navzdory opakovaným neúspěchům — a přesně tak funguje i tato technika. Agent se nenechá zastavit chybou, zkouší to znovu a znovu.
Techniku popularizoval Geoffrey Huntley, který ukázal, že jednoduchý bash loop dokáže nahradit týdny manuální práce.
Hrubá síla místo elegance
Samotná technika není nic nového — používá se od uvedení Claude Code. Jde o pragmatický přístup: místo vymýšlení sofistikovaného řešení pustíte agenta v nekonečné smyčce a necháte ho pracovat hrubou silou.
Typický příklad: máte v projektu stovky lint chyb. Pokus opravit všechny najednou pravděpodobně selže — agent se ztratí v kontextu nebo udělá chybu. Místo toho vytvoříte prompt:
Oprav 10 lint chyb. Pak skonči.
Agent opraví 10 chyb a skončí. Loop ho spustí znovu, agent najde dalších 10 chyb, opraví je. A tak dál, dokud nejsou všechny chyby pryč. Není to elegantní, ale funguje to.
Pointa je v tom, že člověk nemusí vymýšlet chytré řešení. Stačí nechat agenta tupě opravovat projekt kus po kusu — klidně celou noc.
Jak to funguje?
Základní implementace je překvapivě jednoduchá:
while :; do cat PROMPT.md | claude ; done
Nekonečná smyčka, která opakovaně předává prompt AI agentovi. Klíčový trik: progres se neukládá v kontextu modelu, ale v souborech a git historii.
Když se kontext zaplní, přijde nový agent s čistým kontextem. Ten si přečte soubory, podívá se na git historii a pokračuje tam, kde předchozí skončil.
Cyklus iterace
- Práce na úkolu — agent čte kód, provádí změny
- Pokus o ukončení — agent se snaží skončit
- Stop hook — blokuje ukončení a znovu vloží prompt
- Opakování — dokud není splněna podmínka dokončení
Kde to běží?
Ralph loop běží lokálně na vašem počítači. Je to bash skript, který spouští AI agenta (typicky Claude Code) v terminálu.
Existuje několik implementací:
- snarktank/ralph — plnohodnotný agent s PRD a automatickými commity
- iannuttall/ralph — minimalistická implementace
- frankbria/ralph-claude-code — s rate limitingem a circuit breakerem
Některé implementace nabízejí TUI (terminálové rozhraní) pro sledování průběhu.
Co je PRD?
PRD (Product Requirements Document) je dokument popisující, co má být implementováno. V kontextu Ralph loop jde o soubor (typicky PRD.md), který obsahuje:
- Seznam funkcí k implementaci
- Kritéria přijetí pro každou funkci
- Status dokončení (agent ho průběžně aktualisuje)
Agent si z PRD vybírá úkoly, implementuje je a označuje jako hotové. Když jsou všechny položky splněny, loop končí.
Jaké modely používá?
Ralph primárně používá Claude (přes Claude Code), ale může fungovat s jakýmkoli AI nástrojem, který nemá limit na počet tool calls.
Důležitá je schopnost agenta:
- Číst a zapisovat soubory
- Spouštět příkazy v terminálu
- Pracovat s gitem
Cena a předplatné
Ralph loop je nejvýhodnější s předplatným Claude Max. Na rozdíl od API, kde se platí za každý token, předplatné nabízí paušální cenu.
To znamená, že noční běh, který spotřebuje miliony tokenů, vás nestojí nic navíc. Agent může chroustat celou noc a ráno máte hotový kód za cenu měsíčního předplatného.
Při použití API by stejná práce stála stovky dolarů. S předplatným je to „zdarma“ v rámci paušálu.
Konfigurace
Pro správné fungování potřebujete definovat:
- Kritéria dokončení — explicitní podmínky úspěchu
- Signál dokončení — text, který agent vypíše po splnění (např.
<promise>COMPLETE</promise>) - Maximální iterace — bezpečnostní limit (např.
--max-iterations 30)
Prompt typicky obsahuje:
# Úkol
Implementuj funkci X podle specifikace.
# Kritéria dokončení
- Všechny testy procházejí
- Build je úspěšný
- Kód je commitnutý
# Po dokončení
Vypiš: <promise>COMPLETE</promise>
Kdy použít Ralph loop?
Ideální případy:
- Greenfield projekty — nové projekty s jasnou specifikací
- Migrace — přepis mezi jazyky nebo frameworky
- Refaktoring — rozsáhlé změny architektury
- Noční běhy — nechat agenta pracovat přes noc
Nevhodné případy:
- Úkoly vyžadující lidský úsudek
- Subjektivní rozhodnutí (UI/UX design)
- Jednorázové operace s okamžitým výsledkem
Tipy pro použití
- Inkrementální cíle — menší kroky místo velkých skoků
- Testy a lintery — agent je použije pro automatickou verifikaci
- Git před spuštěním — commitnout aktuální stav pro možnost rollbacku
- Jasný prompt — úspěch závisí na kvalitě promptu, ne jen na modelu
Jak začít?
Pro Claude Code je nejlepší implementace frankbria/ralph-claude-code. Nabízí rate limiting, circuit breaker, monitoring dashboard a spolehlivé ukončení.
Instalace
git clone https://github.com/frankbria/ralph-claude-code.git
cd ralph-claude-code
./install.sh
Použití
# Inicialisace projektu
ralph-setup muj-projekt
cd muj-projekt
# Spuštění s monitoringem
ralph --monitor
Minimální bash loop
Alternativně můžete použít čistý bash bez závislostí:
while :; do cat PROMPT.md | claude ; done
Jak to funguje:
while :;— nekonečná smyčka (dvojtečka je zkratka protrue)cat PROMPT.md— načte obsah souboru s úkolem|— předá text jako vstup dalšímu příkazuclaude— spustí Claude Code s promptemdone— konec smyčky, která se okamžitě opakuje
Po každé iteraci Claude Code skončí (vyčerpá kontext nebo dokončí úkol), ale smyčka ho ihned spustí znovu se stejným promptem. Agent si přečte soubory, které předchozí iterace změnila, a pokračuje v práci.
Pozor: Minimální loop nedetekuje dokončení — poběží donekonečna, dokud ho ručně nezastavíte (Ctrl+C). Proto je lepší použít frankbria/ralph-claude-code, který umí rozpoznat, kdy je úkol hotový.
Odkazy
- Ralph Wiggum as a "software engineer" — původní článek
- frankbria/ralph-claude-code — doporučená implementace pro Claude Code
- snarktank/ralph — implementace pro Amp CLI
- iannuttall/ralph — minimalistická implementace
Související články
OpenCode: open source AI agent
Alternativa ke Claude Code. Nabízí AI agenta přímo v aplikaci/terminálu s podporou více modelů.
Agent Skills: rozšíření AI agentů
Agent Skills je specifikace pro definování schopností AI agentů. Jak funguje?
Google Antigravity: Nová AI vývojářská platforma
Google představil Antigravity - vývojářskou platformu s AI agenty poháněnou modely Gemini 3, Claude Sonnet a GPT-OSS.
10+ věcí, jak AI pomáhá při programování
AI dokáže výrazně zvýšit efektivitu programátora. Nevezme mu ale práci?