远程 A2A 代理与 Agent Card
通过远程服务委派任务,设置卡片来源、代理和加载验证。
This page has not been translated into English yet. The original Chinese version is shown below.
远程 subagent 使用 Agent-to-Agent(A2A)协议,任务交给远程服务执行。它不是在本地上下文里加载一段提示,数据与执行环境需按对应服务理解。
连接定义
在项目或用户 agents 目录放置 Markdown 文件:
---
kind: remote
name: my-remote-agent
agent_card_url: https://example.com/agent-card
---URL 为占位,需替换真实卡片端点。kind 必须 remote,name 使用小写字母、数字、连字符或下划线。agent_card_url 与 agent_card_json 至少提供一个。
内联卡片
agent_card_json 必须是包含 JSON 的字符串,不是直接嵌套 YAML 对象。多行内容适合使用 | 块标量,避免内部引号转义。官方示例的 dummy-url 是示意值,不能当作可调用服务。
卡片描述服务能力和认证要求,不能用任意普通网页 URL 代替。
一个文件多个代理
加载器支持 frontmatter 为远程代理列表,每个项目各有 kind、name 和卡片来源。该列表形式仅支持 remote;混合 local/remote 或一个文件多个 local 不支持。
代理网络
远程流量支持 general.proxy 或 HTTP_PROXY/HTTPS_PROXY。配置代理后仍需确认卡片与任务端点可达、TLS 和认证满足服务要求。
发现与认证
/agents reload 重新加载,/agents list 查看状态。CLI 首先无认证获取卡片;卡片返回 401/403 时,再附配置的认证头重试。读取卡片后会检查 securitySchemes 与 auth 配置是否一致。
不同认证方法和刷新行为见远程认证。
禁用范围
/agents disable <name> 针对指定代理。experimental.enableAgents false 同时关闭本地与远程 subagents,不是只关闭远程连接的独立开关。