From 71caa53207eec17e5004c2fb12da12e279047c61 Mon Sep 17 00:00:00 2001 From: "openclaw-docs-sync[bot]" Date: Wed, 22 Apr 2026 01:52:34 +0000 Subject: [PATCH] chore(sync): mirror docs from openclaw/openclaw@529577e0457b575a741d0c35dff8c5b03c63a3b3 --- .openclaw-sync/source.json | 4 ++-- docs/concepts/dreaming.md | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index b6d787807..5cb224d8d 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "6a68f1dd57ab6274f9ede0d123210575100313fa", - "syncedAt": "2026-04-22T01:37:41.128Z" + "sha": "529577e0457b575a741d0c35dff8c5b03c63a3b3", + "syncedAt": "2026-04-22T01:52:33.890Z" } diff --git a/docs/concepts/dreaming.md b/docs/concepts/dreaming.md index 719cb3e62..e844af242 100644 --- a/docs/concepts/dreaming.md +++ b/docs/concepts/dreaming.md @@ -229,8 +229,20 @@ When enabled, the Gateway **Dreams** tab shows: - a distinct grounded Scene lane for staged historical replay entries - an expandable Dream Diary reader backed by `doctor.memory.dreamDiary` +## Troubleshooting + +### Dreaming never runs (status shows blocked) + +The managed dreaming cron rides the default agent's heartbeat. If heartbeat is not firing for that agent, the cron enqueues a system event that nobody consumes and dreaming silently does not run. Both `openclaw memory status` and `/dreaming status` will report `blocked` in that case and name the agent whose heartbeat is the blocker. + +Two common causes: + +- Another agent declares an explicit `heartbeat:` block. When any entry in `agents.list` has its own `heartbeat` block, only those agents heartbeat — the defaults stop applying to everyone else, so the default agent can go silent. Move the heartbeat settings to `agents.defaults.heartbeat`, or add an explicit `heartbeat` block on the default agent. See [Scope and precedence](/gateway/heartbeat#scope-and-precedence). +- `heartbeat.every` is `0`, empty, or unparseable. The cron has no interval to schedule against, so the heartbeat is effectively disabled. Set `every` to a positive duration such as `30m`. See [Defaults](/gateway/heartbeat#defaults). + ## Related +- [Heartbeat](/gateway/heartbeat) - [Memory](/concepts/memory) - [Memory Search](/concepts/memory-search) - [memory CLI](/cli/memory)