统一的 AI Agent 编排中枢,通过 YAML 配置管理异构代理(Native/Claude Code/Codex/ACP/AG-UI),并以 ACP/MCP/OpenAI API 等标准化协议对外暴露。
AgentPool 是由 phil65 开发的 AI Agent 编排框架,旨在解决异构代理碎片化、协议割裂和配置复杂等问题。
核心能力#
多类型代理统一管理#
- Native Agents:基于 Pydantic-AI 的原生代理,支持丰富内置工具
- Claude Code Agents:直接集成 Claude Code,用于复杂重构
- Codex Agents:集成 Codex,支持高级推理的代码编辑
- ACP Agents:通过 ACP 协议集成外部代理(如 Goose)
- AG-UI Agents:支持 AG-UI 协议的自定义代理
多协议暴露#
| 协议 | CLI 命令 | 用途 |
|---|---|---|
| ACP | agentpool serve-acp | IDE 集成,双向通信与工具确认 |
| OpenCode | agentpool serve-opencode | OpenCode TUI/Desktop,远程文件系统 |
| MCP | agentpool serve-mcp | 将工具暴露给其他代理 |
| AG-UI | agentpool serve-agui | AG-UI 兼容前端 |
| OpenAI API | agentpool serve-api | OpenAI API 替换层 |
编排能力#
- 并行团队:
mode: parallel,多代理并行执行 - 顺序链:
mode: sequential,流水线式顺序执行 - Python 组合:
agent1 & agent2(并行)、agent1 | agent2(顺序)
工具集#
文件访问(本地/远程)、代码模式分析(tree-sitter 多语言)、Composio 集成、执行环境、搜索、通知、子代理委托。
架构实现#
| 层面 | 技术选型 |
|---|---|
| Agent 框架 | Pydantic-AI(pydantic-ai-slim) |
| Web 服务 | FastAPI + Uvicorn |
| 协议支持 | MCP(fastmcp)、ACP、AG-UI、A2A |
| 数据持久化 | SQLAlchemy + SQLModel + Alembic |
| 配置解析 | yamling + Pydantic 验证 |
| CLI | Typer |
| 可观测性 | structlog + logfire |
模块结构:agentpool(核心)、agentpool_cli、agentpool_server、agentpool_toolsets、acp、codex_adapter 等。
安装与快速开始#
uv tool install agentpool
最小配置 agents.yml:
agents:
assistant:
type: native
model: openai:gpt-4o
system_prompt: "You are a helpful assistant."
agentpool run assistant "Hello!"
agentpool serve-acp agents.yml
Python API#
from agentpool import AgentPool
async with AgentPool("agents.yml") as pool:
agent = pool.get_agent("assistant")
result = await agent.run("Hello")
async for event in agent.run_stream("Tell me a story"):
print(event)
多代理配置示例#
agents:
coordinator:
type: native
model: openai:gpt-4o
tools:
- type: subagent
system_prompt: "Coordinate tasks between available agents."
claude:
type: claude_code
description: "Claude Code for complex refactoring"
codex:
type: codex
model: gpt-5.1-codex-max
reasoning_effort: medium
goose:
type: acp
provider: goose
teams:
review_pipeline:
mode: sequential
members: [analyzer, reviewer, formatter]
parallel_coders:
mode: parallel
members: [claude, goose]
关键抽象:MessageNode 统一抽象,所有代理/团队/链共享相同接口;YAML 驱动配置,Pydantic 后端提供 JSON Schema 用于 IDE 自动补全与验证。
环境要求:Python >=3.13,已发布到 PyPI。