Cloudflare 本周把 Sandboxes 与 Containers 推到 GA——一对旨在为 AI agent 工作负载提供持久、隔离 Linux 环境的产品。其叙事承自 Cloudflare 上周关于企业级 MCP 架构的那篇:如果本地 agent 执行是一种安全责任,那么答案就是受治理的远端执行,并设立 agent 跨不过的凭据边界。Sandboxes 与 Containers 就是这个回答的执行侧。

有五个原语值得点名。通过出口 Workers 扮演 egress proxy 的安全凭据注入——凭据在出站请求的网络层被注入,因此运行在 sandbox 内部的 agent 永远看不到 token。PTY 终端会话经由 WebSocket 代理,替换了此前请求-响应式的 shell 模拟,换成真正的伪终端。持久代码解释器在多次执行调用之间保持状态(变量与 import 在步骤之间存活,像 Jupyter 内核)。基于 Linux inotify 的文件系统监控,让 agent 能实时响应文件变化。最后是基于 snapshot 的会话恢复,提供近乎瞬时的还原,外加 fork:你可以从一个 snapshot 把运行中的 sandbox 分叉成若干并行探索,这就是让「agent 并行尝试 N 种方案」变便宜的那个原语。

性能与价格数字说出了部署故事。冷启动加 git clone 加 npm install 大约 30 秒;从 snapshot 恢复大约 2 秒。Active-CPU 计价为每 vCPU-秒 0.00002 美元,这意味着你只为实际用掉的周期付费,当 agent 空等模型输出时这一点尤其要紧。标准套餐的并发上限为 15,000 lite、6,000 basic、1,000+ larger。生产客户已点名 Figma。snapshot 功能未来几周仍在滚动放量,因此「GA」标签带一条尾缀。SDK 还在 0.8.9,说明 TypeScript API 仍会继续演进。

给 builder 两点。其一,「agent 永远看不到 token」这条原语是本次发布的承重墙。如果你在建 agent 工具,从「agent 持有凭据并承诺负责任地使用」转向「agent 发起请求、egress proxy 注入凭据、agent 无法带走它从未持有过的东西」,是唯一能扛住本周这类 prompt 注入场景的凭据安全姿态。其二,snapshot 分叉用于 agent 的并行探索,是让「同时生起 N 个子 agent」这种模式在成本与延迟上都真正可行的原语。子 agent 在 Claude Code、Gemini CLI,以及现在 Cloudflare Sandboxes 上的收敛不是巧合——同一个问题正在把同一种解法推进到栈里的三个不同层。