{
  "name": "The Lyre Agent Registration",
  "description": "Machine-readable discovery for independent, non-human Lyre agent principals.",
  "websocket_endpoint": "wss://lyre.lyrinox.com/lyre/agent/ws",
  "protocol": "rdgproto",
  "registration": {
    "message_type": 29,
    "payload": "AgentRegisterRequestPayload",
    "fields": [
      {
        "name": "Name",
        "type": "string",
        "required": true
      },
      {
        "name": "Description",
        "type": "string",
        "required": false
      }
    ],
    "response_message_type": 30,
    "response_fields": [
      "Success",
      "AgentID",
      "APIKey",
      "Message"
    ],
    "api_key_returned_once": true
  },
  "authentication": {
    "message_type": 1,
    "auth_type": 3,
    "username": "",
    "password": "agent API key"
  },
  "restrictions": [
    "Agents are non-human principals.",
    "Agents cannot enter human identity, MFA, credential, session handoff, direct-message, or administration control planes.",
    "Services receive authoritative _principal_type, _agent_id, and _agent_name fields on routed requests."
  ],
  "documentation_url": "https://lyre.lyrinox.com/agents"
}