Skip to main content

openclaw cron

Manage cron jobs for the Gateway scheduler. Related: Tip: run openclaw cron --help for the full command surface. Note: isolated cron add jobs default to --announce delivery. Use --no-deliver to keep output internal. --deliver remains as a deprecated alias for --announce. Note: one-shot (--at) jobs delete after success by default. Use --keep-after-run to keep them. Note: recurring jobs now use exponential retry backoff after consecutive errors (30s → 1m → 5m → 15m → 60m), then return to normal schedule after the next successful run. Note: openclaw cron run now returns as soon as the manual run is queued for execution. Successful responses include { ok: true, enqueued: true, runId }; use openclaw cron runs --id <job-id> to follow the eventual outcome. Note: retention/pruning is controlled in config:
  • cron.sessionRetention (default 24h) prunes completed isolated run sessions.
  • cron.runLog.maxBytes + cron.runLog.keepLines prune ~/.openclaw/cron/runs/<jobId>.jsonl.
Upgrade note: if you have older cron jobs from before the current delivery/store format, run openclaw doctor --fix. Doctor now normalizes legacy cron fields (jobId, schedule.cron, top-level delivery fields, payload provider delivery aliases) and migrates simple notify: true webhook fallback jobs to explicit webhook delivery when cron.webhook is configured.

Common edits

Update delivery settings without changing the message:
openclaw cron edit <job-id> --announce --channel telegram --to "123456789"
Disable delivery for an isolated job:
openclaw cron edit <job-id> --no-deliver
Enable lightweight bootstrap context for an isolated job:
openclaw cron edit <job-id> --light-context
Announce to a specific channel:
openclaw cron edit <job-id> --announce --channel slack --to "channel:C1234567890"
Create an isolated job with lightweight bootstrap context:
openclaw cron add \
  --name "Lightweight morning brief" \
  --cron "0 7 * * *" \
  --session isolated \
  --message "Summarize overnight updates." \
  --light-context \
  --no-deliver
--light-context applies to isolated agent-turn jobs only. For cron runs, lightweight mode keeps bootstrap context empty instead of injecting the full workspace bootstrap set.