Polecenie /loop: prompty cykliczne i tryb adaptacyjny
EN/loop to dołączony skill Claude Code, który ponawia prompt w otwartej sesji: w stałym interwale, z opóźnieniem dobieranym przez Claude’a w każdej rundzie albo jako wbudowana rutyna utrzymaniowa. Cursor ma własny skill /loop; Codex go nie ma i zamiast tego używa automatyzacji w aplikacji. Pętla jest dokładnie tak wiarygodna, jak sprawdzenie wykonywane w każdej iteracji.
Ta strona jest dla programistów, którzy pilnują deployów i pull requestów, oraz dla tech leadów ustalających zespołowe zasady pracy bez nadzoru. Deploy trwa osiem minut, więc cztery razy pytasz „już gotowe?”. PR jest w przeglądzie, więc ciągle wracasz po wyniki CI i nowe komentarze. To prompt, który uruchamiałbyś w kółko, gdyby ktoś robił to za ciebie, i tym kimś jest /loop. Haczyk: pętla, której nie obserwujesz, musi raportować dowody, a nie wrażenia. Inaczej znów czytasz wszystko, co zrobiła. Jeśli praca bez nadzoru jest dla ciebie nowa, zacznij od przeglądu działu Automatyzacja, który porządkuje wszystkie opcje porównywane na tej stronie.
Co znajdziesz na tej stronie
Dział zatytułowany „Co znajdziesz na tej stronie”- Regułę wyboru między trybem stałego interwału, adaptacyjnym i utrzymaniowym
- Dwa gotowe do skopiowania prompty pętli, które kończą każdą iterację sprawdzalnym dowodem
- Projektowy
loop.md, który pilnuje gałęzi release i zatrzymuje się, zanim narobi szkód - Sposób na ograniczenie zużycia tokenów przez pętlę i podgląd kosztu każdej pętli
- Czego użyć w Codeksie i czym różni się
/loopw Cursorze - Awarie, przez które pętla odpala się i nic nie robi, oraz sposób wyjścia z nich
Który tryb /loop pasuje do zadania?
Dział zatytułowany „Który tryb /loop pasuje do zadania?”W Claude Code interwał i prompt są opcjonalne, a to, co podasz, wybiera tryb. /loop pojawił się w wersji v2.1.71 (marzec 2026) i jest opisany na stronie Anthropic o zadaniach cyklicznych, sprawdzonej 2026-09-26.
| Co wpisujesz | Przykład | Tryb | Kiedy go użyć |
|---|---|---|---|
| Interwał i prompt | /loop 5m check the deploy | Stały interwał, zamieniany na cron | Zdarzenie ma znany rytm: deploy, nocny build, kolejka do opróżnienia |
| Tylko prompt | /loop check the deploy | Tryb z tempem dobieranym przez Claude’a (dalej: tryb adaptacyjny): od 1 minuty do 1 godziny po każdej rundzie | Aktywność przychodzi falami, na przykład PR w przeglądzie |
| Sam interwał albo nic | /loop lub /loop 15m | Wbudowany prompt utrzymaniowy albo twój loop.md | Chcesz stałej rutyny „utrzymuj tę gałąź w dobrym stanie” |
Zaczynaj od trybu adaptacyjnego, chyba że masz powód, by tego nie robić. Claude czeka krótko, gdy build się kończy, i dłużej, gdy robi się cicho, więc płacisz za mniej pustych iteracji niż przy sztywnym rytmie co minutę.
Jak uruchomić pętlę ze stałym interwałem
Dział zatytułowany „Jak uruchomić pętlę ze stałym interwałem”Wpisz interwał i prompt w polu promptu Claude Code:
/loop 5m check if the deployment finished and tell me what happenedClaude zamienia interwał na wyrażenie cron, planuje zadanie i potwierdza rytm oraz 8-znakowy identyfikator zadania. Interwał może stać na początku jako samodzielny token (30m) albo na końcu jako fraza (every 2 hours). Jednostki to s, m, h i d. Sekundy są zaokrąglane w górę do pełnej minuty, bo cron nie schodzi niżej, a interwały takie jak 7m czy 90m są zaokrąglane do najbliższego czystego kroku cron. Claude mówi, co wybrał.
Trzy szczegóły decydują, czy stała pętla zachowa się zgodnie z oczekiwaniami:
- Przy odpaleniu działają tylko skille, które model może wywołać.
/loop 20m /review-pr 1234uruchamia ten skill w każdej rundzie. Wbudowane polecenia (/model,/clear), skille oznaczonedisable-model-invocation: true(w tym dołączony/verify), skille ukryte przezskillOverridesalbo regułę deny dlaSkilloraz prompty MCP, takie jak/mcp__github__list_prs, docierają jako zwykły tekst i nic nie robią. - Czasy odpaleń mają stałe przesunięcie. Harmonogram dodaje stałe przesunięcie wyliczane z identyfikatora zadania: zadania cykliczne odpalają się do 30 minut po zaplanowanym czasie albo do połowy interwału, jeśli biegną częściej niż co godzinę. Zadania jednorazowe ustawione na
:00lub:30odpalają się do 90 sekund wcześniej. Gdy przy jednorazowym przypomnieniu liczy się minuta, wybierz czas poza:00/:30, na przykład3 9 * * *zamiast0 9 * * *; przesunięcie zadań cyklicznych i tak obowiązuje. Pętle adaptacyjne nie mają przesunięcia. - Czasy są lokalne, a sesja mieści najwyżej 50 zaplanowanych zadań.
Jak działa tryb adaptacyjny
Dział zatytułowany „Jak działa tryb adaptacyjny”Pomiń interwał, a Claude wybierze opóźnienie po każdej iteracji i wypisze je razem z uzasadnieniem:
/loop check whether CI passed and address any review commentsGdy w sesji dostępne jest narzędzie Monitor, Claude może użyć go zamiast ponawiać prompt: Monitor uruchamia skrypt w tle i przesyła z powrotem każdą linię wyjścia, co zwykle szybciej reaguje i kosztuje mniej niż odpytywanie. Jeśli to, na co czekasz, potrafi wysłać powiadomienie, odpytywanie jest w ogóle złym narzędziem: kanały w Claude Code pozwalają CI przekazać informację o awarii prosto do sesji.
Samo /loop uruchamia wbudowany prompt utrzymaniowy w trybie adaptacyjnym. W każdej rundzie kontynuuje niedokończoną pracę z rozmowy, potem zajmuje się PR-em bieżącej gałęzi (komentarze z przeglądu, nieudane CI, konflikty scalania), a gdy nic innego nie czeka, robi porządki. Nie zaczyna nowych inicjatyw, a nieodwracalne akcje, takie jak push czy usuwanie, wykonuje tylko wtedy, gdy kontynuują coś, na co transkrypt już pozwolił.
Na Amazon Bedrock, Claude Platform on AWS, Agent Platform w Google Cloud (dawniej Vertex AI) i Microsoft Foundry, a także przy wyłączonym pobieraniu feature flag, tryb adaptacyjny i prompt utrzymaniowy wymagają v2.1.248 lub nowszej.
Jak ufać pętli, której nie obserwujesz?
Dział zatytułowany „Jak ufać pętli, której nie obserwujesz?”Wyjście pętli to strumień twierdzeń: „CI zielone”, „komentarz obsłużony”, „deploy zdrowy”. Weryfikujesz je tak jak każdą pracę agenta: każda iteracja ma dostarczyć dowód, który maszyna już sprawdziła. Służą temu cztery zasady:
- Nazwij wyrocznię. Każdy prompt pętli mówi, które polecenie albo status rozstrzyga o sukcesie:
gh pr checks, endpoint zdrowia deployu,npm test. „Sprawdź, czy wygląda OK” nie daje Claude’owi kryterium, którego mógłby nie spełnić. - Kończ każdą iterację jedną linią dowodu. Uruchomione polecenie, wynik i link: URL przebiegu CI, SHA commita, kod statusu health checka. Przeglądasz linie, a nie transkrypt.
- Wpisz warunek stopu i limit prób do promptu. Pętla adaptacyjna może zakończyć się sama, gdy praca jest zrobiona (Claude wywołuje
ScheduleWakeupzstop: true). Iteracja, która dwa razy pada w ten sam sposób, powinna się zatrzymać i zaraportować, a nie wypychać trzeciej poprawki na ślepo. - Scalanie zostaw człowiekowi. Pętla może wypychać poprawki na gałąź; pull request zatwierdza człowiek, korzystając z przeglądu opartego na dowodach. Pętla nigdy nie scala i nigdy nie deployuje.
Potem sprawdź, ile pętla kosztowała. Od v2.1.243 /usage pokazuje sekcję Loops: liczbę uruchomień, łączną liczbę tokenów, tokeny na uruchomienie i ostatnie uruchomienie każdej pętli. Pętla, której tokeny na uruchomienie ciągle rosną, czyta za dużo albo ponawia próby; zawęź prompt albo wydłuż interwał.
Zamień example.com/healthz na endpoint zdrowia swojej usługi. Prompt jest celowo tylko do odczytu: pętla raportuje, a ty decydujesz.
Zastąp rutynę utrzymaniową plikiem loop.md
Dział zatytułowany „Zastąp rutynę utrzymaniową plikiem loop.md”Plik loop.md zastępuje wbudowany prompt utrzymaniowy dla samego /loop. Claude Code najpierw czyta .claude/loop.md w projekcie, a w razie jego braku ~/.claude/loop.md. To jeden domyślny prompt, a nie lista zadań, i Claude Code go ignoruje, ilekroć po /loop wpiszesz własny prompt. Zmiany działają od następnej iteracji, więc możesz go doprecyzować w trakcie działania pętli. Treść powyżej 25 000 bajtów jest obcinana.
Zacommituj plik projektowy, żeby samo /loop robiło w całym zespole tę samą, ograniczoną rzecz. Tech lead przegląda ten plik jak każdą inną politykę: działa bez nadzoru, a „wypchnij poprawkę” oznacza w nim push za każdym razem, gdy warunek jest spełniony.
Jak zatrzymać, wznowić i przenieść pętlę w tło
Dział zatytułowany „Jak zatrzymać, wznowić i przenieść pętlę w tło”-
Zatrzymaj czekającą pętlę adaptacyjną klawiszem
Esc. To czyści zaplanowane wybudzenie. Zadań cronEscnie dotyka. -
Anuluj pętle o stałym interwale i zadania zaplanowane po identyfikatorze. Pętla
/loopo stałym interwale to zadanie cron, tak samo jak zadanie zaplanowane bezpośrednią prośbą do Claude’a („codziennie o 9 sprawdź…”), więcEscjej nie zatrzyma. Poproś Claude’a o anulowanie po opisie („cancel the deploy check job”) albo po identyfikatorze („cancel job a1b2c3d4”); Claude wywoła wtedy narzędzieCronDeletez tym identyfikatorem, a na prośbę „list my scheduled tasks” wywołaCronListi pokaże identyfikatory. Pozostawione samo sobie zadanie cykliczne działa, aż wygaśnie po siedmiu dniach. -
Pozwól pętli zakończyć się samej. Gdy warunek stopu z promptu jest spełniony, Claude anuluje własne wybudzenie. Jeśli iteracja ani nie zaplanuje kolejnej, ani się nie zatrzyma, Claude Code planuje jedno awaryjne wybudzenie około 20 minut później i kończy pętlę, jeśli ta iteracja też niczego nie zaplanuje.
-
Po wznowieniu uruchom ponownie pętle adaptacyjne.
claude --resumeiclaude --continueprzywracają niewygasłe zadania o stałym interwale, ale pętli adaptacyjnych/loopnie. Uruchom/loopjeszcze raz. -
Przenieś sesję w tło, zanim zamkniesz terminal. Zadania odpalają się tylko wtedy, gdy Claude Code działa i jest bezczynny. Przeniesienie sesji w tło (
/background) zabiera jej zadania/loopdo sesji w tle, która odpala je dalej bez terminala. -
Pamiętaj o siedmiodniowym wygasaniu. Zadanie cykliczne odpala się ostatni raz siedem dni po utworzeniu, a potem się usuwa. Pętle adaptacyjne nie mają przesunięcia, ale też wygasają po siedmiu dniach. Do dłuższych zadań użyj trwałego harmonogramu (następna sekcja).
Aby całkiem wyłączyć harmonogram, na przykład na współdzielonej maszynie, ustaw CLAUDE_CODE_DISABLE_CRON=1. Narzędzia cron i /loop stają się niedostępne, a zaplanowane zadania przestają się odpalać.
/loop w Claude Code, Codeksie i Cursorze
Dział zatytułowany „/loop w Claude Code, Codeksie i Cursorze”Natywnie, tak jak opisuje ta strona. /loop to opcja w obrębie sesji do szybkiego odpytywania: wymaga włączonej maszyny i otwartej sesji oraz dziedziczy serwery MCP i tryb uprawnień sesji. Gdy odpalenie wymaga zgody, czeka na ciebie jak każda inna tura. Do pracy, która ma przetrwać sesję, użyj Routines (research preview; chmura zarządzana przez Anthropic, minimalny interwał 1 godzina, bez pytań o uprawnienia w trakcie biegu), zadań cyklicznych w aplikacji desktopowej (twoja maszyna, minimum 1 minuta) albo wyzwalacza schedule w GitHub Actions.
Codex nie ma polecenia /loop: brak go w dokumentacji poleceń deweloperskich OpenAI, w wyliczeniu poleceń slash Codexa 0.162.1 i w ciągach znaków jego pliku binarnego (sprawdzone 2026-10-12). Potrzebę pokrywają dwie funkcje:
- Automatyzacje w aplikacji desktopowej Codex planują cykliczne zadania w tle. Opisuje je mapa powierzchni Codeksa OpenAI (sprawdzone 2026-09-26) jako „scheduled checks, reminders, monitors, or follow-ups; use an existing-thread heartbeat when continuity matters”. Automatyzacja wątku najbliżej odpowiada pętli Claude Code, bo każdy bieg trafia do tej samej rozmowy. Przewodnik po automatyzacjach Codeksa opisuje konfigurację, wybór sandboxa i testowanie promptu przed zaplanowaniem.
/goaldziała, dopóki warunek nie zostanie spełniony. To pętla sterowana warunkiem, a nie harmonogramem.
Powyższe prompty działają w automatyzacji Codeksa po usunięciu przedrostka /loop, zastąpieniu linii z CronDelete i „stop the loop” poleceniem „report and end the run” (rytm wyznacza harmonogram automatyzacji) oraz wybraniu sandboxa z dostępem do sieci (gh i curl go potrzebują).
Cursor dodał dołączony skill /loop w wersji 3.5 (2026-05-20). Changelog Cursora opisuje go tak: „With /loop, Cursor can run a prompt repeatedly on a local schedule, until a certain outcome is achieved, or until you stop it.” Ten jeden skill obejmuje zarówno rytm, jak i zatrzymanie po osiągnięciu wyniku, które Claude Code rozdziela między /loop i /goal. Cursor ma też własne /goal, wdrażane od 2026-08-19 i nadal tak oznaczone w dokumentacji Cursora 2026-10-12.
Cursor dokumentuje swój /loop znacznie skromniej niż Anthropic ten z Claude Code. Żaden ze szczegółów tej strony o opóźnieniach, wygasaniu, loop.md czy limicie zadań nie jest dla niego udokumentowany (sprawdzone w changelogu i liście poleceń Cursora, 2026-08-28). Przetestuj pętlę Cursora na krótkim zadaniu, zanim zostawisz ją samą.
Do harmonogramów, które mają działać bez otwartego edytora, użyj Cursor Automations: agentów chmurowych uruchamianych według harmonogramu albo przez zdarzenia z systemu kontroli wersji, Slacka, webhooków, Lineara, Sentry lub PagerDuty. Opisuje je przewodnik po Cloud Agents i Automations.
/loop, /goal czy zadanie w harmonogramie?
Dział zatytułowany „/loop, /goal czy zadanie w harmonogramie?”| Potrzebujesz | Użyj | Dlaczego |
|---|---|---|
| Odpytywać coś przez najbliższą godzinę, gdy pracujesz | /loop w trybie adaptacyjnym | Najtańszy start; umiera razem z sesją |
| Dojść do definicji ukończenia („wszystkie testy przechodzą”) | /goal | Zatrzymuje się, gdy sprawdzany warunek jest spełniony, zamiast biec według zegara |
| Zadanie codziennie przy zamkniętym laptopie | Routines, automatyzacje Codeksa, Cursor Automations albo harmonogram CI | Trwałe i działa bez otwartej sesji |
| Reakcja w chwili, gdy CI padnie | Kanały albo zadanie CI, które uruchamia agenta | Sterowane zdarzeniami; bez kosztu odpytywania |
Te dwa polecenia dobrze się uzupełniają: /goal doprowadza funkcję do zielonego stanu, a /loop pilnuje pull requesta, który z tego powstał. Pełne porównanie opcji pracy bez nadzoru u różnych dostawców znajdziesz w zestawieniu agentów w tle i w chmurze.
Co psuje pętlę działającą bez nadzoru?
Dział zatytułowany „Co psuje pętlę działającą bez nadzoru?”Pętla się odpala i nic się nie dzieje. Prompt to skill, którego Claude nie może wywołać sam, albo prompt MCP, więc dociera jako zwykły tekst. Wyjście: przepisz prompt jako zwykłe instrukcje albo usuń disable-model-invocation: true z własnego skilla, jeśli uruchamianie go bez nadzoru jest bezpieczne.
Po --resume pętli nie ma. Pętle adaptacyjne nie są przywracane. Wyjście: uruchom /loop ponownie; do wszystkiego, co ma przetrwać restart, użyj trwałego harmonogramu.
Pętla odpala się 20 minut za późno. To przesunięcie zadania godzinowego, a nie usterka. Wyjście: pomiń interwał, żeby pętla działała w trybie adaptacyjnym (reguły przesunięcia jej nie dotyczą), albo przenieś zadanie do Routines lub harmonogramu CI, gdy liczy się dokładny czas.
Tokeny rosną, a nic się nie zmienia. Pętla co minutę z promptem, który za każdym razem czyta logi od nowa, spala tokeny w każdej rundzie. Wyjście: otwórz /usage i przeczytaj sekcję Loops, przejdź na tryb adaptacyjny albo dłuższy interwał i każ promptowi odpowiadać jedną linią, gdy nic się nie zmieniło.
Pętla w kółko wypycha tę samą złą poprawkę. Prompt nie miał limitu prób. Wyjście: anuluj pętlę, cofnij jej commity na gałęzi i dopisz „stop after two failed attempts and report” oraz lokalny test, który musi przejść przed każdym pushem.
Komentarz z przeglądu steruje pętlą. Tekst komentarza to niezaufane wejście, które może napisać każdy, kto ma dostęp do repozytorium. Wyjście: każ promptowi traktować komentarze jako prośby do oceny, zablokuj narzędzia, których pętla nie potrzebuje, i trzymaj scalanie oraz zmiany konfiguracji CI poza jej zakresem.
Pętla nie podtrzymuje sesji zdalnej. Od v2.1.172 Claude Code przestał podpowiadać /loop w sesjach zdalnych, bo oczekujące pętle nie utrzymują kontenera przy życiu. Wyjście: do harmonogramów po stronie chmury używaj Routines.
Na Bedrock, Claude Platform on AWS, Agent Platform w Google Cloud lub Foundry brakuje trybu adaptacyjnego albo samego /loop. Masz wersję starszą niż v2.1.248. Wyjście: zaktualizuj Claude Code.