-
-
Notifications
You must be signed in to change notification settings - Fork 39.6k
Closed
Description
Bug Description
When using $include directives to split the configuration into modular files, the cron scheduler stops executing jobs even though:
- The gateway starts successfully
- All agents load correctly
- Jobs are correctly scheduled with valid
nextRunAtMstimestamps - The
.statefile shows correct job state
Environment
- OpenClaw version: 2026.2.3-1 (d84eb46)
- OS: Debian 13 (trixie)
- Node: v22.22.0
Steps to Reproduce
- Create a working monolithic
openclaw.jsonwith cron jobs - Split the config into modular files using
$include:{ "gateway": { "$include": "gateway.json5" }, "agents": [ { "$include": "agents/defaults.json5" }, { "$include": "agents/core.json5" } ], ... } - Restart gateway
- Observe that cron jobs have correct
nextRunAtMsbut never execute
Expected Behavior
Cron jobs should execute at their scheduled times regardless of whether the config uses $include or is monolithic.
Actual Behavior
- Jobs are scheduled (visible via
cron list) nextRunAtMspasses without execution- Job state shows "Last: Xh ago" and keeps incrementing
- No error in logs related to cron execution
- Gateway otherwise functions normally (agents respond to messages)
Workaround
Reverting to a monolithic config (no $include) restores cron execution immediately.
Additional Context
- The plugin loader shows
Cannot find module 'zod'but this seems unrelated (existed before the issue) - Jobs manually triggered via
cron runwork fine - The issue persisted across multiple gateway restarts with the modular config
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels