-
-
Notifications
You must be signed in to change notification settings - Fork 53.1k
Closed
Description
Summary
The built-in cron scheduler creates jobs successfully and stores them, but they never auto-fire. The nextWakeAtMs field stays null after job creation, suggesting the wake scheduler never picks up the job.
Reproduction
# Add a job scheduled to run soon
openclaw cron add \
--name "Test job" \
--at "+1m" \
--session main \
--system-event "Test cron fired" \
--wake now
# Check job status
openclaw cron list --jsonExpected
nextWakeAtMsshould be populated with the scheduled timestamp- Job should fire automatically at the scheduled time
Actual
nextWakeAtMsisnull- Job never fires automatically
- Manual trigger works fine:
openclaw cron run <job-id> --force
Environment
- OpenClaw version: 2026.2.2-3
- OS: Ubuntu 24.04 (x64)
- Node: v22.22.0
- Running as systemd user service with lingering enabled
Workaround
Using system crontab to call openclaw agent instead:
# In crontab -e
0 7 * * * /path/to/openclaw agent --to <chat_id> --channel telegram --message "Morning briefing trigger" --deliverThis bypasses the internal scheduler entirely but still routes through the gateway properly.
Notes
- Gateway is running continuously (verified via
systemctl --user status openclaw) - Jobs persist correctly in
~/.openclaw/cron/jobs.json - The issue affects both
at(one-shot) andcron(recurring) schedule types - Seems like the scheduler isn't registering the wake-up after job creation
Possibly related
Saw another user report similar symptoms on Twitter - jobs get created but "just don't do it". This appears to be a known pain point.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels