





























@@ -363,31 +363,66 @@ Example (read-only source + an extra data directory):
363363364364Default Docker image: `openclaw-sandbox:bookworm-slim`
365365366+<Note>
367+**Source checkout vs npm install**
368+369+The `scripts/sandbox-setup.sh`, `scripts/sandbox-common-setup.sh`, and `scripts/sandbox-browser-setup.sh` helper scripts are only available when running from a [source checkout](https://github.com/openclaw/openclaw). They are not included in the npm package.
370+371+If you installed OpenClaw via `npm install -g openclaw`, use the inline `docker build` commands shown below instead.
372+</Note>
373+366374<Steps>
367375<Step title="Build the default image">
376+From a source checkout:
377+368378```bash
369379scripts/sandbox-setup.sh
370380```
371381382+From an npm install (no source checkout needed):
383+384+```bash
385+docker build -t openclaw-sandbox:bookworm-slim - <<'DOCKERFILE'
386+FROM debian:bookworm-slim
387+ENV DEBIAN_FRONTEND=noninteractive
388+RUN apt-get update && apt-get install -y --no-install-recommends \
389+ bash ca-certificates curl git jq python3 ripgrep \
390+ && rm -rf /var/lib/apt/lists/*
391+RUN useradd --create-home --shell /bin/bash sandbox
392+USER sandbox
393+WORKDIR /home/sandbox
394+CMD ["sleep", "infinity"]
395+DOCKERFILE
396+```
397+372398The default image does **not** include Node. If a skill needs Node (or other runtimes), either bake a custom image or install via `sandbox.docker.setupCommand` (requires network egress + writable root + root user).
373399374-OpenClaw does not silently substitute plain `debian:bookworm-slim` when `openclaw-sandbox:bookworm-slim` is missing. Sandbox runs that target the default image fail fast with a build instruction until you run `scripts/sandbox-setup.sh`, because the bundled image carries `python3` for sandbox write/edit helpers.
400+OpenClaw does not silently substitute plain `debian:bookworm-slim` when `openclaw-sandbox:bookworm-slim` is missing. Sandbox runs that target the default image fail fast with a build instruction until you build it, because the bundled image carries `python3` for sandbox write/edit helpers.
375401376402</Step>
377403<Step title="Optional: build the common image">
378404For a more functional sandbox image with common tooling (for example `curl`, `jq`, `nodejs`, `python3`, `git`):
379405406+From a source checkout:
407+380408```bash
381409scripts/sandbox-common-setup.sh
382410```
383411412+From an npm install, build the default image first (see above), then build the common image on top using the [`Dockerfile.sandbox-common`](https://github.com/openclaw/openclaw/blob/main/Dockerfile.sandbox-common) from the repository.
413+384414Then set `agents.defaults.sandbox.docker.image` to `openclaw-sandbox-common:bookworm-slim`.
385415386416</Step>
387417<Step title="Optional: build the sandbox browser image">
418+From a source checkout:
419+388420```bash
389421scripts/sandbox-browser-setup.sh
390422```
423+424+From an npm install, build using the [`Dockerfile.sandbox-browser`](https://github.com/openclaw/openclaw/blob/main/Dockerfile.sandbox-browser) from the repository.
425+391426</Step>
392427</Steps>
393428此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。