@ag-ui/a2a

中文文档
0.0.7发布于 2026/10/13MITTypeScriptESM + CJS构建来源已验证近 30 天下载 2.7万

将 AG- UI 代理连接到远程服务并曝光 A2A 协议它将 AG-UI 对话转换为 A2A 有效载荷,通过正式的 A2A SDK 转发,并将回放回A

中文使用文档
文档目录9 节
  1. 特征
  2. 安装
  3. 快开始
  4. 配置参考
  5. 环境变量认证( A)
  6. 公用事业
  7. 测试
  8. 实例
  9. 发布清单

@ag-ui/a2a (韩语)

将 AG- UI 代理连接到远程服务并曝光 A2A 协议它将AG-UI对话转换为A2A有效载荷,通过官方的A2A SDK转发,并重放回AG-UI事件流.

状态 : 实验 API在集成稳定时可能会改变.

特征

  • AG-UI和A2A格式(用户,助手,工具,二进制有效载荷)之间的信件转换辅助器.
  • A2AAgent 对 A2A 端点进行阻断请求.
  • 当代理服务器不支持 SSE 时, 可选择从流到阻断请求的回退 .
  • 显示 A2A 消息的事件转换工具、任务状态更新以及作为 AG-UI 事件的文物块.
  • 帮助工具计划( E)send_message_to_a2a_agent),用于管弦乐场景.
  • 实例客户端和Vitest测试以验证转换和流流.

安装

一旦依赖性安装在单列后 :

pnpm install
pnpm --filter @ag-ui/a2a build

快开始

import { A2AAgent } from "@ag-ui/a2a";

import { A2AClient } from "@a2a-js/sdk/client";

const client = new A2AClient("https://my-a2a-agent");

const agent = new A2AAgent({
  a2aClient: client,
  initialMessages: [{ id: "user-1", role: "user", content: "Plan a team offsite" } as any],
});

const { result, newMessages } = await agent.runAgent();
console.log(result);
console.log(newMessages);

你可以自己注射药了 A2AClient 实例 client 选项, 覆盖默认指令, 或通过设置强制阻塞模式 strategy: "blocking"。 。 。 .

配置参考

选项说明
a2aClient要求。 提供 A2AClient 实例(带有任何认证头或自定义获取您需要的逻辑).

环境变量认证( A)

整合依赖于基础的A2A代理认证. 共同模式包括:

  • A2A_AGENT_URL – 设置在部署环境中以指向远程代理基址.
  • A2A_API_KEY 或者说 A2A_BEARER_TOKEN - 被包裹所消耗 fetch 在自定义内 A2AClient 例如,远程代理执行 API 密钥或无记名认证.

将任何全权证书送交 A2AClient 您给 A2AAgent,或配置 HTTP 代理以注入正确的信头.

公用事业

  • convertAGUIMessagesToA2A(messages, options) ——将AG-UI历史重塑为A2A消息对象,只转发用户/助手/工具转动并保存工具有效载荷.
  • convertA2AEventToAGUIEvents(event, options) 将 A2A 流事件映射到 AG- UI 文本和工具事件(TEXT_MESSAGE_CHUNK, (中文(简体) ), TOOL_CALL_*, (中文(简体) ), TOOL_CALL_RESULT) (中文(简体) ).
  • sendMessageToA2AAgentTool JSON计划描述 send_message_to_a2a_agent 用于管弦乐器的工具.

测试

pnpm --filter @ag-ui/a2a test

该套房涵盖转换边缘大小写和使用被嘲笑的A2A客户端进行流回/回落行为.

实例

  • examples/basic.ts - 最小的脚本。 如果你准备好了 A2A_AGENT_URL它会通过真实的 A2AClient。否则它会回到一个小的模拟客户端,这样就可以在不触及远程端点的情况下观察整合.

发布清单

  1. pnpm --filter @ag-ui/a2a build
  2. pnpm --filter @ag-ui/a2a test
  3. 更新 ChangeGELOG / 发布注释.
  4. 发布方式 pnpm publish --filter @ag-ui/a2a。 。 。 .

版本与发布记录

@ag-ui/a2a 共发布 7 个版本,首次发布于 2025/10/23;过去 12 个月发布了 2 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.0.7latest2026/10/1325 天前
0.0.62025/12/1710 个月前
0.0.52025/10/241 年前
0.0.42025/10/231 年前
0.0.32025/10/231 年前
0.0.22025/10/231 年前

关于 @ag-ui/a2a 的常见问题

@ag-ui/a2a 是什么?

将 AG- UI 代理连接到远程服务并曝光 A2A 协议它将 AG-UI 对话转换为 A2A 有效载荷,通过正式的 A2A SDK 转发,并将回放回A

如何安装 @ag-ui/a2a?

在项目目录运行 npm install @ag-ui/a2a,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@ag-ui/core(>=1.0.0)、@ag-ui/client(>=1.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@ag-ui/a2a 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@ag-ui/a2a 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@ag-ui/a2a 可以商用吗?

@ag-ui/a2a 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@ag-ui/a2a 的下载量有多少?

根据 npm 官方下载统计,@ag-ui/a2a 在 2026/10/05 – 2026/11/03 这 30 天内被下载 27,216 次,日均约 907 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@ag-ui/a2a 还在维护吗?

最新版本 0.0.7 发布于 2026/10/13(25 天前);至今共发布 7 个版本,其中过去 12 个月发布了 2 个;首次发布于 2025/10/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。