一条来自 Flashcat 事件墙、灭火图或北极星的告警进入 AI SRE 后,排查往往需要 FlashAI 继续分析。FlashAI 有自己的模型、提示词和数据访问能力,也可能运行在另一套网络里。此时把排查过程拆成一连串工具调用,不仅难以表达完整目标,也让 AI SRE 承担了本应由 FlashAI 做的判断。更合适的做法是把整个分析任务交给 FlashAI,再接收它的进度和结论。
这就是 A2A(Agent-to-Agent)解决的问题。它是 Google 发起的开放协议,允许 AI SRE 把完整任务交给外部 Agent,也允许其他 Agent 把任务交给 AI SRE。控制台提供「连接 FlashAI」模板;接入自有 Agent 时,则登记地址、认证方式和调用说明。
工具和 Agent 不是一回事
MCP 和 A2A 的工程分界,不在于接口长什么样,而在于谁负责决定下一步。
| MCP 工具 | A2A Agent | |
|---|---|---|
| 下一步由谁决定 | AI SRE 决定调用顺序 | 远端 Agent 自己推进任务 |
| 交互方式 | 一次请求、一次响应 | 任务可能持续数分钟,也可能等待输入或授权 |
| 状态和失败 | 基本无状态,失败表现为报错 | 保留对话状态,也可以正常回复「无法完成」 |
如果 AI SRE 需要自己编排每一步,就用 MCP;如果对方需要结合自己的上下文完成一段工作,就用 A2A。我们在从 MCP 到 CLI里讨论过工具接口的取舍;在产品里,连接器目录中的第三方系统走 MCP,外部 Agent 走 A2A。
派出去的任务长什么样
委派的唯一入口是一个异步工具,调用后立即返回任务号,AI SRE 可以继续处理当前对话。远端进度流式写入独立任务卡:卡片带 A2A 徽标,显示 Agent 名、任务、当前状态、工具调用数、Token 和耗时;完整过程可在侧边面板查看。远端需要补充输入或授权时,任务会暂停并说明在等什么,不会被记为失败。结束后,结果作为新消息回到对话。
一个会话最多并行 20 个任务,任务结束后释放名额;委派链最多三层,单次调用最长 30 分钟。连接失败与 Agent 启动较慢使用不同的超时:不可连接会快速失败,加载模型或读取上下文不会被启动超时误判。
怎么让 AI SRE 知道该找谁
「调用说明」告诉 AI SRE 何时选择这个 Agent。它分为常驻的 summary 和首次实际委派时才加载的正文:
---
summary: 一句话说清楚这个 Agent 擅长什么、什么时候该优先派给它
---
正文:具体怎么调,措辞要求、前置条件、输出格式、什么情况不要派给它……
选择 Agent 时,AI SRE 只看到名称和简介,因此简介应写清产品、动作和适用场景。调用规则、前置条件、输出格式和反例放在正文即可。整份说明上限 50 KB,简介上限 1024 个字符。
请求从哪里发出去
出站请求不从 Flashduty 服务端发出,而是从当前会话所在的执行环境发出:云端环境或你部署的 Runner。内网 Agent 需要由能访问该网络的 Runner 调用。

「执行环境」不是转发路由。调用始终在会话自己的环境中运行,这个配置只决定 Agent 在哪些环境中可用。如果只有一台 Runner 能访问 Agent,就只选择那台 Runner。当前环境不可达时,AI SRE 会得到明确原因,而不是看到 Agent 从清单中无声消失,从而可以改用其他方案。
地址可以填写服务根地址,由平台按 A2A 约定查找 /.well-known/agent-card.json;也可以填写完整路径并按原样读取。平台不会主动扫描 Agent,仍需在控制台登记。
认证有三种给法
认证方式对应三种边界:
- 全账户共用:登记一次 Bearer Token 或 API Key,账户内所有会话共用,适合团队共享远端账号。
- 每人一把密钥:首次调用时由用户填写,密钥按用户加密保存在账户中,适合按人授权或计费。
- 每人一次 OAuth(OAuth 2.1):首次调用自动发起授权,凭证按用户隔离。
OAuth 请求也从所选执行环境发出,可以是云端 Sandbox,也可以是能访问内网授权服务的 BYOC Runner。所有已存密钥在界面中均以掩码返回,编辑时留空表示保留原值。
默认方式是全账户共用。如果远端能执行高风险写操作,应改用个人密钥或个人 OAuth,避免把同一凭证暴露给账户内所有会话。
我们自己也是一个 A2A Agent
AI SRE 也发布 Agent Card,任何 A2A 客户端都可以调用:
curl -H "Fd-App-Key: $APP_KEY" \
https://api.flashcat.cloud/safari/a2a/ai-sre/agent-card
它声明三项能力:端到端定位故障根因,在指定时间窗查询并总结服务日志,以及查询并总结指标。外部客户端与产品内部使用同一条接口,没有特权通道。
Agent Card 还声明了可选扩展,调用方可以在消息中指定执行环境,以及结果是否出现在会话列表。不使用扩展也能正常调用,无需为 AI SRE 做额外适配。
边界
委派后,AI SRE 只能看到远端主动上报的状态;远端内部执行了什么、使用了哪些工具,除非随进度返回,否则不可见。
系统不自动重试。委派中途断流时,原因会写入任务结果,由 AI SRE 判断是否再试,最多一次。这样不会在不知情的情况下重复执行远端操作。
从哪儿开始
入口在控制台的 AI SRE → A2A Agents。Flashcat 告警和故障可以从「连接 FlashAI」模板开始;自有 Agent 则填写地址、认证方式和调用说明。
完整的字段说明和 Agent Card 的接口细节在文档里。


