Skip to content
目录

核心架构概述

A2A(Agent2Agent) 是代理间互操作开放协议;@a2a-js/sdk 提供 TypeScript 客户端、服务端与 JSON-RPC / REST / gRPC / SSE 传输实现。

协议概念见 A2A 系列


1. 协议解决什么

问题A2A 做法
异构框架无法互通标准 HTTP + JSON-RPC + 共用 Task/Message 模型
代理当黑盒协作只交换任务与消息,不暴露内部 memory/tools
长任务异步 Task 状态机 + 流式事件

2. SDK 定位

职责
Client解析 Agent Card、发消息、跟任务、收 SSE
Server处理 RPC、驱动 Executor、写 TaskStore
Transport协议绑定与序列化(含 ProtoJSON)

3. 分层

text
应用
  ClientFactory / A2AExpressApp
    Transport (jsonrpc | rest | grpc)
      HTTP / gRPC 线协议

4. 核心概念

概念说明
Agent Card/.well-known/agent.json 能力、URL、认证
Task有状态工作单元(submitted → working → terminal)
Message对话轮次(role、parts)
Event状态变更、artifact、流式块

5. 设计原则(SDK)

  • 传输可插拔:同一业务 API 多绑定。
  • 事件驱动服务端:Executor 发事件,由框架聚合成 Task 更新。
  • 非阻塞:长任务不占满 HTTP worker。
  • ProtoJSON:REST 与 proto 定义对齐。

6. 阅读顺序

04 传输 → 02 客户端 → 03 服务端 → 05 事件与任务 → 06 决策。

总结

SDK = 把 A2A 协议跑在 Node/浏览器 上的参考实现;改行为先确认是协议语义还是传输层差异。

MIT License.