ag-ui
标准化 AI Agent 与前端应用交互的事件驱动协议,让 Agent 输出实时流式呈现
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
标准化 AI Agent 与前端应用交互的事件驱动协议,让 Agent 输出实时流式呈现
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下:你花了两周时间,用 LangGraph 搭了一个客服 AI 助手,能精准理解用户意图、自动调用工具、回答业务问题——但用户只能盯着一个黑乎乎的命令行窗口看 AI "思考"。想把它嵌入到现有的 Web 产品里?对不起,你得自己写前端事件处理层、状态同步逻辑、UI 渲染适配……这些与 AI 本身无关的"体力活",往往比核心开发更费时间。
AG-UI(Agent-User Interaction Protocol)正是为了解决这个"最后一公里"问题而诞生的。它不是又一个 AI 框架,而是一套协议规范——定义 AI 后端如何向前端应用发送事件、前端如何向 AI 发送指令,让任何符合该协议的 Agent 都能无缝接入任何前端界面,而无需双方提前做定制化适配。
可以把 AG-UI 理解成 AI 世界的"USB 接口协议"。在传统 USB 出现之前,每家厂商的设备都需要专门的驱动程序——键盘厂商必须适配每个电脑品牌,用户得手动安装驱动。USB 协议统一之后,任何 USB 键盘插上任何 USB 电脑都能用。AG-UI 正是这个思路:把 Agent 和前端之间的通信标准化,让 AI 厂商只需要实现 AG-UI 协议,前端开发者只需要集成 AG-UI SDK,双方无需相互了解对方的内部实现。
这个设计思路还有一个更宏大的背景——Agent 协议栈。目前业界已形成三层协议的共识:MCP(Model Context Protocol)让 Agent 调用外部工具,A2A(Agent-to-Agent Protocol)让多个 Agent 相互协作,而 AG-UI 则负责"把 Agent 的能力展示给人类用户"。三者各司其职,共同构成完整的 Agent 交互基础设施。
AG-UI 协议的核心是一套约 16 种标准事件类型,Agent 后端在运行过程中"发射"这些事件,前端应用订阅并渲染对应的 UI。典型的事件包括:流式文本输出(对应聊天消息)、工具调用进度、状态更新、结构化数据渲染、用户确认请求(Human-in-the-loop)等。
这套设计有几个关键优势:传输层无关——事件可以通过 SSE(Server-Sent Events)、WebSocket、Webhook 等任何方式传输,只要符合事件格式规范即可;松耦合——Agent 端不需要知道前端是什么框架(React/Vue/原生 JS),前端也不需要知道后端是 LangGraph 还是 CrewAI;中间件扩展——内置中间件层支持事件过滤、格式转换、跨协议桥接(比如与 MCP、A2A 协议联动)。
项目采用 Nx monorepo 架构,代码组织非常清晰:
sdks/typescript/ — 核心 TypeScript SDK,包含协议实现和事件解析引擎,是所有 SDK 的基础sdks/python/ — Python 后端适配层,让 LangGraph、CrewAI 等 Python 生态的 Agent 能够方便地接入 AG-UIintegrations/ — 面向具体框架的集成适配器,目前已支持 20+ 主流 Agent 框架,包括 LangGraph、CrewAI、Microsoft Agent Framework、Vercel AI SDK、LlamaIndex、Agno、AWS Strands、Mastra、PydanticAI 等,几乎涵盖了当前 Agent 开发的主流技术选型middlewares/ — 可插拔中间件,包括 A2A 协议桥接、MCP 应用桥接、事件节流等apps/dojo — 官方在线交互式演示站点(dojo.ag-ui.com),也是 Next.js 技术栈的最佳实践参考代码质量方面,项目使用 TypeScript 作为主语言(代码类型安全),配套 Prettier 格式化、ESLint 代码检查、完整的测试套件(支持覆盖率报告)和导出校验(test:exports),体现了较高的工程标准。
如果你想快速体验 AG-UI,官方提供了极简的脚手架工具:
npx create-ag-ui-app my-agent-app
这条命令会自动生成一个包含前端和后端样例的完整项目,运行 pnpm dev 即可看到 Agent 与前端实时交互的 Demo。对于已有 Agent 后端的开发者,只需要:
@ag-ui/langgraph)@ag-ui/core SDK 并配置事件源整个接入过程通常不超过 30 分钟。
AG-UI 也有其局限性。首先,作为一个新兴协议,生态成熟度还在发展中——虽然已支持 20+ 主流框架,但中小众框架和新兴项目的适配还需要时间。其次,协议本身专注于"展示层"的标准化,对于 Agent 内部的推理过程、工具调用策略等核心能力并不涉及——这些仍由各个 Agent 框架自行解决。
此外,AG-UI 当前的实现主要面向 Web 前端场景,对于桌面 App、Mobile App 的支持尚在完善中。如果你需要将 Agent 能力嵌入到原生移动应用中,可能需要额外的适配工作。
AG-UI 的快速发展(GitHub 13,800+ stars)在一定程度上验证了一个趋势:Agent 领域的竞争正在从"模型能力"向"生态配套"转移。当各家大模型的推理能力差距逐渐缩小时,谁能更低成本地将 Agent 能力落地到用户场景,谁就拥有竞争优势。
AG-UI 的定位恰好卡在这个关键节点上——它不与任何具体 Agent 框架竞争,而是作为"黏合剂"存在,让整个 Agent 生态的集成成本大幅降低。值得持续关注其在 MCP、A2A 协议生态中的演进,以及更多主流框架将其纳入默认支持的进展。
项目基本信息
| 属性 | 值 |
|---|---|
| 主语言 | TypeScript |
| 协议 | MIT |
| 主要集成 | LangGraph、CrewAI、Microsoft Agent Framework 等 20+ 框架 |
| 官方文档 | ag-ui.com |
| 社区 | Discord(1,400+ 成员) |
| stars | 13,877 |
| forks | 1,241 |