{
  "$schema": "https://schemas.a2a.dev/agent-card/v0.2.json",
  "protocolVersion": "0.2.0",
  "name": "nexus",
  "displayName": "selfdriven.nexus",
  "description": "The Network of Verified Context Graphs for human and artificial intelligence. nexus turns isolated information into trusted, living context so people, organisations, and AI can coordinate, learn, and act on one shared source of truth.",
  "url": "https://nexus.selfdriven.services/a2a/v1",
  "documentationUrl": "https://nexus.selfdriven.services",
  "iconUrl": "https://nexus.selfdriven.services/logo-nexus-flamingo.png",
  "version": "1.0.0",
  "provider": {
    "organization": "selfdriven",
    "service": "selfdriven.nexus",
    "url": "https://selfdriven.services"
  },
  "capabilities": {
    "streaming": true,
    "pushNotifications": true,
    "stateTransitionHistory": true
  },
  "defaultInputModes": ["text/plain", "application/json", "application/vc+ld+json"],
  "defaultOutputModes": ["text/plain", "application/json", "application/vc+ld+json"],
  "skills": [
    {
      "id": "query-context-graph",
      "name": "Query a Verified Context Graph",
      "description": "Read entities, relationships, evidence, actions, outcomes, and governance from a VCG. Returns answers grounded in persistent, verifiable context rather than re-supplied background.",
      "tags": ["vcg", "read", "context", "query"],
      "examples": [
        "What is the current state of the Q3 community-housing actuation graph?",
        "Show the evidence supporting the 'eligibility confirmed' assertion on claim #4821."
      ],
      "inputModes": ["text/plain", "application/json"],
      "outputModes": ["text/plain", "application/json"]
    },
    {
      "id": "assert-with-evidence",
      "name": "Assert with linked evidence",
      "description": "Write a new assertion or edge into a VCG, binding it to supporting evidence (credentials, observations, documents, transactions, attestations). Mutating: emits a KERI interaction event anchoring a SHA-256 digest of the change.",
      "tags": ["vcg", "write", "evidence", "mutation", "keri"],
      "examples": [
        "Record that 'training completed' for learner EAbc…, evidenced by ACDC credential EDef…",
        "Assert a dependency edge between 'permit granted' and 'works commenced', with the permit PDF as evidence."
      ],
      "inputModes": ["application/json", "application/vc+ld+json"],
      "outputModes": ["application/json"]
    },
    {
      "id": "verify-assertion",
      "name": "Verify an assertion",
      "description": "Resolve the evidence chain behind an assertion and check its cryptographic integrity against the KEL/ACDC trust layer. Answers not only what is known but why it is believed.",
      "tags": ["vcg", "verification", "acdc", "audit", "trust"],
      "examples": [
        "Verify the provenance of the 'identity verified' assertion on AID EGhi…",
        "Is the evidence for outcome O-2291 still valid and unrevoked?"
      ],
      "inputModes": ["text/plain", "application/json"],
      "outputModes": ["application/json"]
    },
    {
      "id": "coordinate-actuation",
      "name": "Coordinate community self-actuation",
      "description": "Support the self-actuation loop — Understand, Define, Coordinate, Measure, Adapt — across a community's VCG, aligning human and AI activity toward shared, measurable outcomes.",
      "tags": ["actuation", "coordination", "outcomes", "community", "governance"],
      "examples": [
        "Define target outcomes for the neighbourhood resilience graph and propose a coordination plan.",
        "Measure progress against the agreed outcomes and surface where we should adapt."
      ],
      "inputModes": ["text/plain", "application/json"],
      "outputModes": ["text/plain", "application/json"]
    }
  ],
  "securitySchemes": {
    "keri-acdc": {
      "type": "mutualTLS",
      "description": "KERI/ACDC self-sovereign identity. Callers authenticate with a KERI AID; authorization is granted via ACDC credentials. Mutating operations require a signed request anchored to the caller's KEL."
    },
    "passkey": {
      "type": "openIdConnect",
      "description": "FIDO2/WebAuthn passkey sign-in for human conductors, bound to their controlling AID.",
      "openIdConnectUrl": "https://id.selfdriven.services/.well-known/openid-configuration"
    }
  },
  "security": [
    { "keri-acdc": [] },
    { "passkey": [] }
  ],
  "x-selfdriven": {
    "ecosystem": "selfdriven Foundation",
    "service": "selfdriven.nexus",
    "primitive": "Verified Context Graph (VCG)",
    "vcgElements": ["entities", "relationships", "evidence", "actions", "outcomes", "governance"],
    "identity": {
      "aid": "EPLACEHOLDER-nexus-service-aid-replace-with-real-KERI-prefix",
      "_comment": "Replace 'aid' with a real KERI AID prefix generated by the KERI stack before deployment.",
      "transferable": true,
      "witnessThreshold": 2
    },
    "delegation": {
      "model": "Human Conductor",
      "focusSplit": "70/30",
      "delegatorAid": "EPLACEHOLDER-conductor-delegator-aid",
      "areaOfFocus": "AOF-7: Intelligence & Context",
      "_comment": "This agent operates under a conductor-delegated AID within the 8 Areas of Focus framework."
    },
    "trustLayer": {
      "protocol": "KERI/ACDC",
      "mutationInvariant": "Every mutating operation emits a KERI interaction event (ixn) anchoring a SHA-256 digest of the change.",
      "eventTypes": ["icp", "rot", "ixn", "dip"],
      "evidenceFormat": "ACDC"
    },
    "governance": {
      "sovereignty": "Each participant retains control of their own context; nexus provides shared interoperability — a federation of context.",
      "auditable": true
    }
  }
}
