// dokumentacja openclaw

Zadania Cron w OpenClaw — harmonogramowanie i konfiguracja

Zadania Cron w OpenClaw

Cron to wbudowany scheduler Gateway, ktory pozwala agentowi wykonywac zaplanowane zadania o precyzyjnie okreslonych porach. Konfiguracje zadan sa trwale przechowywane w pliku ~/.openclaw/cron/jobs.json, dzieki czemu przetrwaja restarty systemu.

Gdzie dziala scheduler?

Scheduler operuje wewnatrz procesu Gateway — nie wewnatrz modelu. Oznacza to, ze zadania sa uruchamiane niezaleznie od aktywnej sesji czatu. Gateway budzi agenta w odpowiednim momencie i moze dostarczyc wynik z powrotem na kanal czatu lub do endpointu webhook.

Trzy metody planowania

OpenClaw obsluguje trzy podejscia do planowania czasu wykonania:

  • Jednorazowe znaczniki czasu — format ISO 8601 lub relatywny (np. 20m — za 20 minut). Uzyteczne do przypomnien i jednorazowych zadan.
  • Stale interwaly — flaga every pozwala definiowac cykliczne wykonanie (np. co 2 godziny).
  • Wyrazenia cron — tradycyjne 5- lub 6-polowe wyrazenia cron z opcjonalna specyfikacja strefy czasowej, idealne dla zaawansowanych harmonogramow.

Tryby sesji

Cron obsluguje cztery rozne typy sesji, determinujace kontekst wykonania zadania:

  • Sesja glowna (main) — kolejkuje zdarzenia systemowe do nastepnego obrotu heartbeat. Idealne dla przypomnien i drobnych aktualizacji.
  • Izolowana (isolated) — tworzy dedykowana sesje cron:<jobId> z czystym kontekstem. Najlepsze do raportow w tle, aby nie zasmiecac glownej konwersacji.
  • Biezaca sesja (current) — przywiazuje zadanie do aktywnej sesji w momencie tworzenia joba.
  • Niestandardowa (custom) — utrzymuje kontekst miedzy wieloma uruchomieniami, przydatne dla przeplywow wymagajacych ciaglosci historycznej.

Zarzadzanie zadaniami cron

Podstawowe komendy CLI do zarzadzania:

# Dodaj nowe zadanie
openclaw cron add "Wyslij raport dzienny" --every 24h --delivery announce

# Lista aktywnych zadan
openclaw cron list

# Historia wykonan
openclaw cron runs

# Edytuj istniejace zadanie
openclaw cron edit <jobId> --every 12h

Dostarczanie wynikow

Po zakonczeniu zadania cron, wyniki moga byc dostarczane na trzy sposoby:

  • announce — podsumowanie wyslane na kanal czatu. Agent przedstawia skrocona wersje wynikow.
  • webhook — wynik jest wysylany jako zadanie POST na zewnetrzny URL. Idealne do integracji z innymi systemami.
  • none — wynik pozostaje wewnetrzny, bez powiadomien. Przydatne dla zadan audytowych i logowania.

Konfiguracja zaawansowana

Scheduler cron mozna dostosowac za pomoca obiektu konfiguracyjnego:

  • cron.enabled — wlacz lub wylacz caly scheduler.
  • Limit wspolbieznosci — maksymalna liczba jednoczesnie wykonywanych zadan.
  • Polityka powtorzen — bledne zadania przejsciowe sa domyslnie ponawiane 3 razy z wykladniczym opoznieniem (exponential backoff).
  • Okno retencji sesji — jak dlugo przechowywac dane sesji izolowanych.
  • Rozmiar plikow logow — limit wielkosci logow na zadanie.

Bezpieczenstwo

Podczas konfiguracji zadan cron nalezy pamietac o kilku zasadach bezpieczenstwa:

  • Endpointy webhook powinny znajdowac sie za loopback lub zaufanym proxy.
  • Uzywaj dedykowanych tokenow hook, oddzielonych od glownych danych uwierzytelniajacych.
  • Ogranicz, do ktorych agentow mozna kierowac zadania, za pomoca parametru allowedAgentIds.