openclaw - 💡(How to fix) Fix Docker to host migration can leave workspace-local and workspace-local/local paths split, breaking local secrets assumptions [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#63266Fetched 2026-04-09 07:56:05
View on GitHub
Comments
0
Participants
1
Timeline
0
Reactions
0
Author
Participants

The migrated state can leave operational files and assumptions split between:

  • ~/.openclaw/workspace-local/
  • ~/.openclaw/workspace-local/local/

In my case:

  • active writable workspace was ~/.openclaw/workspace-local/local
  • a Home Assistant secret still lived at ~/.openclaw/workspace-local/secrets/homeassistant.md
  • local operational logic initially assumed the secret should be under the active workspace root, which led to failed lookups and confusing behavior

Error Message

  • warn when active workspace and secret/config locations are inconsistent

Root Cause

Even when the system mostly works, this split layout creates subtle breakage:

  • local docs/instructions may point to the wrong root
  • agents may search for secrets in the active workspace and miss them
  • warm-up or automation code may succeed only because it still references an older parent path
  • troubleshooting becomes confusing because both directories look plausible
RAW_BUFFERClick to expand / collapse

After migrating a local OpenClaw setup from Docker-era state to a native host install, I ran into a second path-layout problem beyond the /home/node/... absolute-path leakage already reported elsewhere.

Summary

The migrated state can leave operational files and assumptions split between:

  • ~/.openclaw/workspace-local/
  • ~/.openclaw/workspace-local/local/

In my case:

  • active writable workspace was ~/.openclaw/workspace-local/local
  • a Home Assistant secret still lived at ~/.openclaw/workspace-local/secrets/homeassistant.md
  • local operational logic initially assumed the secret should be under the active workspace root, which led to failed lookups and confusing behavior

Why this is a problem

Even when the system mostly works, this split layout creates subtle breakage:

  • local docs/instructions may point to the wrong root
  • agents may search for secrets in the active workspace and miss them
  • warm-up or automation code may succeed only because it still references an older parent path
  • troubleshooting becomes confusing because both directories look plausible

Concrete example

Observed working secret path:

  • ~/.openclaw/workspace-local/secrets/homeassistant.md

Observed active workspace:

  • ~/.openclaw/workspace-local/local

Result:

  • agent/user-facing operational assumptions drifted
  • secret lookup was performed in the wrong place during troubleshooting
  • I had to manually normalize the setup by moving/copying the secret into the active workspace and updating local references to a single canonical path

Expected behavior

Migration or doctor tooling should either:

  1. normalize the layout to one canonical workspace root
  2. migrate shared secrets/config into the active workspace layout
  3. clearly report that secrets/config remain one level above the active workspace
  4. provide official guidance for workspace-local vs workspace-local/local

Suggested fixes

  • detect split workspace-local / workspace-local/local layouts during migration/startup
  • warn when active workspace and secret/config locations are inconsistent
  • offer an automatic repair or migration step
  • document the canonical expected location for secrets after Docker -> host migration

This looks related to the broader class of migration path/layout issues, but is distinct from the /home/node absolute-path leakage because it affects path conventions and operator expectations even after the runtime is otherwise functioning.

extent analysis

TL;DR

To resolve the issue, normalize the OpenClaw setup by migrating shared secrets and configuration into the active workspace layout, ensuring a single canonical path for operational files and assumptions.

Guidance

  • Detect and warn about split workspace-local and workspace-local/local layouts during migration or startup to prevent inconsistencies.
  • Offer an automatic repair or migration step to normalize the setup, ensuring secrets and configuration are in the expected location.
  • Document the canonical expected location for secrets after migrating from Docker to a native host install to avoid confusion.
  • Verify the fix by checking that all operational files and assumptions are correctly located under the active workspace root, and that secret lookups and automation code function as expected.

Example

No specific code snippet is provided as the issue is more related to configuration and setup rather than code implementation.

Notes

This solution assumes that the migration tooling can be updated to handle the normalization of the workspace layout. If the tooling is not capable of this, manual intervention may be required to move/copy secrets and update local references.

Recommendation

Apply a workaround by manually normalizing the setup and documenting the canonical expected location for secrets, as an official fix may take time to be implemented. This will help mitigate the issue until a more permanent solution is available.

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…

FAQ

Expected behavior

Migration or doctor tooling should either:

  1. normalize the layout to one canonical workspace root
  2. migrate shared secrets/config into the active workspace layout
  3. clearly report that secrets/config remain one level above the active workspace
  4. provide official guidance for workspace-local vs workspace-local/local

Still need to ship something?

×6

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

Back to top recommendations

TRENDING