{
  "type": "record",
  "Aspect": {
    "name": "aiAgentDependencies"
  },
  "name": "AIAgentDependencies",
  "namespace": "com.linkedin.pegasus2avro.agent",
  "fields": [
    {
      "Relationship": {
        "/*": {
          "entityTypes": [
            "agentSkill"
          ],
          "name": "AgentHasSkill"
        }
      },
      "Searchable": {
        "/*": {
          "fieldName": "skills",
          "fieldType": "URN",
          "queryByDefault": false
        }
      },
      "type": [
        "null",
        {
          "type": "array",
          "items": "string"
        }
      ],
      "name": "skills",
      "default": null,
      "doc": "High-level skills this agent adopts.",
      "Urn": "Urn",
      "urn_is_array": true
    },
    {
      "Relationship": {
        "/*": {
          "entityTypes": [
            "api"
          ],
          "isLineage": true,
          "isUpstream": true,
          "name": "AgentUsesTool"
        }
      },
      "Searchable": {
        "/*": {
          "fieldName": "tools",
          "fieldType": "URN",
          "queryByDefault": false
        }
      },
      "type": [
        "null",
        {
          "type": "array",
          "items": "string"
        }
      ],
      "name": "tools",
      "default": null,
      "doc": "APIs this agent invokes (cataloged API entities).",
      "Urn": "Urn",
      "urn_is_array": true
    },
    {
      "Relationship": {
        "/*": {
          "entityTypes": [
            "mlModel"
          ],
          "name": "AgentUsesModel"
        }
      },
      "type": [
        "null",
        {
          "type": "array",
          "items": "string"
        }
      ],
      "name": "models",
      "default": null,
      "doc": "Models (LLMs) this agent runs on.",
      "Urn": "Urn",
      "urn_is_array": true
    }
  ],
  "doc": "Dependencies of an AI agent: the skills it adopts, the tools it\ninvokes, and the models it runs on. These are governance/discovery\nrelationships to first-class catalog entities."
}