Interop

A2A mapping

Export an internal Agent Card as an official A2A v1.0 profile, or import an external A2A card as a registry stub. Platform-native fields stay internal. This is a mapping boundary — not an A2A runtime. External discovery still expects /.well-known/agent-card.json.

Export

Internal → A2A. Primary endpoint prefers protocol a2a, then http / grpc by priority.

agent:contract.escrow.v1@0.7.0 · HTTP+JSON · a2a-mapper.v1

{
  "name": "aismartcontract",
  "description": "Agentic smart-contract and escrow service. Binds a deal to Agent Card identity, license, and royalty policy.",
  "version": "0.7.0",
  "url": "https://agents.example/contracts",
  "supportedInterfaces": [
    {
      "url": "https://agents.example/contracts",
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "1.0"
    }
  ],
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": false
  },
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "escrow",
      "name": "Open escrow",
      "description": "Lock value against two Agent Card identities until completion proofs land",
      "tags": [
        "contract",
        "escrow",
        "license"
      ]
    },
    {
      "id": "license-bind",
      "name": "Bind license",
      "description": "Attach a license and sublicense chain to a card id",
      "tags": [
        "license",
        "contract",
        "escrow"
      ]
    }
  ]
}

Import

A2A → internal stub. Missing id is synthesized from source URL + name. Richer local fields are kept unless you overwrite.

Mapper log

Direction, agent id + version, source URL, mapper a2a-mapper.v1.

WhenDirTypeAgentSchemaSource
No export or import recorded yet.