agent-substrate/substrate
Agent Substrate: the core system
Agent Substrate – AI 代理的高密度沙盒執行環境
這是什麼 – Agent Substrate 是一個 Kubernetes 原生的執行平台,可在隔離的沙盒中運行 actors(具狀態的流程,例如 AI 代理、工具呼叫服務,或任何長時間執行的工作負載)。它將許多 actors 多路複用到一個小型的物理 Pod 群組上,實現比一般容器高出 10 倍的密度,同時保持低於 500 毫秒的「恢復」延遲。
對 AI 的意義 – 現代自主代理大多時間處於閒置狀態,等待新的請求。Substrate 善用此特性,將整個 actor 流程(包括記憶體與檔案系統)暫停,並在需要時恢復,讓單一工作 Pod 可以承載數十個代理。這大幅降低大規模代理群的運算成本,並使在一個中小型 Kubernetes 集群上運行數千個沙盒化代理成為可能。
核心概念
| 概念 | 含義 |
|---|---|
| Actor | 具有自身狀態(記憶體、檔案)的單一代理或服務,可啟動、停止或遷移。 |
| WorkerPool | 實際運行沙盒的 Kubernetes Pod 群組。工作節點會被多個 actors 共用。 |
| Atespace | 類似命名空間的隔離邊界,用於一組 actors。 |
| ActorTemplate | 定義某種特定類型 actor 應如何啟動的容器映像與設定。 |
| 暫停/恢復(Teleport) | 拍攝 actor 完整狀態的快照,儲存起來(例如存入 PostgreSQL),並在任何空閒的工作節點上恢復。 |
主要功能(如 README 所述)
- 極致的多路複用 – 超過 30× 超額配置;範例顯示僅用 8 個 Pod 就運行了約 250 個具狀態的 actors。
- 亞秒級啟動 – 恢復延遲低於 500 毫秒,每秒可執行超過 500 次暫停/恢復循環。
- 零信任隔離 – 支援 gVisor 微虛擬機與 cloud-hypervisor 微虛擬機,實現核心層級的沙盒化。
- 狀態持久化 – 完整的記憶體與檔案系統快照在休眠後仍能保留,支援「代理傳輸」。
- 框架無關 – 可與任何代理架構(ADK、LangChain、Claude Code、Model Context Protocol 等)搭配使用,因其運行標準 OCI 容器。
- Kubernetes 整合 – 使用原生 Pods、Pod 自動擴展,以及自訂控制器(WorkerPool CRD)進行排程與擴展。
- CLI(
kubectl-ate) – 提供簡單指令來建立、列出、暫停、恢復與刪除 actors。 - 可觀察性與安全性 – 內建日誌、指標、JWT 基礎的驗證機制,以及威脅模型文件。
常見使用情境
- 大規模自主代理群 – 部署數千個聊天或工具呼叫代理,無需為每個代理配置單一 Pod。
- 具狀態的工具服務 – 運行沙盒化的程式碼執行環境(例如 Claude Code、Antigravity),需在呼叫間維持檔案系統狀態。
- 基於強化學習的代理迴圈研究 – 在單一 Kubernetes 集群中整合推論、工具使用與訓練循環,讓排程器根據負載變化在工作節點間移動 actors。
- 安全的多租戶執行 – 使用 gVisor 或微虛擬機隔離,保護每個代理的程式碼與資料。
項目狀態
- 早期開發 – API 仍在演進中;尚未適合生產環境使用。
- 支援的 Kubernetes 版本 – 最新穩定版與前一個次要版本。
- 發展路線圖 – 詳細內容見
docs/roadmap.md;包含穩定性提升、更豐富的自動擴展功能,以及更廣泛的沙盒支援。
快速入門(開發用)摘要
# 前置條件:go、kubectl、docker(kind 將自動安裝)
hack/create-kind-cluster.sh # 啟動本地 kind 集群
hack/install-ate-kind.sh --deploy-ate-system # 安裝 Substrate 控制平面
hack/install-ate-kind.sh --deploy-demo-counter # 部署範例計數器 actor
go install ./cmd/kubectl-ate # 安裝 CLI
kubectl ate create actor my-counter-1 -a ate-demo-counter --template counter
kubectl port-forward -n ate-system svc/atenet-router 8000:80
curl -X POST -H "ate-target-actor: ate-demo-counter/my-counter-1" http://localhost:8000/
相同的流程也可在 GKE 上使用 README 中描述的 setup-gcp 工具執行。
生態系與整合
- Agent Executor(google/ax) – 建立在 Substrate 上的分散式代理執行環境。
- kagent – CNCF 沙盒專案,使用 Substrate 來執行具狀態的 AI 代理。
- 範例集合 – 計數器、沙盒、Claude Code 多路複用、請求停車、自動擴展的工作節點群等。
社群與貢獻
- Google Group:
ate-dev用於公告與討論。 - 每周同步會議:每週四上午 10 點 – 11 點 PST(視訊會議與電話接入)。
- Slack:CNCF 頻道
#substrate-users與#substrate-dev。 - 貢獻方式 – 請參閱
CONTRIBUTING.md;專案仍處於非常早期階段,貢獻應聚焦於核心系統與範例工作。
如何進一步了解
- 架構文件 –
docs/architecture.md - API 使用指南 –
docs/api-guide.md - CLI 文件 –
cmd/kubectl-ate/README.md - YouTube 頻道 – https://www.youtube.com/channel/UCN9PPqlTtVxlcpbQ-NWpfZQ(範例影片)
總結 – Agent Substrate 是一個專為 Kubernetes 設計的執行環境,可讓您在小型集群上快速暫停/恢復、強化安全性的前提下,運行大量隔離且具狀態的 AI 代理(或任何類似工作負載)。雖然仍處於實驗階段,但已提供具體基礎,用以建構大規模、成本效益高的代理基礎設施。
相關
- 專案
- 專案
- 專案
- 專案
- 專案