每个做 Agent 的团队最终都会从零搭建一个 Agent 平台。Agno 创始人 Ashpreet Bedi 的解法很直接:让 Coding Agent 自己来建。
他开源了一套模板仓库,配合 Claude Code 和 5 个结构化 Prompt,实现了一个「自进化」的 Agent 平台——从创建 Agent、加固质量、扩展能力,到跑 eval 自动修复、审查代码与文档的一致性,全部自动化。
Agent 平台的五个核心模块
Bedi 把 Agent 平台类比为迷你应用的「操作系统」,包含五个必须解耦的层:
Runtime — 处理请求、运行 Agent 循环、流式返回响应、写入存储、处理鉴权。
Storage — Postgres 数据库,存放会话、记忆、知识、Trace 和 Eval 历史。
Connectors — 通过 MCP、API 或 CLI 连接外部系统。统一收口对安全至关重要。
Interfaces — Slack、Discord、Telegram、自定义 UI。关键设计是跨平台身份统一:同一个人在 Slack 里 @ 你和在 Web 里点击,对应的是同一个 user_id。
Infrastructure — Docker 本地运行,Railway 一键部署生产环境,也可跑在任何云。
五个 Prompt 驱动完整生命周期
整个开发流程被压缩成 5 个可复用的 Prompt:
Create — 脚手架生成新 Agent。Claude 会问这个 Agent 该做什么、需要什么工具,然后通过 MCP 搜索 Agno 文档找到合适的 toolkit,生成代码文件,注册到 app/main.py,重启容器,最后用 cURL 做冒烟测试。Prompt 到可用 Agent,5-10 分钟。
Improve — 针对已有 Agent 做加固。Claude 读取 Agent 的 INSTRUCTIONS,从中推导出 8-12 个探针:主流程、边界情况、工具选择、对抗性输入(prompt injection、 malformed input、意图劫持)。每个探针通过 cURL 打到 live 容器,读取响应和工具调用日志,按 INSTRUCTIONS 的承诺判定 PASS/FAIL。失败时自动选择修复策略:收紧规则、新增规则、换工具、调整 num_history_runs,然后热重载、只重跑失败的探针。
Extend — 扩展能力。开发者描述需求(加工具、修 prompt、修 bug),Claude 执行。Agno 文档 MCP 始终在线,确保 toolkit 研究基于真实 API。
Hill Climb — 批量跑 eval suite,诊断每个失败,修复在范围内的部分。Bedi 的原话:「攒了一堆 eval 结果却手动修复太浪费了。」
Review — 扫描整个仓库,检查文档、代码、配置之间的 drift。最佳执行时机:发布前或大规模重构后。Doc-code 不一致历来是生产软件的隐性税,现在成本归零。
部署与交付
本地开发只需:
git clone https://github.com/agno-agi/agent-platform-railway.git agent-platform
cd agent-platform
cp example.env .env
# 填入 OPENAI_API_KEY
docker compose up -d --build
两个容器:FastAPI 服务 + Postgres。配合 agno.com/playground 的 UI,连上 localhost:8000 即可操作。
生产部署用 ./scripts/railway/up.sh,一键在私有网络里拉起 Postgres 和应用服务。技术用户用 Claude Code 管理,非技术用户用 no-code UI。
安全与数据
平台内置 JWT 鉴权和 RBAC,API Key 统一收口。会话、Trace、知识全部落在自有数据库,不存在第三方数据泄露风险。Agent 之间的数据隔离也是平台层负责,防止一个 Agent 污染另一个 Agent 的数据。
关键洞察
Bedi 最后点出了一个反直觉的事实:你今天发布的 Agent,只是你构建的最小一部分。真正有价值的是底下的平台和它支撑的迭代闭环。Agent 会过时,但让 Agent 自我改进的基础设施不会。