沙盒 CLI
管理基于 Docker 的沙盒容器以实现隔离的代理执行。概述
OpenClaw 可以在隔离的 Docker 容器中运行代理以确保安全。sandbox 命令帮助您管理这些容器,特别是在更新或配置更改后。
命令
openclaw sandbox explain
检查有效的沙盒模式/范围/工作区访问、沙盒工具策略和提升的门控(带有修复配置键路径)。
openclaw sandbox list
列出所有沙盒容器及其状态和配置。
- 容器名称和状态(运行/停止)
- Docker 镜像以及是否与配置匹配
- 年龄(自创建以来的时间)
- 空闲时间(自上次使用以来的时间)
- 关联的会话/代理
openclaw sandbox recreate
删除沙盒容器以强制使用更新的镜像/配置重新创建。
--all:重新创建所有沙盒容器--session <key>:为特定会话重新创建容器--agent <id>:为特定代理重新创建容器--browser:仅重新创建浏览器容器--force:跳过确认提示
用例
更新 Docker 镜像后
更改沙盒配置后
更改 setupCommand 后
仅针对特定代理
为什么需要这个?
问题: 当您更新沙盒 Docker 镜像或配置时:- 现有容器继续使用旧设置运行
- 容器仅在 24 小时不活动后才被修剪
- 定期使用的代理会无限期地保持旧容器运行
openclaw sandbox recreate 强制删除旧容器。它们将在下次需要时自动使用当前设置重新创建。
提示:优先使用 openclaw sandbox recreate 而不是手动 docker rm。它使用网关的容器命名,并在范围/会话键更改时避免不匹配。
配置
沙盒设置位于~/.openclaw/openclaw.json 的 agents.defaults.sandbox 下(每个代理覆盖进入 agents.list[].sandbox):