# @absolutejs/a2a 中文文档

规范地址：https://npmcn.com/package/%40absolutejs/a2a/

版本：0\.3\.6
npm 元数据更新时间：2026-07-26T18:41:26.818Z
中文译文更新时间：2026-11-08T09:32:28.747Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40absolutejs/a2a
原文对照：https://npmcn.com/package/%40absolutejs/a2a/?lang=original
源码仓库：https://github.com/absolutejs/a2a

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：84.4 kB，15 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- peer 依赖：@absolutejs/agency \>=0\.7\.3 \<0\.8\.0，drizzle-orm \>=1\.0\.0-rc\.4 \<2
- 首次发布：2026-07-16T01:07:37.816Z
- 最新版本发布：2026-07-26T18:41:26.642Z
- 近 30 天下载量：1832（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 13 个）

## 中文简介

制作 A2A 协议 1.0 客户端和服务器,具有流线,耐用任务,推出配置,以及代理执行.

## 安装

```sh
npm install @absolutejs/a2a
```

也可以使用：`pnpm add @absolutejs/a2a`、`yarn add @absolutejs/a2a`、`bun add @absolutejs/a2a`

## README

# @absolutejs/a2a (英语)

A2A 协议 **1.0 国家** 绝对JS的JSON-RPC客户端和服务器. 执行 代理卡的发现、消息、流线、任务订阅、过滤和 添加任务列表、 推动通知配置、 认证扩展 卡片、明确版本和扩展谈判以及绝对JS代理 执行.

机构是所需的东道对等单位(`>=0.7.1 <0.8.0`),而不是捆绑的依赖. 因此,主机拥有一个行动分类账和一个全A2A的合同版本 以及其他运输工具 此包件测试精确 `0.7.1`· ; 支持新的机构未成年人需要明确释放兼容性.

参考议定书: [https://a2a-protocol.org/latest/profitation.com. 互联网档案馆的存檔,存档日期2013-12-11](https://a2a-protocol.org/latest/specification/)

协议版本是故意被封住的. A2A 1.0更改了JSON-RPC 方法名称和 0. 3 的代理卡形状; 此软件包不沉默 降级,失去安全或行为.

发现和RPC客户端需要本地主机以外的 HTTPS, 拒绝证书 在URL和重定向中执行超时和响应大小限制,并验证 反应媒体类型。 服务器在解析正文前进行认证, 封顶请求 大小,将每个任务绑定起来,并将配置推到经认证的呼叫器,以及 拒绝发布未配置的可选能力.

```ts
import { createA2aHandler, createPostgresA2aTaskStore } from "@absolutejs/a2a";

const a2a = createA2aHandler({
  path: "/a2a",
  agentCard: {
    name: "Support Agent",
    description: "Resolves customer support cases.",
    version: "1.0.0",
    supportedInterfaces: [
      {
        protocolBinding: "JSONRPC",
        protocolVersion: "1.0",
        url: "https://example.com/a2a",
      },
    ],
    capabilities: {},
    defaultInputModes: ["text/plain"],
    defaultOutputModes: ["text/plain"],
    skills: [],
  },
  authorize: verifyA2aBearer,
  taskStore: createPostgresA2aTaskStore({ client }),
  agency: { agency },
  sendMessage: async ({ message }) => ({
    task: await startSupportTask(message),
  }),
});
```

同一处理器支持A2A 1.0 选取方法的广告 配置能力:

```ts
import { createMemoryA2aPushNotificationConfigStore } from "@absolutejs/a2a";

const a2a = createA2aHandler({
  // ...the required configuration above
  pushNotifications: {
    store: createMemoryA2aPushNotificationConfigStore(),
  },
  extendedAgentCard: authenticatedCard,
  sendStreamingMessage: async function* (request, context) {
    yield* runAgentStream(request, context);
  },
  subscribeToTask: async function* (task, context) {
    yield* subscribeToAgentTask(task, context);
  },
});
```

用于生产推力配置存储,执行 `A2aPushNotificationConfigStore` 与授权键隔离相同的 包括记忆存储器。 Webhook 交付应独立解决 DNS, 屏蔽私有和链接- 本地目的地, 避免重定向, 每个都认证 请求,并重试一能.

当策略需要批准时, 服务器返回一个 A2A 扩展错误 工程处 `actionId`经批准后,将同一请求重新发送至 `metadata[ABSOLUTE_AGENCY_EXTENSION].actionId`;机构重新评估政策, 并记录执行收据.

任务所有权总是按授权结果键. 打电话的人不能 探测、 列出、 取消或覆盖另一个呼叫者的任务, 以及 PostgreSQL 更新 从解剖角度保护终端任务.

运营多代理机队的主机可以在 授权结果并使用单独的运算符视图。 标签从未读取 从 A2A 请求数据。 操作结果省略任务文物和历史,除非 明确要求,所以状态控制台不会意外检索任务 载荷.

```ts
const taskStore = createPostgresA2aTaskStore({ client });

const authorized = {
  actor,
  authorizationKey,
  caller,
  ok: true as const,
  taskLabels: { clientId: actor.agentId, tenantId: tenant.id },
};

const posture = await taskStore.listForOperator({
  labels: { tenantId: tenant.id },
  pageSize: 25,
});
```

## 常见问题

### @absolutejs/a2a 是什么？

制作 A2A 协议 1\.0 客户端和服务器,具有流线,耐用任务,推出配置,以及代理执行\.

### 如何安装 @absolutejs/a2a？

在项目目录运行 npm install @absolutejs/a2a，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@absolutejs/agency（\>=0\.7\.3 \<0\.8\.0）、drizzle-orm（\>=1\.0\.0-rc\.4 \<2）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @absolutejs/a2a 支持 TypeScript 吗？

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

### @absolutejs/a2a 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @absolutejs/a2a 可以商用吗？

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

### @absolutejs/a2a 的下载量有多少？

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

### @absolutejs/a2a 还在维护吗？

最新版本 0\.3\.6 发布于 2026/07/27（3 个月前）；至今共发布 13 个版本，其中过去 12 个月发布了 13 个；首次发布于 2026/07/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

