跳到正文
分析 / HiA2UI 编辑团队

A2UI 正式开源:Google 的生成式 UI 协议走向公众

Agent AI 领域的里程碑时刻:Google 正式将 A2UI 作为开源项目发布。深入解析其安全优先架构、JSON 协议以及它如何与 Vercel AI SDK 互补。

A2UI 正式开源:Google 的生成式 UI 协议走向公众

2026年1月标志着 AI Agent 进化的一个关键时刻。 Google 正式发布了 A2UI (Agent-to-User Interface) 作为公共开源项目,积极邀请社区合作来定义生成式 UI 的标准。

这一举措标志着 A2UI 从实验概念过渡到生产就绪的协议,解决了 Agentic AI 面临的最大瓶颈之一:“纯文本墙” (Wall of Text) 问题。

核心痛点:为什么 Agent 需要 UI 标准?

迄今为止,AI Agent 在思考方面表现出色,但在展示方面却受限。Copilot 风格的侧边栏和聊天头像通常只回复长段文字或 Markdown 表格。

虽然 React Server Components (RSC) 等工具允许流式传输 UI,但它们通常需要后端 (Agent) 和前端框架 (Next.js) 之间的紧密耦合。A2UI 通过引入 “协议优先” (Protocol-First) 的方法打破了这种依赖。

“A2UI 允许 Agent 在不发送可执行代码的情况下‘说’原生 UI 语言,使其对企业采用更加安全。”

开源发布了什么?

A2UI 官方仓库a2ui.org 文档现在提供:

  1. A2UI 规范 (v1.0 Candidate):用于描述 UI 组件的稳定 JSON 模式。
  2. 参考渲染器 (Reference Renderers)
    • Flutter & Angular:Google 内部使用的生产级渲染器。
    • Web Components (Lit):用于与框架无关的 Web 使用。
    • React (社区预览版):React/Next.js 生态系统中增长迅速的渲染器。
  3. 安全参考实现:实施“可信目录” (Trusted Catalog) 模式的指南。

技术深度解析:为什么要用 JSON?

A2UI 采取了一个有争议但深思熟虑的立场:JSON 优于可执行代码。

A2UI Agent 不会生成 JSX 或 HTML 字符串(这会招致 XSS 和注入攻击),而是发出 声明式 JSON 负载

{
  "type": "card",
  "id": "flight-details-123",
  "children": [
    {
      "type": "text",
      "style": "heading",
      "content": "飞往东京 (HND) 的航班"
    },
    {
      "type": "button",
      "action": "book_ticket",
      "label": "确认预订"
    }
  ]
}

“可信目录” 安全模型

客户端应用程序(您的前端)维护一个 “可信目录” (Trusted Catalog) —— 像 Card, Button, Chart 这样已批准组件的注册表。Agent 只是按名称引用这些组件。

  • Agent:“我想要一个写着‘购买’的 Button。”
  • 客户端:“我确认我有一个 Button 组件。我用我自己的样式和事件处理程序来渲染它。”

这意味着 零代码注入。Agent 无法在用户设备上执行任意 JavaScript 或 CSS,解决了 CTO 们部署 GenAI 时的首要安全顾虑。

A2UI vs. Vercel AI SDK:对手还是伙伴?

随着 Vercel AI SDK 的 GenerativeUI 功能兴起,许多开发者都在问:我该选哪一个?

答案很可能是 两者都要

  • Vercel AI SDK 是一个强大的 工具包 (Toolkit)。它处理“管道”——状态管理、流式传输和 Hook 集成 (useChat)。
  • A2UI 是一个 协议 (Protocol)。它是通过这些管道传输的 数据格式

场景:您可以使用 Vercel AI SDK 来管理聊天会话和流式传输响应,但响应的内容可以是 A2UI JSON 负载。这将您的 Agent 逻辑与前端框架解耦。如果您将前端从 Next.js 切换到 Flutter Mobile,您的 Agent 不需要更改——它仍然说 A2UI 语言。

社区反应与未来

此次发布引发了开源社区的极大兴趣。Reddit 和 Hacker News 上的讨论强调了“纯文本墙的终结”是主要益处。

社区开发者已经在构建 自定义渲染器。Reddit 上一个值得注意的例子展示了一个 DIY React 渲染器,它将 A2UI JSON 转换为交互式电子商务购物车,证明了该协议的灵活性。

快速开始

加入这场革命:

  1. a2ui.org 阅读规范。
  2. 尝试 构建航班预订 Agent 教程。
  3. 探索 安全架构
newsopen-sourcegoogleprotocolarchitecture