Tensor Box 智能体沙箱概览
基于 microVM 硬件级隔离的安全代码执行沙箱,让 AI 智能体安全地运行任意代码、操作文件、暴露端口。
Tensor Box 是 Tensor OS 内置的安全代码执行沙箱,现已上线于 app.tos.run,由 rhzs 集群上的 microVM 承载。每一个沙箱都是一台独立的轻量级虚拟机(microVM),由 mvisor 微虚拟机管理程序驱动,提供硬件级的强隔离。AI 智能体、自动化流水线或任何需要运行不可信代码的场景,都可以在毫秒级启动的沙箱里安全地执行命令、读写文件并对外暴露服务,而不会影响宿主机或其它租户。
Tensor Box 暴露一套与 E2B 兼容的多语言 SDK,包名统一为 tensor-box(无 org scope),覆盖 TypeScript(npm tensor-box)、Python(PyPI tensor-box,导入 tensor_box)、Go(github.com/NexusGPU/tensor-box/sdk/go,包名 tensorbox),外加一个 tensor-box CLI。四套接口共用同一套控制面 API,熟悉 E2B 的开发者几乎可以零成本迁移。
microVM 隔离,而非容器
不同于容器共享宿主内核、依赖 namespace/cgroup 做软隔离,Tensor Box 的每个沙箱都是一台拥有独立 Linux 内核的 microVM:
| 维度 | 容器 | Tensor Box(microVM) |
|---|---|---|
| 内核 | 与宿主共享 | 每个沙箱独立内核 |
| 隔离边界 | namespace / cgroup(软隔离) | 硬件虚拟化边界(强隔离) |
| 不可信代码 | 逃逸面较大 | 即便 root 提权也被困在 VM 内 |
| 启动速度 | 毫秒级 | 毫秒级(预热池) |
| 资源配额 | cgroup 限制 | 独立 vCPU / 内存 / 磁盘配额 |
正因为是真正的虚拟机,沙箱内可以安全地以 root 运行任意命令、加载内核模块友好的工作负载、运行 Docker-in-VM 等容器难以安全承载的场景。
核心能力
- 运行任意命令 — 沙箱内是一套完整的 Ubuntu 24.04 rootfs。通过
commands.run(...)执行任意 shell 命令;支持哪些语言取决于模板镜像里预装了什么(没有"专门跑 Python"的 API,统一用commands.run)。 - 前台 / 后台 / 流式进程 — 同步等待结果,或后台启动长任务,实时流式回传 stdout / stderr,并向进程 stdin 写入数据。
- 完整文件系统 — 读写文本 / 二进制 / 流,列目录、创建 / 删除 / 重命名、监听目录变更,以及文件上传下载。
- PTY 交互终端 — 创建伪终端会话,接入 xterm 之类的前端,做真正的交互式调试。
- 暂停 / 恢复 — 将沙箱连同内存与磁盘状态快照化后暂停;之后可在任意节点上恢复,秒级回到原状态。
- 自定义模板 — 从基础镜像(如
ubuntu:24.04)、Dockerfile 或构建步骤创建模板,也可以把一个正在运行的沙箱直接固化成模板。 - 端口暴露 — 沙箱内启动的服务可通过
getHost(port)拿到对外可访问的主机名。 - 资源配额与监控 — 每个沙箱有独立的 vCPU / 内存 / 磁盘配额(默认 2 vCPU / 2048 MiB / 40 GiB),并提供 CPU、内存、磁盘、网络的实时指标与 OOM 标记。
- 快速创建 — 控制面维护预热池(warm pool),常用模板的沙箱可近乎即时拉起。
典型场景
AI Agent 代码执行
让大模型生成的代码在隔离沙箱里跑起来:执行脚本、安装依赖、运行测试,把结果回传给智能体——出错或恶意代码都被困在 VM 内。
不可信代码沙箱
运行用户提交、第三方插件或来源不明的代码。microVM 的硬件隔离 + 独立配额,确保单个沙箱崩溃或被攻破不会波及平台。
数据处理流水线
上传数据集、在沙箱内做转换 / 渲染 / 计算,再把产物下载回来;用自定义模板预装好工具链,用快照保存中间状态。
架构一览
你的代码 / AI 智能体
│ tensor-box SDK(TypeScript / Python / Go / CLI,E2B 兼容)
▼
控制面 API(X-API-Key 鉴权,REST / SSE / WebSocket)
│ 调度、鉴权、配额、快照编排
▼
node-agent(每个计算节点)
│ 拉起 / 管理 microVM、代理命令与文件
▼
microVM 沙箱(mvisor · Ubuntu 24.04 rootfs · 独立内核)- SDK 负责把你的调用翻译成对控制面的 REST / SSE / WebSocket 请求,凭
domain+apiKey定位你的 Tensor OS 部署;WebSocket 升级请求通过X-API-Key请求头鉴权。 - 控制面 负责鉴权、按配额调度沙箱到合适的节点、编排暂停 / 恢复与模板构建。
- node-agent 在每个计算节点上拉起并管理 microVM,并把命令执行、文件操作、PTY、端口流量代理进沙箱。
- microVM 是真正承载你代码的隔离单元,内含独立内核与 Ubuntu 24.04 根文件系统。
下一步
快速开始
获取 domain 与 API Key,安装 SDK,跑通第一个 Hello-Sandbox。
SDK 接口速查
Sandbox / commands / files / pty / 模板的方法速查与错误类型表。
Tensor Box 已上线于 app.tos.run(公有云),同时作为沙箱能力随 Tensor OS 私有化 / 企业部署一同交付。公有云 domain 即 https://app.tos.run;私有化部署的 domain 与 apiKey 来自你自己的部署控制台「密钥凭证」。如需开通或了解部署方式,请联系我们。