mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-27 15:20:41 +00:00
heartbeat: add empty HEARTBEAT.md compatibility policy
This commit is contained in:
@@ -159,10 +159,13 @@ Example:
|
||||
|
||||
By default, OpenClaw runs a heartbeat every 30 minutes with the prompt:
|
||||
`Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`
|
||||
Set `agents.defaults.heartbeat.every: "0m"` to disable.
|
||||
Set `agents.defaults.heartbeat.every: "0m"` to disable heartbeat scheduling entirely.
|
||||
|
||||
- If `HEARTBEAT.md` exists but is effectively empty (only blank lines and markdown headers like `# Heading`), OpenClaw skips the heartbeat run to save API calls.
|
||||
- If the file is missing, the heartbeat still runs and the model decides what to do.
|
||||
- If `HEARTBEAT.md` exists, OpenClaw includes it as optional heartbeat guidance.
|
||||
- If the file is missing, heartbeat still runs and the model decides what to do.
|
||||
- If `HEARTBEAT.md` only has comments/headers, behavior depends on `agents.defaults.heartbeat.emptyFilePolicy`:
|
||||
- `run`: heartbeat still runs (fresh-install default)
|
||||
- `skip`: heartbeat is skipped for that tick (compat default for existing config files)
|
||||
- If the agent replies with `HEARTBEAT_OK` (optionally with short padding; see `agents.defaults.heartbeat.ackMaxChars`), OpenClaw suppresses outbound delivery for that heartbeat.
|
||||
- Heartbeats run full agent turns — shorter intervals burn more tokens.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user