Sandbox CLI 管理基于 Docker 的隔离容器,用于安全执行代理。这些工具帮助在更新或配置更改后管理容器。
概述
openclaw sandbox 命令提供了一套管理 Docker 沙箱容器的工具。沙箱为代理执行提供安全隔离的环境,确保代理操作不会影响宿主系统。
核心命令
sandbox explain
显示当前有效的沙箱配置,包括模式、作用域、工作区访问权限和策略设置。
# 查看沙箱配置详情
openclaw sandbox explain
sandbox list
显示所有容器及其状态、Docker 镜像详情、运行时长、空闲时间以及关联的会话/代理。
# 列出所有沙箱容器
openclaw sandbox list
sandbox recreate
移除容器以强制使用新镜像或配置进行更新,支持按会话、代理或容器类型进行针对性重建。
# 重建所有容器
openclaw sandbox recreate
# 强制重建(跳过确认)
openclaw sandbox recreate --force
# 针对特定代理重建
openclaw sandbox recreate --agent my-agent
配置选项
沙箱设置存储在 ~/.openclaw/openclaw.json 的 agents 部分中。
模式选项 (mode)
- off - 禁用沙箱
- non-main - 仅对非主会话启用沙箱
- all - 对所有会话启用沙箱
作用域选项 (scope)
- session - 每个会话一个容器
- agent - 每个代理一个容器
- shared - 共享容器
主要使用场景
Docker 镜像更新后
拉取新镜像并更新引用 Docker 镜像的配置路径后,需要重建容器:
# 拉取新镜像
docker pull openclaw/sandbox:latest
# 重建容器以使用新镜像
openclaw sandbox recreate
配置更改后
修改沙箱设置后需要重建容器才能应用新配置。设置命令的修改也需要重建容器。
为什么需要手动重建
注意
即使在更新后,现有容器仍会继续使用旧设置运行。由于容器仅在 24 小时不活动后才会自动清理,经常使用的代理会无限期保持过时的容器。
最佳实践
推荐
建议使用
openclaw sandbox recreate 而不是手动 Docker 命令,以保持命名一致性并避免作用域/会话密钥不匹配。