Claude Code přes noc: loop engineering a Ralph Loop v roce 2026
MarkdownJak spustit Claude Code v autonomní smyčce: Ralph Loop, /loop, /goal, /batch. Scénáře připravené k použití a ochrana před vyčerpáním tokenů v roce 2026.
Přečíst celý článek
Hlavní poznatky
Loop engineering je přístup, při kterém Claude Code pokaždé ručně nezadáváte pokyn, ale vytvoříte smyčku. Smyčka přijme váš úkol, provede krok, zkontroluje výsledek a sama rozhodne, zda pokračovat, nebo skončit. Tento návod vám ukáže, jak si za jeden večer nastavit první Ralph Loop, aby vám každý den pomáhala.
Referenční dokumentace Ailoot: ailoot.ai/docs/.
Co je loop engineering v autonomní práci s Claude Code?
Hlavní poznatky
Loop engineering mění vaši roli. Dříve jste seděli a zadávali agentovi pokyny: „udělej X, oprav Y, zkontroluj Z“. Teď napíšete malý systém, který to za vás opakuje ve smyčce: zadá úkol — získá výsledek — zkontroluje ho — rozhodne, co dělat dál. Vy přestanete psát a agent dál vytváří výstupy.
Ve stejném příspěvku cituje virální příspěvek Petera Steinbergera (8. června 2026):
A jeho druhé prohlášení vysvětluje rozsah:
Za těmito výroky stojí nová inženýrská role: jste architekt smyček, ne obsluha klávesnice.
Udělejte to dnes jednou a každý den vám budou přibývat potenciální zákazníci, články se budou publikovat automaticky, bot bude vyřizovat korespondenci a přehled metrik vám přistane na stole do 9 ráno. Systém vytvoříte vy, ale každý den bude fungovat bez vás.
Pokud stále otevíráte Claude Code, zadáte pokyn, čekáte, čtete výsledek a píšete další pokyn, uniká vám největší posun roku 2026. Modely jsou už dost výkonné na to, aby pracovaly ve smyčkách bez dozoru.
Jak se Ralph Loop liší od běžného požadavku v Claude Code?
Hlavní poznatky
Běžný požadavek v Claude Code je jednorázový: napíšete „udělej X“, Claude to udělá a chat skončí. Ralph Loop dělá totéž, ale ve smyčce: pokaždé, když se Claude pokusí skončit, zachytí ukončení hook a znovu mu předá váš pokyn. Soubory, které už Claude vytvořil, zůstávají zachované, takže každá další iterace navazuje na předchozí. Smyčka se zastaví, když obdrží signál dokončení (Claude vypíše slovo „DONE“) nebo dosáhne limitu iterací.
Jádrem této techniky je jednoduchá bash smyčka kolem agenta:
Původní kód, který odstartoval celou vlnu:
while :; do cat PROMPT.md | claude-code ; done
Jeden pokyn v souboru a kolem něj nekonečná smyčka. A nejvýstižnější komentář autora:
Anthropic zabalil stejnou logiku do pluginu ralph-loop a do příkazů /loop, /goal a /batch v Claude Code — jsou dostupné přímo v terminálu bez skriptů. Samotná skutečnost, že Anthropic vydal plugin pro nekonečné opakování pokynů, vyvolala na GitHubu v issue #23084 debatu o tom, zda je to vůči modelu fér. Debata pokračuje; plugin funguje.
Tři vestavěné příkazy Claude Code: /loop, /goal, /batch
Hlavní poznatky
Claude Code v2.1+ nabízí tři příkazy pro různé úrovně autonomie. /loop opakuje úkol v nastaveném intervalu (každou hodinu, denně, monitorování). /goal pracuje krok za krokem, dokud vyhodnocovací model neřekne „hotovo“. /batch provádí rozsáhlou mechanickou změnu pomocí paralelních agentů ve worktree. Každý příkaz má své vlastní využití.
| Příkaz | Kdy ho použít | Verze | Limit |
|---|---|---|---|
/loop 30m <prompt> | Opakování v intervalu (monitorování, dotazování) | v2.1.72+ | 7 dní, 50 úkolů za relaci |
/goal <condition> | Práce do dosažení cíle (vzorec s ověřovatelem) | v2.1.139+ | Podmínka až 4000 znaků |
/batch <change> | Paralelní mechanický refaktoring | v2.1.63+ | Každá jednotka má vlastní git worktree |
/goal je příkaz nejpodobnější Ralph Loop. Na pozadí vyhodnocovací model (ve výchozím nastavení Haiku) po každém kroku kontroluje, zda bylo cíle dosaženo. Pokud ne, další iterace dostane nápovědu, co přesně opravit. Pokud ano, zastaví se. Příkazu /goal jsem se podrobně věnoval v návodu jak spustit Claude Code autonomně přes noc pomocí /goal — najdete v něm scénáře připravené k použití pro 14 hodin práce.
/batch je vzácný, ale výkonný příkaz. Když potřebujete provést stejnou změnu ve více než 100 souborech (migrace API, nahrazení komponenty, přejmenování), /batch předá každý soubor samostatnému subagentovi ve vlastním git worktree. Změny se nedostanou do konfliktu — každý agent pracuje v izolované kopii. Více o subagentech najdete v návodu o vnořených subagentech.
V autorově popisu tohoto přístupu se tomu říká jednoduše:
Tvrdé limity příkazů /loop a /goal:
- Úkol běží, dokud je Claude Code otevřený. Zavřete terminál a smyčka skončí. Pro seriózní noční cyklus použijte vzdálený server nebo vlastní shellový wrapper.
- Maximální životnost opakujícího se úkolu je 7 dní (poté se automaticky odstraní jako ochrana před zapomenutými smyčkami).
- V jedné relaci může běžet až 50 souběžných úkolů.
Chcete sestavit prostředí, díky kterému bude Claude spolehlivý? Ralph Loop je jen jednou jeho částí. Vyplatí se zvážit všechny tři složky: klon AI + Druhý mozek + Kontextové inženýrství — tato kombinace promění Claude z „asistenta, který halucinuje“ v nástroj, kterému můžete zadat úkol a pak se věnovat svým věcem.
Jak spustit první autonomní smyčku za 5 minut
Hlavní poznatky
Nejrychlejší způsob, jak začít, je použít vestavěný příkaz /goal. Otevřete Claude Code, zadejte příkaz s cílem a ověřitelnou podmínkou ukončení a věnujte se svým věcem. Claude vygeneruje kód, spustí testy, přečte chyby, opraví je a testy spustí znovu, dokud neprojdou.
5 kroků:
Otevřete projekt v Claude Code
V terminálu přejděte do kořenového adresáře projektu a spusťte
claude. Počkejte, až Claude přečteCLAUDE.mda zaindexuje repozitář.Definujte cíl a podmínku ukončení
Cíl určuje, co je potřeba udělat. Podmínka ukončení určuje, jak Claude pozná, že je hotovo. Ideální je příkaz, který vrací 0 nebo 1. Příklad: „Cíl: všech 23 testů v
tests/api/*.test.tsprojde. Zastav se, kdyžpnpm testvrátí kód ukončení 0.“Spusťte /goal
Příkaz:
/goal All tests in tests/api/*.test.ts must pass. Run pnpm test, read the errors, fix them, and run it again. Stop when the exit code = 0. Maximum 20 iterations.Claude spustí smyčku: spustí testy — zjistí, že selhaly — otevře soubor — opraví ho — spustí je znovu.
Nastavte limit rozpočtu
Na pozadí použijte
/usageke sledování spotřeby. Nastavte denní limit tokenů nebo peněz, abyste v jedné smyčce nevyčerpali celý zůstatek. Více podrobností najdete v návodu jak nevyčerpat limity Claude Code.Věnujte se svým věcem
Vraťte se za 30 minut. Pokud je úkol jednoduchý, už se zobrazí zpráva „DONE, všechny testy procházejí“. Pokud je složitější, přečtěte si hlášení: „zastaveno při iteraci 20, důvod X“. Ručně opravte, co smyčka nezvládla, a pak ji spusťte znovu.
Vzorec s ověřovatelem: jak Claude kontroluje svou práci ve smyčce
Hlavní poznatky
Claude musí mít vždy možnost zkontrolovat svou práci. Bez kontroly začne agent ve smyčce halucinovat — usoudí, že úkol je hotový, i když je všechno rozbité. Ověřovatel je příkaz (testy, lint, vyhodnocovací model, vlastní kontrola), který jednoznačně vrací „hotovo/není hotovo“.
Existují tři typy ověřovatelů:
1. Technický (kód ukončení) — nejspolehlivější. pnpm test, npm run lint, tsc --noEmit, playwright test. Vrací 0 nebo 1 a nevyžaduje interpretaci. Takto funguje i /goal — na pozadí používá vyhodnocovací model Haiku, který po každém kroku kontroluje, zda byla podmínka splněna (maximálně 4000 znaků).
2. Vyhodnocovací model — druhý model posoudí výsledek prvního modelu podle hodnoticí rubriky. Hodí se pro úkoly bez formální kontroly („Je styl psaní dobrý?“ „Odpovídá návrh značce?“). V Anthropic tomu říkají Claude Code Review — režim, ve kterém samostatný kontrolní agent hledá v práci hlavního agenta logické chyby, okrajové případy a bezpečnostní problémy. Podle interních údajů společnosti Anthropic najde u velkých PR 84 % problémů (oproti 16 % u výchozího přístupu).
3. Vlastní kontrola — shellový skript, který napíšete sami. „Pokud protokoly neobsahují slovo ERROR, je hotovo.“ „Pokud soubor output.json existuje a lze ho parsovat, je hotovo.“ „Pokud stránka /pricing vrátí 200, je hotovo.“
V autorově přístupu zahrnují dovednosti po každé fázi samostatnou adversariální kontrolu Claude. Zde je šablona pokynu, kterou vkládám do CLAUDE.md nebo do příkazu:
Find 10 reasons why this project might have gone to shit.
Put yourself in the position that something has gone wrong.
I can run through this story many times -
before I release it to the public.
Nejčastější začátečnickou chybou je spustit smyčku bez ověřovatele. Agent přešlapuje na místě: píše kód, nekontroluje ho, myslí si, že je hotovo, přejde k další iteraci a přepisuje to, co už udělal. O tři hodiny později je z toho zmatek a účet činí 200 $.
Nejlepší pravidlo: nejdřív napište ověřovatele a teprve potom spusťte smyčku. Pokud nedokážete podmínku ukončení vyjádřit jedním řádkem, úkol ještě není připravený na autonomní zpracování.
Jak nevyčerpat přes noc tisíce dolarů: limity rozpočtu a podmínky zastavení
Hlavní poznatky
Smyčka bez rozpočtového limitu, podmínky zastavení při vysokých nákladech nebo ověřovatele může způsobit vysoký účet dřív, než si toho někdo všimne. Tomu mohou zabránit tři pojistky: limit iterací, limit tokenů nebo peněz a detektor stagnace.
Tři nezbytné brzdy pro každou noční smyčku:
1. Limit iterací. --max-iterations 20. Smyčka nemůže běžet více než Nkrát — ani když se ověřovatel nespustí. Pokud po 20 iteracích nedosáhla podmínky ukončení, úkol uvízl a vyžaduje zásah člověka.
2. Limit tokenů nebo peněz. /usage limit 50 — maximálně 50 $ denně. Když se limit blíží, smyčka se sama zastaví a odešle upozornění. Chrání to před nekontrolovaným scénářem.
3. Kontrola postupu s výslovnou dohodou. Porovnání HEAD níže odhaluje nové commity, nikoli všechny změny kódu. Použijte ho jen v izolovaném worktree, kde každá iterace měnící kód před porovnáním vytvoří místní kontrolní commit. Užitečné necommitnuté úpravy HEAD nemění; bez této dohody může nezměněný hash falešně signalizovat stagnaci. Uchovejte i výsledek ověřovatele: nový commit dokazuje zaznamenanou změnu, nikoli zlepšení či úspěch úkolu.
Ilustrativní struktura wrapperu s těmito třemi kontrolami. Řádky pro náklady a spuštění agenta jsou příklady závislé na nástroji, nikoli ověřený instalační recept CLI; před úpravou ověřte rozhraní instalované verze. Kontrola postupu podle commitů vyžaduje místní kontrolní commit po každé iteraci měnící kód. Zůstávají-li úpravy necommitnuté, zastavte běh ke kontrole místo označení „bez postupu“.
#!/bin/bash
PROMPT="$1"
MAX_ITER=20
MAX_COST_USD=50
COMPLETION="DONE"
PREV_HASH=""
STAGNATION=0
for i in $(seq 1 $MAX_ITER); do
# Money limit
CURRENT_COST=$(claude usage --json | jq '.cost_usd')
if (( $(echo "$CURRENT_COST > $MAX_COST_USD" | bc -l) )); then
echo "STOP: budget cap $MAX_COST_USD reached"
break
fi
# Run
OUTPUT=$(claude code -p "$PROMPT" --auto-accept)
# Completion check
if echo "$OUTPUT" | grep -q "$COMPLETION"; then
echo "STOP: completion signal"
break
fi
# Jen postup v commitech: každá iterace měnící kód musí vytvořit kontrolní commit.
# HEAD neodhalí užitečné úpravy, které zůstanou necommitnuté.
CURRENT_HASH=$(git rev-parse HEAD 2>/dev/null)
if [ "$CURRENT_HASH" = "$PREV_HASH" ]; then
STAGNATION=$((STAGNATION + 1))
if [ "$STAGNATION" -ge 3 ]; then
echo "STOP: stagnation 3 iterations"
break
fi
else
STAGNATION=0
fi
PREV_HASH="$CURRENT_HASH"
done
Před rozšířením kostry ověřte kontrolu postupu: úprava bez commitu je nezaznamenaná práce; kontrolní commit mění HEAD; úspěch dokazuje jen samostatný ověřovatel. Tři nezměněné commity znamenají za dané dohody žádné zaznamenané změny, nikoli důkaz nezměněných pracovních souborů. Dále můžete přidat: upozornění na Slacku při zastavení, automatickou ranní zprávu v Telegramu, push notifikaci, když rozpočet dosáhne 80 %. Princip je stejný: smyčka potřebuje brzdy, nejen akcelerátor.
5 scénářů nočních smyček připravených k použití
Hlavní poznatek
Ne každý úkol se hodí pro autonomní smyčku. Vhodnými kandidáty jsou úkoly s jednoznačným ověřovacím mechanismem, které fungují iterativně: testy, refaktoring, monitorování, článkové pipeline, importy dat. Nevhodné jsou úkoly bez formálních kontrol nebo s více subjektivními kritérii.
Scénář 1: Oprava neúspěšných testů
/goal V adresáři tests/ je 47 neúspěšných testů. Cíl: zajistit, aby všechny prošly.
Spusť pnpm test, přečti stderr, otevři soubor s chybou, oprav ji a znovu spusť pnpm test.
Zastav se, když bude návratový kód 0. Maximálně 30 iterací.
Scénář 2: Rozsáhlý refaktoring napříč 200 soubory
/batch Nahraď starého API klienta apiV1 novým apiV2 ve všech souborech pod src/**/*.ts.
Každý soubor dostane vlastní worktree. Po nahrazení spusť tsc --noEmit; oprav případné chyby.
Na konci worktrees slouč.
Scénář 3: Noční monitorování produkce
/loop 30m Každých 30 minut zkontroluj https://your-app.example.com/api/health.
Pokud nevrátí 200, přečti logy, najdi příčinu, oprav ji a proveď nový deployment.
Každou iteraci zaznamenej do /tmp/night-monitor.log.
Scénář 4: Import rozsáhlé datové sady s odstraněním duplicit
/goal Importuj soubor CSV /tmp/import.csv (12 000 řádků) do tabulky clients.
U každého řádku ověř, zda už existuje duplicita podle e-mailu; pokud ne, vlož jej; pokud ano, aktualizuj jej.
Konflikty zaznamenej do /tmp/conflicts.log. Zastav se, až bude zpracován poslední řádek.
Scénář 5: Článková pipeline (typické nastavení)
Pro online službu nebo agenturu, která pravidelně potřebuje SEO články, scénář vypadá takto:
/loop 8h Každých 8 hodin: otevři soubor backlogu a vyhledej témata se stavem 'queued'.
Pokud je nějaké téma k dispozici, spusť dovednost pro napsání průvodce.
Publikuj do dev. Změň stav na 'review'. Upozorni odpovědnou osobu v Telegramu.
Co předávat v každé iteraci: CLAUDE.md a Druhý mozek jako stav
Hlavní poznatek
Bez paměti začíná Claude každou iteraci od nuly — znovu otevře projekt, čte soubory a zapomene na rozhodnutí z předchozí iterace. Bez CLAUDE.md nezná architekturu; bez business/ (Druhého mozku) nezná kontext produktu; bez dovedností si nepamatuje vaše pravidla a styl. Stav mezi iteracemi se uchovává v těchto třech vrstvách souborů. Bez nich se smyčka zhoršuje už do 5. iterace.
Tři vrstvy „paměti“ projektu mění jednorázové zadání v řízenou smyčku:
1. CLAUDE.md — ústava projektu. Co je produkt, jaký používá stack, jaká platí pravidla a co se nikdy nesmí dělat. Claude tento soubor čte při zahájení každé relace a každé iterace smyčky. Bez něj musí Claude projekt pokaždé znovu „otevřít“ — spotřebovává kontext a zvyšuje riziko halucinací. Hotovou šablonu a 6 pravidel najdete v průvodci CLAUDE.md.
2. Druhý mozek — složka se znalostmi o podnikání: produkt, publikum, cíle, ekonomika, marketing. Ne kód — význam. Když smyčka píše článek nebo hledá odpověď pro podporu, čte Druhý mozek a odpovídá v kontextu projektu, nikoli ve vzduchoprázdnu.
3. Kontextové inženýrství — co přesně Claude předáte v každé iteraci. Ne celou složku Druhého mozku ani celý repozitář, ale jen to, co je relevantní. Pomáhá režim Plan Mode: Claude určí, které soubory úkol potřebuje, a čte jen ty. Více podrobností najdete v průvodci Plan Mode.
Hlavní provozní princip, který jsem musel vtlouct do praxe pomocí chyb:
Tyto tři vrstvy tvoří tři pilíře metodiky: klon AI (Claude jste naučili svému stylu a pravidlům pomocí dovedností a CLAUDE.md), Druhý mozek (obchodní kontext v souborech) a kontextové inženýrství (co poskytujete v každém požadavku). Bez všech tří se smyčka mění v nekonečný cyklus s rostoucím účtem.
Co je v každé relaci? Různé úkoly: jedna smyčka opravuje chyby, další píše nové funkce, třetí kontroluje pull requesty týmu, čtvrtá optimalizuje výkon a pátá připravuje dokumentaci. Ne jeden velký univerzální agent, ale desítky specializovaných agentů, každý s vlastní dovedností, cílem a ověřovacím mechanismem.
Klíčová změna perspektivy:
Pro podnikatele bez programátorů to znamená něco konkrétního. Máte jeden účet Claude za 200 $ měsíčně a běžný notebook. Můžete spustit 5 smyček souběžně — podporu, články, metriky, testování nového produktu a sledování konkurence. Každá běží ve vlastní kartě Claude Code. Ráno si přečtete souhrn. To už je v létě 2026 běžný způsob práce.
Čtyři běžná selhání autonomních smyček
Hlavní poznatek
Většina selhání autonomních smyček spadá do čtyř vzorců: chybí ověřovací mechanismus — agent sám rozhodne, že je hotovo; chybí rozpočtový limit — smyčka přes noc utratí celý rozpočet; chybí stav mezi iteracemi — rozhodnutí si odporují; nepřesná podmínka zastavení — smyčka neví, kdy skončit.
Selhání 1: „Smyčka halucinací“
Agent rozhodne, že skončil, i když se ověřovací mechanismus nespustil. Nebo žádný ověřovací mechanismus vůbec neexistuje. O tři hodiny později Claude řekne: „Hotovo!“ — ale testy selhávají, stránka se neotevře a nic nefunguje. Už jste utratili 80 $ za zbytečné iterace.
Řešení: přísný ověřovací mechanismus (návratový exit code příkazu), nikoli ústní kontrola.
Selhání 2: „Rozpočet shořel přes noc“
Bez rozpočtového limitu je smyčka granát bez pojistky.
Řešení: /usage limit nebo externí skript používající claude usage --json, který smyčku zastaví po dosažení limitu.
Selhání 3: „Smyčka ztratila mezi iteracemi kontext“
V 1. iteraci Claude učinil architektonické rozhodnutí. Do 7. iterace na něj zapomněl a rozhodl opačně. Po 15 iteracích je z kódu skládka.
Řešení: vrstva stavu pomocí CLAUDE.md a složky Druhý mozek. Smyčka zapisuje každé architektonické rozhodnutí do souboru, který si přečte při další iteraci.
Selhání 4: „Podmínka zastavení je nepřesná — smyčka běží navždy“
/goal "Udělej stránku krásnou" — co znamená „krásnou“? Bez jednoznačné metriky se smyčka nikdy nezastaví. Poběží dál, dokud nenarazí na limit iterací nebo rozpočtu.
Řešení: podmínka zastavení musí být vždy měřitelná. Ne „krásná“, ale „Lighthouse Performance ≥ 90, Accessibility ≥ 95“. Ne „funguje“, ale „testy v tests/pricing.test.ts procházejí“.
Kdy není loop engineering potřeba
Hlavní poznatek
Loop engineering je nástroj pro opakované úkoly, které lze ověřit. Není potřeba u jednorázových kreativních úkolů, úkolů bez formálního ověřovacího mechanismu ani úkolů vyžadujících subjektivní hodnocení. Znát limity je důležitější než znát techniku.
Pro autonomní smyčku se nehodí:
- Jednorázový kreativní úkol. Jeden web pro nový produkt, jedno logo, jedno strategické memorandum. Smyčka by tu byla zbytečně složitá; je snazší napsat jedno zadání a výsledek ručně doladit.
- Úkol bez ověřovacího mechanismu. Pokud nedokážete vyjádřit podmínku zastavení jako návratový kód nebo jednoznačný signál, smyčku nespouštějte; jinak z ní bude nekonečný požár.
- Úkol vyžadující subjektivní hodnocení. „Ať to zní lépe“, „vylepši UX, aby bylo příjemnější“ — to vyžaduje vás, ne smyčku.
- Nová, neznámá oblast. Pokud sami nerozumíte tomu, jak má vypadat výsledek, nespouštějte Claude ve smyčce. Nejdřív tomu porozumějte, potom to automatizujte.
A hlavní pravidlo, které jsem se naučil chybami:
Hlavní otázka před spuštěním smyčky: Dokážu jednou větou popsat, jak poznám, že Claude skončil? Pokud ano, smyčka může pomoci. Pokud ne, nejprve definujte ověřitelnou podmínku a teprve potom ji spusťte.
Zdroje
- Ralph Loop Claude Plugin - Anthropic - oficiální plugin
- Ralph Wiggum plugin on GitHub - Anthropic - zdrojový kód
- Claude Code Review - Anthropic blog - výzkumná ukázka revize PR více agenty, úspěšnost detekce 84 %
- Documentation /goal - Claude Code Docs - oficiální dokumentace příkazu
- Documentation /loop scheduled tasks - Claude Code Docs - oficiální dokumentace
Loop engineering je vrstva nad vším, co už o Claude Code víte. Nejprve potřebujete tři pilíře: klon AI + Druhý mozek + kontextové inženýrství. Bez nich se smyčka zhoršuje už do 5. iterace. Pokračujte v poznávání Ailoot na ailoot.ai.
Další podrobnosti
Časté otázky
Proč může nezměněný HEAD chybně naznačovat nulový postup smyčky?
HEAD označuje commit. Užitečné úpravy pracovní kopie ho nezmění, dokud je necommitnete. Ukázkový detektor proto vyžaduje místní kontrolní commit po každé iteraci měnící kód; bez této dohody běh pozastavte a prohlédněte necommitnutou práci místo označení za stagnaci.
Dokazuje nový commit zlepšení výsledku smyčky?
Ne. Dokazuje jen zaznamenanou změnu. Vedle kontrolního commitu uchovejte výsledek ověřovatele a zastavujte podle skutečné podmínky přijetí. Volání agenta a rozhraní nákladů ve wrapperu je před použitím nutné ověřit pro daný nástroj.