Summary
Manual cron job execution via openclaw cron run <jobId> does not work on macOS. The gateway receives the request and queues it, but never executes — times out after 60 seconds.
Environment
| Platform |
Status |
Details |
| macOS |
❌ Bug present |
Darwin 21.6.0 (x64), Node v24.13.0 |
| Linux |
✅ Works |
Ubuntu on Contabo VPS |
- OpenClaw versions tested: v2026.2.23, v2026.2.26
- Gateway: local loopback 127.0.0.1:18789
Steps to reproduce
- Create any cron job (isolated or main)
- Run
openclaw cron run <jobId> or trigger from agent via cron(action="run")
- Wait → timeout after 60s, job never executes
What works ✅
cron add, list, status, remove, runs
- Scheduled automatic execution (jobs run fine at their scheduled time)
What fails ❌
cron run <jobId> (both CLI and tool call)
- Tested with
--due flag and without
- Tested with both job types:
isolated (agentTurn) and main (systemEvent)
Log behavior
- Gateway receives request and enqueues to lane:
lane enqueue: lane=session:agent:main:cron:<jobId>
lane dequeue immediate
- Then nothing — no execution log, no error, no stack trace
- Job marked as "running" but never starts
- On gateway restart:
cron: clearing stale running marker on startup
From agent
Tool call never receives response → missing tool result in session history
From CLI
gateway timeout after 60000ms
Additional context
- When triggered from agent, the long timeout seems to cause gateway restart (conflict with SIGUSR1?)
cron runs --id <jobId> shows 0 entries — job never actually ran
- No crashes or stack traces, execution simply never starts after dequeue
Summary
Manual cron job execution via
openclaw cron run <jobId>does not work on macOS. The gateway receives the request and queues it, but never executes — times out after 60 seconds.Environment
Steps to reproduce
openclaw cron run <jobId>or trigger from agent viacron(action="run")What works ✅
cron add,list,status,remove,runsWhat fails ❌
cron run <jobId>(both CLI and tool call)--dueflag and withoutisolated(agentTurn) andmain(systemEvent)Log behavior
lane enqueue: lane=session:agent:main:cron:<jobId>lane dequeueimmediatecron: clearing stale running marker on startupFrom agent
Tool call never receives response →
missing tool result in session historyFrom CLI
gateway timeout after 60000msAdditional context
cron runs --id <jobId>shows 0 entries — job never actually ran