犀牛鸟 2026 研究笔记 estelledc.github.io

CubeSandbox 深度解读

为 AI Agent 而生的”最后一公里”沙箱。


一句话定位

腾讯开源的 AI 代码执行沙箱,用 Firecracker 同源技术做到 60ms 冷启动 + <5MB 内存,同时兼容 E2B SDK——等于给 AI Agent 造了一台”即插即用的引擎”。

设计哲学上最精彩的地方

CubeSandbox 没有从零造轮子,它站在三个巨人的肩膀上:

这种”三合一”策略在开源界非常罕见。大多数项目要么做引擎(Firecracker),要么做平台(E2B),CubeSandbox 同时做了两者,而且刻意保持代码精简。

核心技术创新点

CubeCoW(Copy-on-Write 快照引擎)— 0.3.0 引入

想象你在跑一个 Agent 代码执行任务,跑了 100 步后出了个 bug,CubeCoW 可以在毫秒级回滚到任意检查点,或者从这个检查点 fork 出平行环境继续探索。这个能力在 RL 训练(README 里有 SWE-Bench demo)和 Agent 调试中价值极大。

CubeEgress(eBPF 网络代理)— 0.4.0 引入

OpenResty + eBPF 组合,解决的是”沙箱内代码的网络出口安全问题”——不只是隔离,而是能对出站流量做精细策略控制(凭据注入、域名过滤、访问审计)。这是生产级产品必须具备的能力。

高密度部署

<5MB 单实例内存意味着同一台物理机可以跑上千个沙箱。对于需要大量并行 Agent 执行(比如 swarm 模式)的场景,这是决定性的。

竞争格局中的位置

CubeSandbox 和 E2B 之间不是竞争关系,而是互补 + 替代:E2B 是封闭的云服务,CubeSandbox 是开源、自托管、性能更强的替代品,且 API 兼容。它真正要替代的是 E2B 的付费墙,而不是 Firecracker——Firecracker 是它的引擎供应商。

值得关注的细节

本地代码结构

CubeSandbox/
  CubeAPI/        — 高并发 REST API Gateway(Rust),E2B 兼容
  CubeMaster/     — 集群编排器,接收 API 请求并分发给 Cubelet
  CubeProxy/      — 反向代理,兼容 E2B 协议,路由到对应沙箱实例
  Cubelet/        — 单节点调度组件,管理沙箱完整生命周期
  CubeVS/         — eBPF 虚拟交换机,内核级网络隔离
  CubeHypervisor/ — KVM MicroVM 管理
  CubeShim/       — containerd Shim v2 API 集成
  CubeCoW/        — Copy-on-Write 快照引擎
  CubeEgress/     — OpenResty + eBPF 出站安全网关
  network-agent/  — 网络代理
  sdk/            — SDK(含 Python 绑定)