llm-wiki wiki · entities 2026-06-12

AgentCube 是 Volcano 社区面向 AI Agent / Code Interpreter 的 Kubernetes 原生会话编排层。它不是替代 agent-sandbox,而是在 agent-sandbox 的 Sandbox / SandboxClaim / SandboxTemplate / SandboxWarmPool 之上,补上应用级会话、HTTP 入口、代码执行 API、SDK 入口和生命周期回收。

详细架构见 src-agentcube-architecture

关键事实

架构定位

AgentCube 把 agent-sandbox 的底层运行时原语包装成更贴近 AI 应用的会话模型:

agent-sandbox 的结合

AgentCube 复用了 agent-sandbox 的隔离、Pod 生命周期和 WarmPool 能力,但把它们隐藏在更高层 API 后面:

这个分层让 agent-sandbox 继续专注"安全、有状态、可回收的单实例容器",AgentCube 则负责"用户请求如何变成一个可复用的 AI / Code session"。

agent-sandbox API 兼容性

AgentCube 当前已发布 v0.1.0,但仍依赖 sigs.k8s.io/agent-sandbox v0.1.1。这意味着它和当前 agent-sandbox v0.4.6 / v0.5.0rc1 之间可能存在 API 追赶成本:

选型上,AgentCube 当前适合作为“agent-sandbox 上层应用 API”的设计参考;生产采用前应先验证它是否已跟上目标 agent-sandbox 版本。

CodeInterpreter warm pool 请求时序

Client request
  │  POST /sessions or /execute
  ▼
AgentCube Router
  │  check x-agentcube-session-id
  │  miss → ask WorkloadManager
  ▼
WorkloadManager
  │  CodeInterpreter.warmPoolSize > 0 ?
  │
  ├─ warm path:
  │    create SandboxClaim
  │      │
  │      ▼
  │    agent-sandbox controller assigns prewarmed Sandbox
  │
  └─ cold path:
       create Sandbox directly from template
         │
         ▼
  wait Sandbox Ready + entrypoint TCP probe
         │
         ▼
  write sessionId → endpoint into Redis / ValKey
         │
         ▼
Router reverse proxy → PicoD `/api/execute` / `/api/files`

这条路径把高频请求和低频 K8s reconcile 分开:首次 miss 需要控制面介入,后续同一 session 直接由 Router 查 registry 并代理到 PicoD。