Configure and manage OpenClaw's Dreaming system — the background memory consolidation that promotes short-term notes into long-term MEMORY.md.
Dreaming automatically:
MEMORY.mdIt runs as a background cron job tied to heartbeat.
Add to openclaw.json:
json5
{
plugins: {
entries: {
"memory-core": {
config: {
dreaming: {
enabled: true,
// Optional: custom schedule (default: 03:00 daily)
frequency: "0 3 * * *",
timezone: "Asia/Jerusalem",
},
},
},
},
},
}
Then restart gateway: openclaw gateway restart
json5
{
plugins: {
entries: {
"memory-core": {
config: {
dreaming: {
enabled: true,
},
},
},
"skill-workshop": {
enabled: true,
config: {
autoCapture: true,
approvalPolicy: "pending",
reviewMode: "hybrid",
},
},
},
},
}
json5
{
plugins: {
entries: {
"active-memory": {
enabled: true,
config: {
enabled: true,
agents: ["main"],
allowedChatTypes: ["direct"],
modelFallback: "zai/glm-5-turbo",
queryMode: "recent",
promptStyle: "balanced",
timeoutMs: 15000,
},
},
"memory-core": {
config: {
dreaming: { enabled: true },
},
},
},
},
}
bash
# Via slash command (in chat)
/dreaming status
# Via CLI
openclaw memory status --deep
bash
# Preview what would be promoted
openclaw memory promote
# Apply promotion
openclaw memory promote --apply
# Limit candidates
openclaw memory promote --limit 5
# Explain why a specific topic would/wouldn't promote
openclaw memory promote-explain "claw-earn wallet"
bash
# View dream diary
cat ~/openclaw-data/workspace/DREAMS.md
# View specific phase reports
ls ~/openclaw-data/workspace/memory/dreaming/
cat ~/openclaw-data/workspace/memory/dreaming/deep/2026-04-24.md
bash
# Preview REM reflections
openclaw memory rem-harness
# Preview as JSON
openclaw memory rem-harness --json
bash
# Preview grounded diary from past notes
openclaw memory rem-harness --path memory/2026-04-23.md --grounded
# Apply backfill
openclaw memory rem-backfill --path memory/2026-04-23.md
# Stage for deep promotion
openclaw memory rem-backfill --path memory/2026-04-23.md --stage-short-term
# Rollback if needed
openclaw memory rem-backfill --rollback
PhasePurposeWrites to MEMORY.md?LightSort and stage recent notesNoREMExtract patterns and themesNoDeepPromote strong candidatesYes
Deep ranking signals:
ProblemCheckDreaming never runsheartbeat.every must be > 0 (e.g., 30m)Status shows "blocked"Default agent needs heartbeat enabledNo promotionsNeed more daily notes and varietyMEMORY.md growing too fastAdjust minScore threshold
Dreaming rides the default agent's heartbeat. If heartbeat is broken:
agents.defaults.heartbeat.every — must be positive (e.g., "30m")/dreaming status will say "blocked" if heartbeat is missingfrequency)DREAMS.md is for human reading; MEMORY.md is for the agent--rollback