为什么 OpenClaw sandbox 应该成为默认安全模式
OpenClaw 风格的编码代理很强,因为它们能运行命令、编辑文件、安装依赖,并在后台持续工作。也正因为如此,在它们接触真实仓库、共享 .env 或生产部署路径之前,必须先进入 sandbox。
Office Claws 不是原生 OpenClaw runtime。但安全运营模型仍然适用:控制平面留在本地,高风险工作放进可丢弃 runner,Codex-backed 代理只在受限 workspace 内执行。如果你还在选择执行层,先看 OpenClaw vs Codex。本文关注代理外层的 sandbox。
sandbox 里应该包含什么
好的 OpenClaw sandbox 应该比开发者电脑更小,也比普通 VPS 更严格。
| 层级 | Sandbox 规则 | 为什么重要 |
|---|---|---|
| 源码 | 每个任务一个新分支或 worktree | 避免一个代理破坏另一个任务 |
| 密钥 | 使用限权 token,不给 operator vault | 降低 prompt injection 后的影响面 |
| 网络 | 允许包仓库和 GitHub;其他流量需审查 | 减少外泄和意外回调 |
| 文件系统 | 可写 repo、临时 cache,不污染 home | 清理更可靠 |
| Runtime | CPU、内存、时间和花费限制 | 阻止失控命令和 API 循环 |
| 输出 | PR、patch、logs 和测试结果 | 让人工 review 可读 |
这就是 OpenClaw security best practices 的落地版本:代理有价值,但它的环境可能被不可信代码影响。
实用架构
安全结构包含四部分:本地操作机器、credential broker、一次性 runner 和 review gate。
Office Claws desktop
├─ 本地保存长期 provider 与 GitHub credentials
├─ 审批任务、分支、预算和 runner 策略
└─ 回传 logs 与 status
│
▼
credential broker
└─ 为一个任务签发短期 repo token
│
▼
VPS sandbox
├─ 全新 checkout 或 worktree
├─ Codex-backed 执行
├─ 磁盘上没有 production secrets
└─ 完成后销毁或重置
│
▼
PR / patch review远程执行可参考 OpenClaw on VPS 和 OpenClaw desktop manager。Office Claws for OpenClaw users 在这里是本地优先的管理层:协调 runner、集中可见性,避免把某个终端窗口变成控制平面。
sandbox 应该限制哪些故障
- 来自仓库内容的 prompt injection。 Issue、README、package scripts 和 fixtures 都不能默认可信。
- 被污染的依赖。 runner 可以安装包,但必须是可丢弃的。
- 失控成本。 对模型调用、运行时间、队列和重试设置预算,避免昂贵循环。
- 脏 workspace。 一个任务对应一个分支、一个 worktree、一个 review 表面。
因此 OpenClaw monitoring 必须和 sandbox 放在一起:logs 与恢复机制本身就是安全控制。
最小可用 checklist
- 每个重要任务创建新的 worktree 或 VM。
- 使用 repo-scoped、短有效期 GitHub token。
- provider keys 留在本地或 broker 中。
- 不让 production credentials 进入 runner。
- 在 sandbox 中运行测试,并随 patch 发布结果。
- 让人不用 SSH 挖日志也能查看 logs。
- 任务完成后删除或重置 runner。
目标不是削弱代理,而是让错误变得便宜、可见、可回滚。
Office Claws 的位置
Office Claws 让这种模式更容易运营:desktop management、VPS runner provisioning、queue visibility、log review 和更安全的本地密钥处理。它今天是 Codex-first;诚实的说法不是“Office Claws 原生运行 OpenClaw”,而是 OpenClaw 用户需要一个稳定的运营层来管理同类自主编码工作流。
继续阅读 Office Claws for OpenClaw users、OpenClaw vs Codex,以及 OpenClaw secrets management。
建议
把 sandbox 设为默认:本地控制、远程隔离、可见 logs、限权 tokens,并在任何重要变更前进行 review。