SuperAPI AI 工具集

a2a-js-dev

智能体与模型

查看项目

更新于 10-15 20:35

技能介绍

用途:使用 @a2a-js/sdk 构建符合 A2A 协议规范 v0.3.0 的智能体间应用,分为服务端(Agent)与客户端(Consumer)两侧。服务端通过 Agent Card 声明能力并处理消息、管理任务、发布事件;客户端负责发现智能体、发送消息、跟踪任务并消费流式更新。

主要能力:支持 JSON-RPC、HTTP+JSON/REST、gRPC 三种传输绑定(gRPC 仅限 Node.js);提供 AgentExecutor 承载业务逻辑,通过 ExecutionEventBus 发布 message、task、status-update、artifact-update 事件;DefaultRequestHandler 编排任务创建、状态流转与事件路由;InMemoryTaskStore 用于开发,生产可自定义 TaskStore;ClientFactory 可自动发现 Agent Card 并选择传输。任务状态机含 working、completed、failed、canceled、rejected、input_required、auth_required,支持多轮对话(contextId 分组、taskId 续接)与流式进度更新。

使用方式:安装 npm install @a2a-js/sdk,Express 集成需 npm install express,gRPC 需 npm install @grpc/grpc-js @bufbuild/protobuf。定义 Agent Card 后实现 AgentExecutor,用 DefaultRequestHandler 与 InMemoryTaskStore 装配,再挂载 agentCardHandler、jsonRpcHandler、restHandler 等 Express 处理器;客户端用 ClientFactory.createFromUrl 创建并调用 sendMessage、sendStreamingMessage、getTask、cancelTask。

限制:gRPC 仅支持 Node.js;示例中 UserBuilder.noAuthentication 仅用于开发,生产需配置认证;InMemoryTaskStore 不适合生产;execute() 结束须调用 eventBus.finished(),最后一个 status-update 需设 final: true。完整协议与 SDK API 见资料中 references/protocol-spec.md 与 references/sdk-api.md,其余细节暂未提供。