{
  "name": "CrowdAlpha AgentLayer",
  "description": "AgentLayer provides authorized WorldState access on behalf of people and organizations, preserving evidence, provenance, uncertainty, redaction, entitlements and blockers. Private-agent execution inside the Sovereign AI environment is in development; this read-first A2A card grants no private-runtime or action capability.",
  "supportedInterfaces": [
    {
      "url": "https://api.crowdalpha.ai/api/v1/a2a",
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "1.0",
      "availability": "NOT_GENERALLY_AVAILABLE",
      "hostedRuntimeExternallyProven": false
    }
  ],
  "provider": {
    "organization": "CrowdAlpha",
    "url": "https://crowdalpha.ai"
  },
  "version": "crowdalpha_agent_interface_v1",
  "documentationUrl": "https://crowdalpha.ai/agents.md",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": true,
    "extensions": [
      {
        "uri": "https://crowdalpha.ai/extensions/agentlayer-envelope/v1",
        "description": "A2A data artifacts preserve the crowdalpha.agent.v1 envelope.",
        "required": true,
        "params": {
          "schemaVersion": "crowdalpha.agent.v1",
          "readFirst": true,
          "liveStateMutationAllowed": false,
          "llmGeneratedFactsAllowed": false,
          "retailOrConsumerSelfServe": false,
          "discoveryLeadsAllowed": true,
          "discoveryOutputsMustPreserve": [
            "evidence",
            "blockers",
            "uncertainty",
            "entitlement posture",
            "next-action posture"
          ],
          "responseShapeContract": {
            "field": "responseShape",
            "shapes": [
              "posture",
              "contextualized",
              "evidence",
              "report",
              "decision"
            ],
            "verbosity": ["terse", "standard", "full"],
            "evidenceDepth": ["refs", "summaries", "full"],
            "default": "contextualized",
            "appliesToRoutes": [
              "/api/v1/world-query",
              "/api/v1/context/resolve",
              "/api/v1/world-context",
              "/api/v1/diff",
              "/api/v1/composite-scores",
              "/api/v1/state-packages/{package_id}/query"
            ],
            "note": "Choose the output shape: evidence (data-forward governed evidence refs), contextualized (governed packet, default), posture (minimal decision gate), report (prose), or decision (authority-gated act/which-power recommendation). Every shape is a view over the already-redacted envelope and preserves discoveryOutputsMustPreserve; the evidence shape returns candidate-only refs, never asserted fact and never a provider payload."
          },
          "sourceRefContract": {
            "schemaName": "AgentSourceRef",
            "sourceBackedEvidenceRequiredFields": [
              "sourceType",
              "sourceId",
              "occurredAt",
              "publishedAt",
              "provenanceKeys"
            ],
            "identityFields": [
              "sourceType",
              "sourceId",
              "sourceFamily",
              "sourceArtifactId",
              "sourceRecordId",
              "url"
            ],
            "timestampFields": [
              "occurredAt",
              "publishedAt",
              "eventOccurredAt",
              "eventPublishedAt",
              "asOf",
              "sourceFirstSeenAt",
              "publicationTime"
            ],
            "provenanceFields": ["provenanceKeys"],
            "resolveRoute": {
              "method": "GET",
              "path": "/api/v1/evidence/{evidenceId}",
              "idField": "evidenceId",
              "appliesTo": {
                "sourceTypes": ["world_evidence"],
                "evidenceIdPattern": "^observation:.+$"
              }
            },
            "inlineResolution": {
              "sourceTypes": [
                "world_query_semantic_replay_proof",
                "world_query_single_port_replay_proof"
              ],
              "resolutionType": "inline_source_ref",
              "pointerField": "resolutionPointer",
              "evidenceByIdCompatible": false
            }
          }
        }
      }
    ]
  },
  "securitySchemes": {
    "bearerAuth": {
      "httpAuthSecurityScheme": {
        "scheme": "Bearer",
        "bearerFormat": "JWT or ca_agent_<public_prefix>_<secret>",
        "description": "Use a stored AgentLayer API key for machine callers or an approved JWT/session token."
      }
    }
  },
  "securityRequirements": [
    {
      "bearerAuth": []
    }
  ],
  "defaultInputModes": ["application/json"],
  "defaultOutputModes": ["application/json"],
  "skills": [
    {
      "id": "crowdalpha.resolve_context",
      "name": "Resolve Governed Context",
      "description": "Resolve an approved business-agent task into current WorldState state, evidence, contradictions, blockers, discovery leads, and next-action posture.",
      "tags": ["worldstate", "context", "evidence", "discovery", "read-first"],
      "examples": [
        "Resolve sanctioned exposure context for vessel IMO 9512331."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.world_query",
      "name": "Ask WorldQuery",
      "description": "Ask an arbitrary governed natural-language question through the AI-native WorldQuery planner, read-only DB/RAG/tool runtime, evidence refs, blockers, and live-AI report synthesis contract.",
      "tags": [
        "worldstate",
        "worldquery",
        "rag",
        "evidence",
        "report",
        "read-first"
      ],
      "examples": [
        "For a Walmart supply-chain risk desk, what changed this week around Shanghai/Yangshan flows?",
        "For an approved agent, find hidden connections in the governed evidence and say what to verify next."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.world_context",
      "name": "Get World Context",
      "description": "Read one entity's grounded state packet with evidence, contradictions, causal context, and audit rules.",
      "tags": ["worldstate", "entity", "evidence", "causal-context"],
      "examples": ["Get world context for entity-red-sea."],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.state_diff",
      "name": "Get State Diff",
      "description": "Read a time-bounded diff of accepted WorldState transitions for one entity.",
      "tags": ["worldstate", "diff", "transition", "monitoring"],
      "examples": ["Get the last accepted state changes for entity-red-sea."],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.composite_scores",
      "name": "Get Composite Scores",
      "description": "Read workflow-specific composite scores derived from current WorldState variables.",
      "tags": ["worldstate", "decision-input", "score", "risk"],
      "examples": [
        "Read maritime route pressure and compliance pressure for entity-red-sea."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.sanctions_exposure",
      "name": "Get Sanctions Exposure",
      "description": "Read the current sanctions-exposure decision input for exactly one vessel identifier, with confidence, uncertainty, authorities, blockers, and evidence refs.",
      "tags": [
        "worldstate",
        "decision-input",
        "sanctions",
        "evidence",
        "read-first"
      ],
      "examples": ["Check sanctions exposure for IMO 9512331."],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.state_package_decision_inputs",
      "name": "Get State Package Decision Inputs",
      "description": "Read transition-backed state-package decision inputs by stable decisionInputId, with evidence, uncertainty, and entitlement-aware redaction.",
      "tags": [
        "worldstate",
        "state-package",
        "decision-input",
        "evidence",
        "read-first"
      ],
      "examples": [
        "Read route_viability_input for package-backed maritime routing.",
        "Fetch sanctions_exposure_input as a state-package decision input."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.evidence_by_id",
      "name": "Resolve Evidence By ID",
      "description": "Resolve one AgentLayer evidence ref such as observation:<id> through the governed EvidenceObservation contract without falling back to broad evidence lists.",
      "tags": ["worldstate", "evidence", "provenance", "audit", "read-first"],
      "examples": [
        "Resolve observation:obs-current before citing a decision-input evidence ref."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.state_packages",
      "name": "List State Packages",
      "description": "Read honest package readiness, maturity, coverage, blockers, customer-safe status, and strict Core1 target trainability audit fields.",
      "tags": [
        "worldstate",
        "package-readiness",
        "core1-trainability",
        "coverage",
        "enterprise"
      ],
      "examples": [
        "List package readiness across maritime, sanctions, logistics, space/aerospace, critical minerals/mining, energy, and cyber domains.",
        "Explain which package targets are blocked by missing strict Core1 label, evidence, or lineage audit fields."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.state_package_query",
      "name": "Query State Package",
      "description": "Run a read-first natural-language state-package query through the governed WorldState planner, evidence pack, blockers, and claim-validated report contract.",
      "tags": [
        "worldstate",
        "state-package",
        "query",
        "report",
        "evidence",
        "read-first"
      ],
      "examples": [
        "Ask for a claim-validated maritime report about American vessels in Shanghai/Yangshan.",
        "Query what changed this week in the maritime package without starting feeds or mutations."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.state_package_simulations",
      "name": "List State Package Simulations",
      "description": "Read visible counterfactual state-package simulation branch metadata, with owner filtering, entitlement-aware redaction, and simulation source refs.",
      "tags": [
        "worldstate",
        "state-package",
        "simulation",
        "counterfactual",
        "read-first"
      ],
      "examples": [
        "Read visible maritime package simulation branches without running a new branch.",
        "Inspect package what-if branch metadata while preserving entitlement filters."
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    },
    {
      "id": "crowdalpha.core1_decision_records",
      "name": "Read Core1 Decision Records",
      "description": "Read Core1 model-output decision records, candidate observations, linked transitions, and observation-only contract metadata.",
      "tags": ["core1", "decision-record", "observation-only", "audit"],
      "examples": ["Read Core1 decision records for an entitled entity scope."],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"],
      "securityRequirements": [
        {
          "bearerAuth": []
        }
      ]
    }
  ],
  "x-crowdalpha": {
    "schemaVersion": "crowdalpha.a2a.agent_card.v1",
    "agentInterfaceVersion": "crowdalpha_agent_interface_v1",
    "resultEnvelope": "crowdalpha.agent.v1",
    "messageSendPath": "/api/v1/a2a/message:send",
    "publicAgentCardPath": "/.well-known/agent-card.json",
    "sourceOfTruth": "api_v1_stable_contract_registry",
    "deployment": {
      "status": "LOCAL_HOSTABLE_READY_EXTERNAL_AWS_PROOF_REQUIRED",
      "hostedRuntimeExternallyProven": false,
      "productionLimitsApproved": false,
      "generalAvailability": "NOT_GENERALLY_AVAILABLE",
      "canonicalApiTarget": "https://api.crowdalpha.ai",
      "canonicalA2aTarget": "https://api.crowdalpha.ai/api/v1/a2a",
      "connectionPolicy": "approved_access_deployment_handoff_required"
    },
    "worldStateMutationAllowed": false,
    "taskPersistence": false,
    "outboundDelegation": false,
    "businessModel": "agent_market_approved_access",
    "discoveryLeadPolicy": "Discovery leads require evidence, blockers, uncertainty, entitlement posture, and next-action posture; unsupported certainty is not allowed."
  }
}
