用途:实现 Agent-to-Agent(A2A)协议,让智能体之间能够发现、委派任务并协作,适用于多智能体编排场景。
主要能力:
- Agent Card:每个兼容 A2A 的智能体需暴露 GET /.well-known/agent.json,返回名称、描述、版本、URL、provider、capabilities(含 inputSchema/outputSchema)、authentication(如 bearer、api_key)与 rateLimit(如 requestsPerMinute)。
- 任务执行:通过 POST /tasks/send 提交任务,请求含 task_id、capability、input、可选 callback_url;响应返回 task_id、status(如 accepted)与 stream_url。
- 流式事件:GET /tasks/{taskId}/stream,Accept: text/event-stream,事件类型包括 task_progress、task_artifact、task_complete。
- 智能体发现:注册表接口支持 Register、Unregister、Discover、Get;发现端点如 GET /agents/discover?capability=answer_question&tags=support。
- 客户端与编排:资料给出 Go 客户端(GetAgentCard、SendTask、StreamTask)与 Supervisor 模式示例,流程为发现能力匹配的智能体、选择、发送任务、流式收集结果。
使用方式:按资料中的 Go 代码结构定义 AgentCard、SendTaskRequest、TaskResponse 等类型,实现对应 HTTP 处理器与客户端;调用时先获取 Agent Card,再发送任务并订阅 SSE 流。
限制:资料未提供具体安装命令、依赖版本、收费或价格信息;示例基于 Go 与 Fiber,其他语言实现暂未提供;认证、限流等细节以资料所列字段为准。