已开启
[Feature]: 主agent调子agent需要先与A2A网关建连 #113
JIEZHENYAN揭振砚创建于  7月21日
JIEZHENYAN揭振砚
JIEZHENYAN揭振砚成员
7月21日 创建

🚀 背景描述

现状:主agent调子agent是直调方式;
客户要求:平台部门要求不同agent间的流量必须经过网关:主agent调子agent,需要主agent先和网关建连,然后由网关调用子agent;

该特性使高码智能体能够通过 A2A 网关标准路径调用低码工作流。当前高码智能体仅支持直接拼接低码工作流 URL 调用(以下简称"直连模式"),无法适配客户侧 A2A 网关的标准地址格式,导致高码调低码场景绕过了网关的统一鉴权、链路追踪和流量管控能力。本特性补齐这一 Gap,使 A2A 网关成为高码调低码的统一调用入口。

设计思路

  • 关键设计

    • A2A 网关路由调用:高码智能体经 A2A 网关标准路径调用低码工作流,网关作为统一调用入口
    • 认证与链路追踪透传:请求经 A2A 网关时,认证信息和链路追踪标识完整透传;每个工作流携带独立的网关识别 token,网关可区分不同工作流
    • 请求体兼容:发送至 A2A 网关的请求体与直连模式一致,无需额外转换
    • 响应格式适配:A2A 网关返回格式与直连方式不一致时,系统自动适配,用户侧无感知差异
    • 差异化配置:不同工作流可独立配置超时时间等参数,未单独配置的自动继承默认值

    业务边界和约束条件

    • 版本仅支持 A2A 网关模式,不提供直连模式的切换能力;
    • 不改造上层调用方,其请求格式和路由逻辑不变
    • 不改造低码工作流的输入输出行为
    • 工作流对应的网关 Agent 名称从配置文件读取,不依赖运行时动态发现

涉及到的对外API

  • 相关接口说明
    本特性不新增南北向对外接口,仅改造 VersatileAdapter 内部调用路径。对上层 A2A Service 透明,target.type 仍为 workflowtarget.intent 路由匹配逻辑不变。北向 SSE 事件推送格式不变。

    涉及的配置接口变更:

    • versatile_proxy.yaml:新增 a2a_gateway_defaults 默认配置段和 type: a2a_gateway 适配器配置
    • .env:新增 VA_WORKFLOW_ADAPTER_TYPE 环境变量(允许值:workflow / a2a_gateway,0711 版本部署默认值为 a2a_gateway;代码层面默认值为 workflow,确保未配置时保持原有行为不变)

与其他模块的相关性描述

  • 依赖说明
    • Java 版 A2A 网关:需已部署且可访问,接受与直连模式相同的请求体格式,支持调度低码工作流
    • 高码智能体现有框架:路由匹配、配置加载、Header 透传等基础能力
    • 配置文件:需扩展支持 A2A 网关的默认参数和工作流级别的差异化配置
    • 环境变量管理:需支持调用模式切换的配置项

测试设计与测试计划

测试计划:7-30完成验证测试;

验收标准:
1、主agent所有对子agent的调用均经过网关,主agent与网关连接建立成功,且能正常收发请求
2、子agent正常返回时,主agent能正确接收并解析响应

测试用例:
用例 3.1:高码智能体通过 A2A 网关成功调用低码工作流
用例 3.2:多工作流差异化配置
用例 3.3:认证与链路追踪信息透传
用例 3.4:A2A 网关配置加载与校验
用例 3.5:网关识别 token 正确注入
用例 4.1:A2A 网关不可达
用例 4.2:A2A 网关返回格式与预期不一致
用例 4.3:A2A 网关路由配置不完整
用例 4.4:A2A 网关要求的数据格式与高码智能体发送的格式不一致
用例 4.5:网关识别 token 被外部请求覆盖

感谢您的贡献 🎉!

likedislike
JIEZHENYAN揭振砚JIEZHENYAN揭振砚成员
7月21日 添加了label:feature
openJiuwen-bot成员
7月21日 评论:

欢迎来到 openJiuwen 社区

Hey @jiezhenyan , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。

likedislike
JIEZHENYAN揭振砚JIEZHENYAN揭振砚成员
7月21日 修改了issue 的描述
JIEZHENYAN揭振砚JIEZHENYAN揭振砚成员
7月21日 修改了issue 的描述
JIEZHENYAN揭振砚JIEZHENYAN揭振砚成员
7月21日 修改了issue 的描述
JIEZHENYAN揭振砚JIEZHENYAN揭振砚成员
7月21日 修改了issue 的描述