Agent Sandbox 从零开始 · 3.0
第 18 / 34 节 · 面向零基础读者

第 16 章:重新画地图——智能体沙箱工程是什么

先把问题问完整

你在 GitHub 搜索 agent sandbox,可能看到 Kubernetes 控制器、远程执行平台、本地命令限制器、虚拟机监视器,以及某个 SDK。它们都与沙箱有关,但提供的能力不同。本书前半部分学习底层原理,这一部分把原理放回完整工程,重点研究 OpenSandbox、SPACE、CubeSandbox 与 Anthropic sandbox-runtime。[11]~[14]

想象你要开一家自助学习室:房间墙壁对应隔离机制,前台负责登记和分房,房间里的终端负责接收作业,门禁负责控制进出,保洁负责结束后的清理。一个完整沙箱服务往往需要把这些能力接起来。本地命令限制器则可能只给你现有的工作室加门禁,不负责开设一整家连锁店。

用五层理解,而不是背产品名单

第一层是应用:智能体决定分析表格、修改代码或操作浏览器。第二层是接入:SDK、HTTP API 或命令行把请求送进来。第三层是控制:创建环境、记录状态、调度节点、决定存活时间。第四层是执行:启动进程、传文件、读取终端输出。第五层是隔离与资源:容器、操作系统策略、microVM、网络和存储限制。

实际项目会跨越几层,但你总可以问:这个组件是在“决定在哪里运行”,还是“真正执行并限制运行”?例如 OpenSandbox 的生命周期服务与 execd 分别偏向控制和执行;SPACE 的控制 API 与命令输出连接也分开;CubeSandbox 的 CubeMaster 与 Cubelet 分担集群和节点责任;sandbox-runtime 主要围绕进程限制与代理展开。

四项工程的第一眼对照

项目 主要提供什么 隔离路线要怎样理解 初学者先读什么
OpenSandbox 统一生命周期与执行接口、多种运行环境集成 后端与配置决定实际机制;不能看到项目名就认定为 microVM README 的本地 Docker 示例、execd 与 server 文档
SPACE 基于 Firecracker 的远程沙箱平台 microVM 加上控制、存储、网络和命令会话体系 README、architecture、first-sandbox
CubeSandbox 面向 Agent 的 microVM 沙箱服务与集群组件 RustVMM/KVM 路线,并配套网络、存储和生命周期组件 中文 README、架构、快速开始
sandbox-runtime 包装本地命令的 CLI 和 TypeScript 库 按操作系统使用不同机制限制进程树 README 的 How It Works、配置与已知限制

这张表描述本次读取的源码快照,不是安全强度排名。项目文档中的速度和开销数字属于作者报告;没有统一硬件、模板、并发、缓存和计时边界,不能直接比较大小。

本部分读到什么深度

本次实际读取了四个仓库的 README、选定的架构与使用文档,并查看了代表性实现入口。没有对整个代码库逐行审计,也没有部署四套平台。因此后文会区分“文档描述”“在具体代码里能确认的行为”和“还需要运行验证的条件”。这比把 README 的承诺全部改写成已验证事实更便于学习。

本书包含示例与资料导读;验证范围和来源见附录。