SuperAPI AI 工具集

agent-sandbox

agent-sandbox 是 Kubernetes SIG Apps 旗下的开源项目,旨在为需要长期运行、有状态、单实例且具有稳定标识的容器工作负载提供声明式、标准化的管理 API。它通过 Sandbox 自定义资源定义(CRD)和控制器,让用户在 Kubernetes 上获得类似轻量级单容器虚拟机的体验,适用于 AI 智能体运行时、强化学习(RL)与评估、开发环境、Notebook 等场景。该项目定位为沙箱编排器,将底层容器隔离委托给 gVisor、Kata Containers 等安全沙箱运行时(通过 RuntimeClass 配置)。核心 Sandbox CRD 提供稳定主机名与网络标识、可跨重启持久的存储,以及创建、定时删除、暂停与恢复等生命周期管理。扩展模块还提供 SandboxTemplate、SandboxClaim 和 SandboxWarmPool,用于模板复用、池化预热与快速分配。

访问官网

工具介绍

agent-sandbox 是 Kubernetes SIG Apps 下的开源项目,目标是为需要长期运行、有状态、单实例且具有稳定标识的容器工作负载,提供声明式、标准化的管理 API,带来类似轻量级单容器虚拟机的使用体验。

用途与背景 Kubernetes 擅长管理无状态复制应用(Deployments)和稳定编号的有状态 Pod 集合(StatefulSets),但对以下场景缺乏专门抽象:开发环境(隔离、持久、可网络访问的云环境);AI 智能体运行时(执行不可信的 LLM 生成代码);强化学习与评估(高吞吐、隔离的执行沙箱,如 SWE-bench、R2E-Gym、Ray/RLlib,并支持低延迟预热池声明);Notebook 与研究工具(持久单容器会话,如 Jupyter Notebook);有状态单 Pod 服务(如构建代理、小型数据库)等。虽然可用 StatefulSet(副本数 1)、Service 和 PersistentVolumeClaim 组合近似实现,但方式繁琐且缺少休眠等专门生命周期管理。

主要能力 核心是 Sandbox CRD,为单个有状态 Pod 提供声明式 API,关键特性包括:稳定标识——每个 Sandbox 拥有稳定主机名与网络标识;持久存储——可配置在重启后仍保留的持久存储;生命周期管理——控制器管理 Pod 的生命周期,包括创建、定时删除、暂停与恢复。 扩展模块在核心 API 上提供更高级能力:SandboxTemplate 定义可复用的 Sandbox 模板,便于管理大量同类 Sandbox;SandboxClaim 允许用户从 SandboxWarmPool 创建 Sandbox,隐藏底层配置细节;SandboxWarmPool 管理预热的 Sandbox 池,可快速分配以缩短新 Sandbox 就绪时间。 项目定位为沙箱编排器,将底层容器隔离委托给安全沙箱运行时(如 gVisor 或 Kata Containers),通过 RuntimeClass 管理使用这些运行时的 Pod。

架构与使用方式 agent-sandbox 遵循 Kubernetes 控制器模式:用户创建 Sandbox 自定义资源,控制器管理底层运行时资源。安装方式包括:标准安装(核心+扩展,推荐多数用户),也可用 kubectl kustomize k8s/ 从源码直接渲染;选择性安装可分别安装组件;Helm 安装参见 Helm chart README。创建简单 Sandbox 只需向集群应用一段 YAML(指定镜像),随后可通过稳定主机名 my-sandbox 访问;更复杂示例见 examples/ 目录。 编程接口提供 Go SDK(随仓库根 Go module 发布,仓库标签如 v0.1.0 即 SDK 版本,详见 Go SDK README)和 Python SDK(详见 Python SDK README)。可选的 Sandbox Router 是 HTTP 反向代理,将 SDK 和外部客户端流量路由到沙箱 Pod,适用于使用 Go/Python SDK 或无法直接端口转发 Pod 的运行时环境。 验证安装可检查 CRD 与控制器部署是否存在;卸载前需检查在用资源以避免数据丢失,且删除 CRD 会级联删除所有命名空间下相应类型的自定义资源。配置与性能调优可参考 Configuration Guide(CLI 参数与部署示例)、Performance Tuning Guide(基准数据、突发与持续配置、多池分片、托管控制面清单)、APF Insulation Guide(FlowSchema 与 PriorityLevelConfiguration 清单)。

适用场景 开发环境、AI 智能体运行时、强化学习与评估、Notebook 与研究工具、有状态单 Pod 服务。期望的沙箱特性包括:强隔离(支持 gVisor、Kata Containers 等,含内核与网络隔离,适合不可信代码与多租户)、深度休眠(状态保存到持久存储并可能归档 Sandbox 对象)、自动恢复(网络连接时恢复沙箱)、高效持久化(弹性快速供应的存储)、跨沙箱内存共享(探索中,取决于具体运行时)、丰富身份与连接(探索双用户/沙箱身份及无需每沙箱 Service 的高效流量路由)、可编程性(鼓励应用与智能体以编程方式使用 Sandbox API)。

限制与说明 当前项目仍在开发中,路线图见 roadmap.md;安全模型、信任边界与缓解措施见 Threat Model。项目采用过期 PR 管理(30 天自动 stale、15 天自动关闭不活跃 PR),并实验性使用 CodeRabbit 进行 AI 辅助代码评审,提交建议不应直接通过 GitHub UI 应用,以免破坏 Kubernetes CLA 要求。社区渠道包括 #agent-sandbox 与 #sig-apps Slack 频道、SIG Apps 邮件列表,参与受 Kubernetes 行为准则约束。

关于收费、价格与平台支持等更多细节,暂未提供。