openclaw - 💡(How to fix) Fix Breaking config change in v2026.4.21: dreaming.storage schema migration breaks CLI on upgrade [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#70407Fetched 2026-04-23 07:25:11
View on GitHub
Comments
0
Participants
1
Timeline
0
Reactions
0
Participants

Error Message

After upgrading from v2026.4.15 to v2026.4.21 via npm, the CLI (openclaw status, openclaw doctor, etc.) fails completely with a config validation error: 4. See config validation error, CLI exits with code 1

  • The error message should include a hint about the schema change and how to fix it, OR
  1. Add a friendly error hint: "dreaming.storage changed from string to object in v2026.4.21. Run openclaw doctor --fix to auto-migrate."

Root Cause

The dreaming.storage config field changed its schema from a string (e.g. "both") to an object (e.g. { "mode": "both", "separateReports": false }) in v2026.4.21, but there is no automatic migration for existing configs.

This means:

  1. After npm update -g openclaw, the CLI becomes unusable
  2. Users have no hint about what changed or how to fix it
  3. openclaw doctor --fix does not help (also blocked by config validation)

Fix Action

Workaround

Manually edit openclaw.json:

// OLD (string - breaks in v2026.4.21):
"storage": "both"

// NEW (object - works in v2026.4.21):
"storage": {
  "mode": "both",
  "separateReports": false
}

Code Example

Config invalid
File: $OPENCLAW_HOME/.openclaw/openclaw.json
Problem:
  - plugins.entries.memory-core.config.dreaming.storage: invalid config: must be object

---

// OLD (string - breaks in v2026.4.21):
"storage": "both"

// NEW (object - works in v2026.4.21):
"storage": {
  "mode": "both",
  "separateReports": false
}
RAW_BUFFERClick to expand / collapse

Bug Description

After upgrading from v2026.4.15 to v2026.4.21 via npm, the CLI (openclaw status, openclaw doctor, etc.) fails completely with a config validation error:

Config invalid
File: $OPENCLAW_HOME/.openclaw/openclaw.json
Problem:
  - plugins.entries.memory-core.config.dreaming.storage: invalid config: must be object

Root Cause

The dreaming.storage config field changed its schema from a string (e.g. "both") to an object (e.g. { "mode": "both", "separateReports": false }) in v2026.4.21, but there is no automatic migration for existing configs.

This means:

  1. After npm update -g openclaw, the CLI becomes unusable
  2. Users have no hint about what changed or how to fix it
  3. openclaw doctor --fix does not help (also blocked by config validation)

Steps to Reproduce

  1. Have a working OpenClaw v2026.4.15 with dreaming.storage set to "both" (string)
  2. Run npm update -g openclaw to v2026.4.21
  3. Run openclaw status
  4. See config validation error, CLI exits with code 1

Expected Behavior

  • Old string values should be auto-migrated to the new object format, OR
  • The error message should include a hint about the schema change and how to fix it, OR
  • openclaw doctor --fix should auto-migrate this field

Workaround

Manually edit openclaw.json:

// OLD (string - breaks in v2026.4.21):
"storage": "both"

// NEW (object - works in v2026.4.21):
"storage": {
  "mode": "both",
  "separateReports": false
}

Environment

  • OS: Windows 11 26200 x64
  • Node.js: v24.14.0
  • OpenClaw: v2026.4.21
  • Installation: global npm
  • Channel: QQ Bot

Suggested Fix

  1. Add a config migration step that converts string dreaming.storage values to the new object format
  2. Add a friendly error hint: "dreaming.storage changed from string to object in v2026.4.21. Run openclaw doctor --fix to auto-migrate."

Thanks for the great work on OpenClaw!

extent analysis

TL;DR

Manually editing the openclaw.json file to update the dreaming.storage field from a string to an object format is the most likely fix.

Guidance

  • Verify the current version of OpenClaw is v2026.4.21 and the dreaming.storage field in openclaw.json is still in the old string format.
  • Update the dreaming.storage field in openclaw.json to the new object format: "storage": { "mode": "both", "separateReports": false }.
  • After updating the config file, re-run the affected CLI commands (openclaw status, openclaw doctor, etc.) to verify the fix.
  • Consider submitting a feature request to add automatic config migration for future schema changes.

Example

// Before (string format):
{
  "plugins": {
    "entries": {
      "memory-core": {
        "config": {
          "dreaming": {
            "storage": "both"
          }
        }
      }
    }
  }
}

// After (object format):
{
  "plugins": {
    "entries": {
      "memory-core": {
        "config": {
          "dreaming": {
            "storage": {
              "mode": "both",
              "separateReports": false
            }
          }
        }
      }
    }
  }
}

Notes

This fix assumes the issue is solely due to the schema change in the dreaming.storage field. If other config fields have changed, additional updates may be necessary.

Recommendation

Apply the workaround by manually editing the openclaw.json file, as the issue is caused by a specific schema change that requires a one-time update.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix Breaking config change in v2026.4.21: dreaming.storage schema migration breaks CLI on upgrade [1 participants]