AgentCard

AgentCard 用于传达有关远程代理的关键信息。它是 A2A 协议中定义的 AgentCard 的精简版本 https://a2a-protocol.org/dev/specification/#441-agentcard

JSON 表示法
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
字段
name

string

必需。代理的人类可读名称。

description

string

必需。代理的操作领域/解决方案空间的说明。

supportedInterfaces[]

object (AgentInterface)

必需。支持的接口的有序列表。第一个条目是首选。

version

string

必需。代理的版本。

skills[]

object (AgentSkill)

必需。技能表示智能体可以执行的能力单位。这可能有些抽象,但代表了一组更集中的操作,智能体很可能成功完成这些操作。

AgentInterface

声明了与代理互动的目标网址、传输和协议版本。这样,代理就可以通过多种协议绑定机制公开相同的功能。

JSON 表示法
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
字段
url

string

必需。相应接口可用的网址。在正式版中,必须是有效的绝对 HTTPS 网址。示例:“https://api.example.com/a2a/v1”“https://grpc.example.com/a2a”

protocolBinding

string

必需。相应网址支持的协议绑定。这是一个开放形式的字符串,可轻松扩展以用于其他协议绑定。受官方支持的核心模型包括 JSONRPC、GRPC 和 HTTP+JSON。

tenant

string

在调用代理时要在请求中使用的租户 ID。

protocolVersion

string

必需。相应接口公开的 A2A protocol 版本。使用每个主要版本的最新受支持次要版本。示例:“0.3”“1.0”

AgentSkill

表示代理可以执行的独特功能。

JSON 表示法
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
字段
id

string

必需。代理技能的唯一标识符。

name

string

必需。技能的人类可读名称。

description

string

必需。技能的详细说明。

tags[]

string

必需。一组描述技能功能的关键字。

examples[]

string

此技能可处理的提示或场景示例。

inputModes[]

string

此技能支持的输入媒体类型集,用于替换代理的默认设置。

outputModes[]

string

相应技能支持的一组输出媒体类型,用于替换代理的默认设置。