From 043b092f0351c1adb9e9921991e4ffef6fc556dd Mon Sep 17 00:00:00 2001 From: "openclaw-docs-sync[bot]" Date: Mon, 27 Apr 2026 08:23:52 +0000 Subject: [PATCH] chore(sync): mirror docs from openclaw/openclaw@444acde1de43dbb8adec7a882ae1f16fbb093b69 --- .openclaw-sync/source.json | 4 ++-- docs/cli/doctor.md | 2 +- docs/install/updating.md | 7 +++++++ 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index a18edafd0..a9c2d8f8c 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "9611260225ed32ad5a7339c5d0ca205d70370dd9", - "syncedAt": "2026-04-27T08:20:02.392Z" + "sha": "444acde1de43dbb8adec7a882ae1f16fbb093b69", + "syncedAt": "2026-04-27T08:22:27.877Z" } diff --git a/docs/cli/doctor.md b/docs/cli/doctor.md index c3ac4c0c1..f622d6bc3 100644 --- a/docs/cli/doctor.md +++ b/docs/cli/doctor.md @@ -43,7 +43,7 @@ Notes: - `--fix` (alias for `--repair`) writes a backup to `~/.openclaw/openclaw.json.bak` and drops unknown config keys, listing each removal. - State integrity checks now detect orphan transcript files in the sessions directory and can archive them as `.deleted.` to reclaim space safely. - Doctor also scans `~/.openclaw/cron/jobs.json` (or `cron.store`) for legacy cron job shapes and can rewrite them in place before the scheduler has to auto-normalize them at runtime. -- Doctor repairs missing bundled plugin runtime dependencies without writing into packaged global installs. For root-owned npm installs or hardened systemd units, set `OPENCLAW_PLUGIN_STAGE_DIR` to a writable directory such as `/var/lib/openclaw/plugin-runtime-deps`. +- Doctor repairs missing bundled plugin runtime dependencies without writing into packaged global installs. For root-owned npm installs or hardened systemd units, set `OPENCLAW_PLUGIN_STAGE_DIR` to a writable directory such as `/var/lib/openclaw/plugin-runtime-deps`; it can also be a path-list such as `/opt/openclaw/plugin-runtime-deps:/var/lib/openclaw/plugin-runtime-deps`, where earlier roots are read-only lookup layers and the final root is the repair target. - Set `OPENCLAW_SERVICE_REPAIR_POLICY=external` when another supervisor owns the gateway lifecycle. Doctor still reports gateway/service health and applies non-service repairs, but skips service install/start/restart/bootstrap and legacy service cleanup. - Doctor auto-migrates legacy flat Talk config (`talk.voiceId`, `talk.modelId`, and friends) into `talk.provider` + `talk.providers.`. - Repeat `doctor --fix` runs no longer report/apply Talk normalization when the only difference is object key order. diff --git a/docs/install/updating.md b/docs/install/updating.md index 2916791de..fedba9fe2 100644 --- a/docs/install/updating.md +++ b/docs/install/updating.md @@ -118,6 +118,13 @@ bun add -g openclaw@latest ReadWritePaths=/var/lib/openclaw /home/openclaw/.openclaw /tmp ``` + `OPENCLAW_PLUGIN_STAGE_DIR` also accepts a path list. OpenClaw resolves bundled plugin runtime dependencies left-to-right across the listed roots, treats earlier roots as read-only preinstalled layers, and installs or repairs only into the final writable root: + + ```ini + Environment=OPENCLAW_PLUGIN_STAGE_DIR=/opt/openclaw/plugin-runtime-deps:/var/lib/openclaw/plugin-runtime-deps + ReadWritePaths=/var/lib/openclaw /home/openclaw/.openclaw /tmp + ``` + If `OPENCLAW_PLUGIN_STAGE_DIR` is not set, OpenClaw uses `$STATE_DIRECTORY` when systemd provides it, then falls back to `~/.openclaw/plugin-runtime-deps`. The repair step treats that stage as an OpenClaw-owned local package root and ignores user npm prefix and global settings, so global-install npm config does not redirect bundled plugin dependencies into `~/node_modules` or the global package tree.