$ entry

Také Claude Code nabídl /goal pro automatické dosažení cíle

Anthropic do Claude Code přidal příkaz `/goal`, který vykonává úlohu, dokud není hotová. Typicky opravuje chybu, dokud není opravená. Takový Ralph Wiggum Loop pro dospělé...

Také Claude Code nabídl /goal pro automatické dosažení cíle

Anthropic do Claude Code přidal příkaz /goal, který vykonává úlohu, dokud není hotová. Typicky opravuje chybu, dokud není opravená. Takový Ralph Wiggum Loop pro dospělé…

Claude Code nastaví podmínku dokončení a pak už pracuje napříč obrátkami sám, dokud podmínka neplatí. Po každé obrátce promptu malý rychlý model (defaultně Haiku) přečte konverzaci a rozhodne, jestli je hotovo. Když ano, cíl se automaticky vyčistí. Když ne, vrátí Claude orchestrátoru krátký důvod jako vodítko pro další tah.

Koncept autonomní smyčky řízené ověřitelnou podmínkou není nový. Codex i OpenCode podobnou věc nabízejí déle, byť s jinou mechanikou. Anthropic tak dohání trh, ale s elegantnější implementací. Evaluátor je samostatný model, ne hlavní model posuzující sám sebe.

Jak to funguje

Příkaz se volá s podmínkou jako argumentem:

/goal všechny testy v test/auth procházejí a lint je čistý

Setting cíle okamžitě spouští první turn (český překlad obrátka se mi moc nelíbí, tak ho zase chvíli nebudu používat), podmínka samotná slouží jako příkaz. V status baru se objeví indikátor ◎ /goal active. Po každém turnu evaluátor vrátí ano/ne a krátký důvod, který se zobrazí ve status view a v transkriptu.

Pod kapotou je /goal nadstavba nad Stop hookem, která žije jen v aktuální session a vyhodnocuje se promptem. Vyhodnocovací volání jdou na small/fast model, takže cena tokenů je oproti hlavním tahům zanedbatelná. Limit na podmínku je 4000 znaků.

Klíčové omezení: evaluátor nevolá tooly. Posuzuje jen to, co Claude poslal do konverzace. Podmínka tedy musí být ověřitelná z toho, co Claude sám produkuje - výstup testu, exit kód, status git, počet souborů. Není to “spusť testy a zkontroluj”, je to “Claude musí spustit testy a výsledek musí být v transkriptu”.

/goal funguje i v non-interactive režimu přes claude -p a přes Remote Control. Při --resume se podmínka obnoví, ale counter tahů a tokenů se vynuluje.

Jak napsat dobrou podmínku

Dobrá podmínka má tři vrstvy. Měřitelný end state: test result, exit kód, prázdná fronta, počet souborů. Způsob ověření: npm test exit 0, git status je čistý, ruff check . exit 0. Constraints: co se nesmí cestou porušit, například “žádný jiný testovací soubor není modifikován”.

Doplnit fuse je v praxi nutnost: nebo zastav po 20 tazích. Bez něj hrozí smyčka na nesplnitelné podmínce, kdy Claude tlačí Sisyfa nahoru kopcem za tvoje peníze.

Špatné podmínky jsou ty, které evaluátor nedokáže rozhodnout z transkriptu. V poslední době koluje po X “mega prompt”, kde autor cpe do /goal několikastránkový template s pravidly typu “kód vypadá jako od dobře financovaného startupu”. Haiku z transkriptu takovou věc neposoudí. Tento obsah patří do CLAUDE.md, ne do argumentu /goal.

Kam /goal patří v rodině autonomie Claude Code

/goal je nejmenší článek z rodiny. Stojí za to ho zarámovat správně, ať ho čtenář nepoužívá tam, kde se služí použít něco jiného.

/goal/loopRoutines
Spouštěč dalšího běhuKonec předchozího turnuČasový intervalSchedule, API endpoint, GitHub event
Kdy se zastavíEvaluátor potvrdí podmínkuRestart, exit, ručněNikdy (každý trigger = nová session)
Žije vSessionSessionAnthropic cloud, persistentně
Vyžaduje běžící notebookAnoAnoNe
KonfiguraceArgument příkazuArgument příkazuWeb UI, /schedule v CLI

/goal je pro úkoly s prokazatelným koncem: migrace modulu, refaktor souboru pod size budget, splnění checklistu v jednom souvislém běhu.

/loop je pro pravidelné kontroly během práce na něčem jiném: polling deploymentu, periodická kontrola CI, připomínka.

Routines jsou pro běhy bez tvého notebooku: noční triage issues, reakce na otevřený PR vlastním review checklistem, reakce na alert z monitoringu přes POST request, port změny mezi SDK po každém merge.

Tyto tři vrstvy se skládají. Routine spuštěná každou noc v 8 si v promptu nastaví /goal projdi všechny PR z poslední noci proti checklistu, dokud nezbyde žádný nezpracovaný a během toho běhu /loop 1m kontroluj stav CI polluje dlouhé jobs. Tři vrstvy, tři různé spouštěče, jeden výsledek. Je to první ucelený agentní stack v Claude Code, který drží pohromadě.

Co /goal neřeší

Evaluátor je jen tak dobrý, jak dobře Haiku přečte transkript. U dlouhých běhů s kompakcí kontextu hrozí, že evaluátor přijde o evidenci, na kterou Claude odkazuje. /goal se zacyklí, pokud Claude opakovaně narazí na chybu, kterou nedokáže opravit; bez fuse v podmínce běží dál.

Funkce vyžaduje workspace s přijatým trust dialogem (Stop hook je součást hooks systému). Pokud má organizace v managed policy disableAllHooks: true, /goal je nedostupný.

Routines jako persistentní vrstva mají vlastní problémečky, na které stojí za to upozornit: jsou v research preview, beta API se může změnit, commits a actions jdou pod vaší GitHub identitou (PR otevřený ve 3 ráno vypadá, jako bys ho otevřel ty), denní cap na běhy a hodinový cap na GitHub eventy nejsou v dokumentaci konkrétně vyčísleny, a “green status” v run listu znamená pouze, že session technicky doběhla, nikoli že úkol uspěl.

Praktická doporučení

Začněte jednou krátkou podmínkou s exit kódem. Vždy přidej fuse na počet turns. Quality bar, projektové konvence a stack patří do CLAUDE.md, ne do argumentu /goal. Pro plně neinteraktivní běh zkombinuj /goal s auto mode - auto mode řeší per-tool souhlasy, /goal per-turn pokračování, dohromady to jede bez prompts.

Pro CI/CD je headless varianta:

claude -p "/goal CHANGELOG.md má entry pro každý PR mergovaný tento týden"

Závěr

/goal je dobrá implementace dobrého nápadu, který Anthropic neměl první. Codex jede dlouho na principu “dokud nemyslím, že jsem hotov”, OpenCode má vlastní continue-until-done mechaniky. Anthropic přidává čistou abstrakci - jedna podmínka jako argument příkazu - a oddělený evaluátor, který posuzuje hlavní model zvenku. To je elegantnější než nechávat hlavní model rozhodovat o tom, zda on sám splnil úkol.

S Routines naopak Anthropic zaplnil mezeru, která u konkurence buď chyběla, nebo byla řešena přes externí CI. Trojice /goal + /loop + Routines je první ucelený autonomní stack v Claude Code. Hodnota není v žádném jednotlivém kusu, ale v tom, že do sebe tyto kusy řešení zapadají.

Otevřená otázka zůstává, jak /goal a Routines zvládnou tichá selhání - tedy stavy, kdy session technicky doběhne a evaluátor potvrdí podmínku, ale výsledek je špatně. Zatím to zpravidla padá na člověka, který hlášení otevře a podívá se, kde to failnulo. To je správně. Ale bude to prudit. Uvidíme, jak se s tím vyrovnáme…

Patrick Zandl

Technologický publicista a vývojář, který od roku 2025 provozuje Vibecoding.cz — největší česky psaný zdroj o AI-asistovaném programování. Dříve Chief Wizard Architect v Prusa3D, dnes konzultant a lektor AI implementace ve firmách.

Profil autora →