Summary
Cron jobs with delivery.mode: announce fail to deliver results via Discord DM when both Telegram and Discord channels are enabled.
Environment
- OpenClaw version: 2026.3.28 (f9b1079)
- macOS, launchd gateway
- Channels: Discord + Telegram both enabled
Reproduction
- Have both
channels.discord and channels.telegram enabled in config
- Create a cron job with announce delivery:
openclaw cron edit <id> --announce --channel discord --to "user:339338572354158602"
- Run the job:
openclaw cron run <id>
- Job completes but delivery fails
Observed Behavior
Error alternates between two messages depending on config:
-
With --channel discord or --channel discord:default:
-
With --channel last:
Channel is required when multiple channels are configured: telegram, discord
Set delivery.channel explicitly or use a main session with a previous channel.
Expected Behavior
--channel discord --to "user:<id>" should resolve correctly and deliver to the Discord DM.
Workaround
Using --no-deliver (silent mode) works. The job runs fine, just no delivery.
Notes
- Delivery worked in earlier versions (pre-2026.3.28)
- The isolated cron session appears unable to resolve the channel reference even with explicit config
- Single-account mode (no
accounts: block in discord config)
Summary
Cron jobs with
delivery.mode: announcefail to deliver results via Discord DM when both Telegram and Discord channels are enabled.Environment
Reproduction
channels.discordandchannels.telegramenabled in configopenclaw cron run <id>Observed Behavior
Error alternates between two messages depending on config:
With
--channel discordor--channel discord:default:With
--channel last:Expected Behavior
--channel discord --to "user:<id>"should resolve correctly and deliver to the Discord DM.Workaround
Using
--no-deliver(silent mode) works. The job runs fine, just no delivery.Notes
accounts:block in discord config)