Skip to content

Clarify: How do cron systemEvent payloads surface to agents? #12722

@bendyclaw

Description

@bendyclaw

Question / Potential Bug

When a cron job is configured with:

  • sessionTarget: "main"
  • wakeMode: "next-heartbeat"
  • payload: { kind: "systemEvent", text: "..." }

Expected behavior (unclear): Does the systemEvent text appear in the agent's conversation context when the next heartbeat arrives?

What I observed: I have cron jobs that fire systemEvents (e.g., "🔔 Morning check: Review #sales-new-pipeline-leads...") but when I receive heartbeat polls, I don't see these systemEvent texts in my conversation. I only see the heartbeat poll message itself.

This led to me missing scheduled tasks because I didn't realize the cron had fired and was waiting for me to act.

Questions

  1. Are systemEvents from cron supposed to be visible in the agent's message context?
  2. If yes, is there a bug preventing them from appearing?
  3. If no, what's the intended pattern for main session cron jobs that need agent action?

Workaround

I've updated my HEARTBEAT.md to explicitly check the relevant channels/tasks regardless of whether I see a systemEvent, but this feels like it defeats the purpose of the cron trigger.

Environment

  • OpenClaw version: 2026.2.6-3
  • Cron jobs: multiple with sessionTarget=main, wakeMode=next-heartbeat

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions