Substrate 智能体底座

agent-substrate/substrate 访问 GitHub ↗
🔤 Go ★ 1388 ⑂ 0 daily #9 (+22) 抓取 2026-08-21

一句话简介

基于 Go 的智能体基础设施框架,提供代理构建、工具集成与运行时管理能力,帮助开发者快速搭建可扩展的 AI 代理系统。

标签

  • Go
  • AI 智能体
  • 基础设施
  • 框架
  • 工具集成

适用应用场景

  • 构建可扩展的 AI 代理系统
  • 集成外部工具与服务的代理运行时管理
  • 开发多智能体协作平台
  • 快速搭建自动化任务处理代理

README 中文摘要

项目概述

Agent Substrate 是一个面向大规模智能体部署的高密度运行时环境。其控制平面负责智能体沙箱的全生命周期管理,可在亚秒级完成挂起与恢复操作,并支持在同一基础设施上对大量智能体进行多路复用。系统兼容多种沙箱技术,包括 microVM 与 gVisor,为不同沙箱类型提供一致的生命周期操作。

核心设计思想是将大量「Actor」(智能体类应用)映射到少量已就绪的「Worker」之上,利用这类应用大多数时间处于空闲状态的特性实现高密度多路复用。系统提供 Actor 生命周期管理(创建/销毁、挂起/恢复)、实时调度以及入站流量路由能力。

Agent Substrate 定位为低侵入性系统,不绑定特定框架。其底层依赖 Kubernetes 进行基础设施供给与 Worker 生命周期管理,复用 Pod 与 Pod 自动伸缩等原生能力,同时叠加面向智能体的调度与控制逻辑以降低延迟。

核心能力演示

官方演示展示了在 8 个物理 Pod 上多路复用约 250 个有状态 Actor 的效果,主要亮点包括:

  • 即时迁移:将 Actor 高速挂起并在任意可用 Worker 上恢复,激活耗时低于一秒。
  • 状态持久化:通过全状态快照保存易失性内存与文件系统状态,跨休眠周期完整保留。
  • 集群多路复用:在共享物理 Pod 上「轮转」大量有状态 Actor,实现 30 倍以上的过订阅。

框架兼容与生态

系统在内核层通过 gVisor 管理标准 OCI 容器,因此可托管任意技术栈构建的智能体:

  • 支持 Agent Development Kit(ADK)的 Actor 身份与持久化工作内存。
  • 适合长生命周期、有状态的 LangChain 智能体及沙箱化工具调用。
  • 为 Claude Code、CodeX 等编码环境提供高密度有状态运行时。
  • 可将 MCP 服务器部署为 Substrate Actor,为任意大模型提供持久化工具。

生态方面,Agent Executor 是一个分布式智能体运行时,演示了如何在 Agent Substrate 之上构建安全、可超大规模扩展的智能体框架。

状态与兼容性

项目目前处于早期开发阶段,尚不具备生产就绪条件,API 可能发生重大变更,不保证向后兼容性。当前目标支持 Kubernetes 最新稳定版以及上一个次要版本。

本地快速部署

前置依赖:Go、kubectldocker

# 创建本地 kind 集群与镜像仓库
hack/create-kind-cluster.sh

# 部署核心组件、valkey、rustfs
hack/install-ate-kind.sh --deploy-ate-system

# 部署示例 Actor
hack/install-ate-kind.sh --deploy-demo-counter
go install ./cmd/kubectl-ate

# 创建命名空间与 Actor 实例
kubectl ate create atespace demo
kubectl ate create actor my-counter-1 -a demo --template=ate-demo-counter/counter

# 端口转发网络路由
kubectl port-forward -n ate-system svc/atenet-router 8000:80

随后在另一终端通过自定义 Host 头访问:

curl -X POST -H "Host: my-counter-1.demo.actors.resources.substrate.ate.dev" -i http://localhost:8000/

GKE 上的快速部署

复制环境模板后按需修改,启用应用默认凭据,再依次执行资源准备与组件部署:

cp hack/ate-dev-env.sh.example .ate-dev-env.sh
source .ate-dev-env.sh
gcloud auth application-default login --project=${PROJECT_ID}

# 一键引导 GKE、Redis、GCS、IAM 等资源
go run ./tools/setup-gcp bootstrap

# 部署 Agent Substrate 系统
./hack/install-ate.sh --deploy-ate-system

# 部署示例应用
./hack/install-ate.sh --deploy-demo-counter

通过 go run ./tools/setup-gcp --help./hack/install-ate.sh --help 可查看更细粒度的创建与清理选项,例如单独重建 ate-apiserver 或一键删除全部资源。销毁本地 kind 集群可执行 ./hack/delete-kind-cluster.sh;销毁 GCP 资源可执行 ./hack/teardown.sh --all

示例应用

  • Counter Demo:有状态 Go HTTP 服务器,演示挂起/恢复后的状态保留以及动态 CRD 路由。
  • Sandbox Demo:基于 Alpine Linux 的安全沙箱,支持任意 Shell 执行并跨会话保留文件系统状态。
  • Claude Code Multiplex:在有限的 Worker 池上多路复用多个 Claude Code 实例。
  • Multi-Template:两个不同二进制的 ActorTemplate 共享一个 WorkerPool,跨三个命名空间运行。
  • Request Parking:当池过载时,路由器暂存入站请求直至有 Worker 释放,而非直接返回 503。
  • Autoscaled WorkerPool:基于 Prometheus 适配器提供的指标,由 HPA 按已分配 Actor 数伸缩 WorkerPool

命令与组件

  • cmd/ateapi:控制平面 API 服务,暴露管理 Actor 与 Worker 生命周期的 gRPC 接口。
  • cmd/atelet:节点级 DaemonSet,监管物理 Worker Pod、协调快照与状态迁移。
  • cmd/atecontroller:Kubernetes 控制器,调谐 WorkerPoolActorTemplate 自定义资源。
  • cmd/atenet:组合式网络控制器,提供 DNS、Envoy 路由与代理 Sidecar。
  • cmd/ateom-gvisor:运行于沙箱 Worker Pod 内部,调用 runsc 的 checkpoint/restore 命令。
  • cmd/ateom-microvmateom-gvisor 的 microVM 对应版本,基于 cloud-hypervisor 运行 Actor。
  • cmd/podcertcontroller:用于签发 Pod 证书的「垫片」,未来将与上游 Kubernetes 合并。
  • cmd/kubectl-ate:管理 Agent Substrate 资源的 CLI 工具。
  • cmd/benchmarking:基准测试用合成负载(如按需消耗内存、磁盘与 fd 的 glutton)。
  • tools/setup-gcp:用于创建 GKE、GCS、IAM 等 GCP 基础设施。
  • demos/:示例应用集合。

文档索引

官方提供架构说明、API 配置参考、CLI 文档、术语表、可观测性指南、认证配置、请求暂存机制、威胁模型、路线图以及基于 Locust 的基准测试框架等文档,可在 docs/benchmarking/ 目录下查阅。

摘要更新于 2026-08-21 00:31:48 · 原文 13050 字符 · md5 7c861050412c…