The documentation for the heartbeat and cron job system does not clearly explain the relationship between the global workspace heartbeat and multiple agent contexts (agents/<id>/).
What's unclear
Several points remain unclear:
- Does the heartbeat have access to session history across agents? The docs state it runs in a
named("heartbeat") internal session, but it's unclear what visibility it has into other agents' sessions or their conversation history.
- Are system events cross-agent? When a background
exec finishes in Agent A's session, does that event appear in the heartbeat's event queue? Is the event queue workspace-scoped or per-agent?
- How can a cron job target a specific agent? When creating a job via the
cron tool, can you specify which agent's context (e.g., agents/main/BOOT.md) the agent turn should use?
- Are
agents/<id>/BOOT.md and agents/<id>/HEARTBEAT.md supported? The docs mention workspace-level BOOT.md and HEARTBEAT.md, but it's unclear whether agent-level versions are honored or ignored. If per-agent heartbeats are not supported, this should be stated explicitly.
- What context is injected into the heartbeat prompt? Does the heartbeat turn receive workspace context files (
SOUL.md, MEMORY.md, TOOLS.md, etc.) in addition to HEARTBEAT.md? If so, from which directory — the global workspace or a specific agent?
Suggested improvement
Add a "Heartbeat & Agent Architecture" section to the scheduling docs that clarifies:
- Execution scope of the heartbeat (workspace-global vs. per-agent capability)
- Visibility: What is visible/invisible from the heartbeat (sessions, events, workspace files)
- Cron job targeting: How cron jobs interact with named agents when multiple agents exist
- Prompt context: What full context is assembled for a heartbeat turn (which files, from which directory)
- A diagram showing the relationship: heartbeat → agents → sessions → system events queue
Additional context
In a multi-agent configuration (multiple agents/<id>/ directories), it's unclear whether the heartbeat can consolidate memory or perform actions scoped to a specific agent, or whether it operates purely at the global workspace level. For example, if using Honcho as a memory system, can the heartbeat create/update conclusions for a specific agent's peers, or is that outside its scope?
The documentation for the heartbeat and cron job system does not clearly explain the relationship between the global workspace heartbeat and multiple agent contexts (
agents/<id>/).What's unclear
Several points remain unclear:
named("heartbeat")internal session, but it's unclear what visibility it has into other agents' sessions or their conversation history.execfinishes in Agent A's session, does that event appear in the heartbeat's event queue? Is the event queue workspace-scoped or per-agent?crontool, can you specify which agent's context (e.g.,agents/main/BOOT.md) the agent turn should use?agents/<id>/BOOT.mdandagents/<id>/HEARTBEAT.mdsupported? The docs mention workspace-levelBOOT.mdandHEARTBEAT.md, but it's unclear whether agent-level versions are honored or ignored. If per-agent heartbeats are not supported, this should be stated explicitly.SOUL.md,MEMORY.md,TOOLS.md, etc.) in addition toHEARTBEAT.md? If so, from which directory — the global workspace or a specific agent?Suggested improvement
Add a "Heartbeat & Agent Architecture" section to the scheduling docs that clarifies:
Additional context
In a multi-agent configuration (multiple
agents/<id>/directories), it's unclear whether the heartbeat can consolidate memory or perform actions scoped to a specific agent, or whether it operates purely at the global workspace level. For example, if using Honcho as a memory system, can the heartbeat create/update conclusions for a specific agent's peers, or is that outside its scope?