腾讯 CubeSandbox 开源:60ms 冷启动的硬件级 AI Agent 执行环境

前言

随着大模型能力持续增强,AI Agent 正在从「对话助手」走向「能写代码、调工具、跑脚本」的自主执行体。Anthropic 等厂商近期提出的 Managed Agent 架构,也将 Session、Harness、Sandbox 拆分为独立组件——业界逐渐达成共识:Agent 的代码执行必须放进隔离环境,否则多租户场景下的安全风险难以控制。

问题在于,现有基础设施往往要在「快」和「安全」之间二选一:Docker 容器启动快、密度高,但共享宿主机内核,难以抵御 LLM 生成恶意代码的逃逸;传统虚拟机硬件隔离足够,却动辄秒级冷启动、数百 MB 内存开销,撑不住 Agent 高频「用完即毁」的调度模式。

2026 年 4 月,腾讯云将生产级沙箱服务 CubeSandbox 以 Apache 2.0 协议完整开源(非 SDK 片段,而是整套 sandbox-as-a-service 栈)。项目基于 RustVMM + KVM MicroVM 构建,官方宣称冷启动可低至 60ms、单实例额外内存开销 <5MB,并原生兼容 E2B SDK。截至 2026 年 7 月,CubeSandbox 在 GitHub 上持续登上 Trending,Star 数已突破 1 万,被不少开发者视为 Agent 大规模并发执行的关键基础设施。

本文基于 GitHub 仓库官方文档腾讯云新闻稿 核实关键信息,梳理其技术原理与上手方式。

Agent 执行环境的「不可能三角」

Agent 在运行用户或模型生成的代码时,沙箱至少要同时满足三类诉求:

  1. 安全隔离:每个任务独立边界,防止内核逃逸、横向渗透与数据外泄。
  2. 弹性并发:单次工具调用可能只需数秒,但集群层面每分钟可能要创建、销毁成千上万个实例。
  3. 生态兼容:开发者已在 E2B、OpenAI Code Interpreter 等协议上写了业务代码,迁移成本越低越好。

CubeSandbox 的定位,就是试图用 MicroVM 级别的硬件隔离,逼近容器级的启动速度与资源密度。官方给出的对比数据如下(生产环境实测,非实验室理想值):

指标 典型容器 传统 VM CubeSandbox
隔离级别 共享内核命名空间 独立 Guest 内核 独立 Guest 内核 + eBPF 网络策略
冷启动 ~200ms 秒级 <60ms(50 并发下 avg 67ms,P95 90ms)
单实例内存额外开销 低(共享内核) 高(完整 OS) <5MB
E2B SDK 兼容 原生支持,改 URL 即可

技术底座:自研 RustVMM 而非套壳 Docker

CubeSandbox 没有选择在 Docker 外再包一层,也没有直接使用 AWS Firecracker,而是基于 CloudHypervisor 路线自研轻量 VMM(CubeHypervisor),用 Rust 实现,面向 Agent 场景做了全链路裁剪。官方文档列出的核心优化包括:

  • 精简设备模型:仅保留 virtio-net、virtio-blk、serial 等沙箱必需虚拟设备。
  • 定制 Guest Kernel:裁剪 Linux 内核功能集,缩短启动路径。
  • 用户态中断处理:关键 I/O 路径尽量在用户态完成,减少内核态切换。

每个沙箱通过 KVM 硬件虚拟化 运行独立 Guest OS 内核,从根上避开容器共享内核的逃逸面。CubeShim 实现 containerd Shim v2 接口,使 MicroVM 能接入现有容器运行时生态。

<60ms 冷启动 并非单纯「VM 本身启动极快」,而是依赖 资源池预创建 + 快照克隆(CoW) 的组合机制:

  1. 后台维护一批已启动的「空白沙箱」资源池,请求到达时直接取用,跳过完整引导流程。
  2. 基于 Copy-on-Write 从模板沙箱克隆新实例,内存页仅在写入时才分配物理页——这也是单实例 <5MB 额外内存开销的关键原因:大部分只读页与模板共享。

在 96 vCPU 宿主机上,官方称可部署 2000+ 沙箱;平台级突发调度可超过 10 万 实例/分钟。MiniMax 等客户案例中提到,Agentic RL 训练场景下可在分钟级调度 数十万 异构沙箱(Linux / Windows / Android)。

分层架构与 eBPF 网络安全

CubeSandbox 采用控制面 / 数据面分层设计,主要组件如下:

组件 职责
CubeAPI E2B 兼容 REST 网关
CubeMaster 集群编排与调度
CubeProxy 按 Host 头路由到具体沙箱实例
Cubelet 节点级沙箱生命周期管理
CubeHypervisor RustVMM + KVM,负责 MicroVM 启停、快照、恢复
CubeVS 基于 eBPF 的内核级转发与网络隔离
CubeEgress L7 出站代理,域名白名单、凭证注入与审计

安全不只靠 VM 边界。CubeVS 在数据面用 eBPF 实现出站流量过滤,默认拒绝私有网段与链路本地地址;CubeEgress 则要求外连域名显式放行,密钥通过控制面注入,不进入沙箱、模型上下文或日志。策略可动态下发,无需重启沙箱。

v0.3.0 引入 CubeCoW 快照引擎,支持百毫秒级 checkpoint、克隆与回滚;v0.5.0(2026-07-03)进一步加入 AutoPause/AutoResume、ARM64 全栈支持与网络策略加固。新闻稿提到的事件级快照回滚能力,官方标注为开发完成后将另行开源发布。

E2B SDK 兼容:改一个环境变量

E2B 已是 Agent 沙箱领域的事实标准协议,Manus、Perplexity 等产品均有采用。CubeSandbox 在 API 层原生兼容 E2B,已有项目迁移时通常只需调整 endpoint 相关环境变量,业务代码无需重写。OpenAI Python SDK 也可配合使用。

以下示例来自官方 Quick Start(需在支持 KVMx86_64 Linux 环境运行,推荐 OpenCloudOS 9):

1. 一键安装服务

curl -sL https://cnb.cool/CubeSandbox/CubeSandbox/-/git/raw/master/deploy/one-click/online-install.sh | MIRROR=cn bash

2. 创建 Code Interpreter 模板

cubemastercli tpl create-from-image \
  --image ccr.ccs.tencentyun.com/ags-image/sandbox-code:latest \
  --writable-layer-size 1G \
  --expose-port 49999 \
  --expose-port 49983 \
  --probe 49999

3. 用 E2B Python SDK 运行隔离代码

pip install e2b-code-interpreter

export E2B_API_URL="http://127.0.0.1:3000"
export E2B_API_KEY="dummy"
export CUBE_TEMPLATE_ID="<your-template-id>"
import os
from e2b_code_interpreter import Sandbox

with Sandbox.create(template=os.environ["CUBE_TEMPLATE_ID"]) as sandbox:
    result = sandbox.run_code("print('Hello from Cube Sandbox!')")
    print(result)

安装完成后,Web 控制台默认监听 :12088,可管理沙箱、模板与节点。仓库 examples/ 目录还覆盖 Shell 执行、浏览器自动化、网络策略、OpenClaw 集成、RL 训练等场景。

部署形态与适用场景

CubeSandbox 支持单机裸金属、多节点集群、Helm 部署到 Kubernetes,以及腾讯云 Terraform 一键集群。Apache 2.0 许可对商业友好,适合私有化部署与合规审计。

典型场景包括:

  • 基础模型实验室:Agentic RL 训练需要海量短生命周期沙箱,毫秒级创建可显著减少 GPU 空等。
  • Agent 开发者 / 中小企业:无需自建 K8s,脚本几分钟搭好环境,通过 MCP、API、SDK 或 CLI 接入。
  • 企业客户:数据不出域,配合凭证保险库与出站审计满足等保与内控要求。

腾讯云方面称,CubeSandbox 已在腾讯元宝等亿级用户产品中验证,累计支撑数百亿次调用;并将与 TACO AI 加速引擎、FlexKV 缓存系统组合,形成「安全沙箱 + 推理加速 + 缓存优化」的全栈 Agent 基础设施。

小结

CubeSandbox 把 Agent 沙箱从「容器凑合用」或「VM 太慢用不起」推向第三条路:KVM 硬件隔离 + RustVMM 极致裁剪 + E2B 生态兼容。60ms 冷启动与 5MB 级内存开销若在你的 workload 上可复现,确实能显著降低 Agent 并发执行的基础设施成本。

项目目前迭代很快(v0.5.0 已支持 AutoPause 与 ARM64),GitHub Issue 与 PR 活跃。若你正在评估自托管 Agent 执行环境,不妨在测试机拉一份代码实测 P95 延迟与密度上限——毕竟 Agent 时代,沙箱不是可选项,而是默认基建

  • 仓库:https://github.com/TencentCloud/CubeSandbox
  • 文档:https://cubesandbox.com
  • 许可:Apache 2.0
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜