4.36 Sandbox CLI

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 命令,以保持命名一致性并避免作用域/会话密钥不匹配。