{
  "protocol": "Agent Interoperability Protocol",
  "protocolVersion": "1.0",
  "siteOrigin": "https://getaip.org",
  "documentationRoot": "/docs",
  "pageCount": 55,
  "navigation": [
    {
      "id": "start-here",
      "title": "Start Here",
      "pages": [
        "/docs",
        "/docs/getting-started/what-is-aip",
        "/docs/getting-started/installation",
        "/docs/getting-started/quickstart",
        "/docs/getting-started/how-aip-works"
      ]
    },
    {
      "id": "core-concepts",
      "title": "Core Concepts",
      "pages": [
        "/docs/concepts/capabilities",
        "/docs/concepts/actions-and-sessions",
        "/docs/concepts/identity-and-trust",
        "/docs/concepts/approvals-and-policy",
        "/docs/concepts/transactions-and-compensation",
        "/docs/concepts/delegation",
        "/docs/concepts/profiles-and-connectors"
      ]
    },
    {
      "id": "build-with-aip",
      "title": "Build with AIP",
      "pages": [
        "/docs/guides/use-native-aip",
        "/docs/guides/use-rust-sdk",
        "/docs/guides/use-aip-through-mcp",
        "/docs/guides/use-aip-through-a2a"
      ]
    },
    {
      "id": "connectors",
      "title": "Connectors",
      "pages": [
        "/docs/connectors",
        "/docs/connectors/cal-diy",
        "/docs/connectors/hermes-agent",
        "/docs/connectors/chatwoot",
        "/docs/connectors/dify",
        "/docs/connectors/crewai",
        "/docs/guides/build-a-connector",
        "/docs/guides/upgrade-connector-sdk"
      ]
    },
    {
      "id": "deploy-and-operate",
      "title": "Deploy and Operate",
      "pages": [
        "/docs/guides/production-deployment",
        "/docs/reference/configuration",
        "/docs/reference/environment-variables",
        "/docs/guides/observe-and-recover",
        "/docs/guides/operator-runbooks"
      ]
    },
    {
      "id": "api-reference",
      "title": "API Reference",
      "pages": [
        "/docs/reference/http-api",
        "/docs/reference/transport-bindings",
        "/docs/reference/cli",
        "/docs/reference/errors",
        "/docs/reference/glossary"
      ]
    },
    {
      "id": "architecture-and-security",
      "title": "Architecture and Security",
      "pages": [
        "/docs/architecture",
        "/docs/architecture/overview",
        "/docs/architecture/gateway",
        "/docs/architecture/runtime",
        "/docs/architecture/dependency-graph",
        "/docs/architecture/security-model"
      ]
    },
    {
      "id": "protocol-standard",
      "title": "Protocol Standard",
      "pages": [
        "/docs/spec",
        "/docs/spec/aip-1.0",
        "/docs/spec/schemas",
        "/docs/spec/compatibility-profiles",
        "/docs/spec/connector-contract",
        "/docs/reference/conformance"
      ]
    },
    {
      "id": "qualification-and-evidence",
      "title": "Qualification and Evidence",
      "pages": [
        "/docs/reference/implementation-status",
        "/docs/testing",
        "/docs/connectors/upstream-baselines",
        "/docs/testing/live-product-e2e",
        "/docs/testing/cal-diy-isolated-live",
        "/docs/testing/hermes-agent-isolated-live"
      ]
    },
    {
      "id": "project-and-releases",
      "title": "Project and Releases",
      "pages": [
        "/docs/project/contributing",
        "/docs/project/code-of-conduct",
        "/docs/project/security"
      ]
    }
  ],
  "pages": [
    {
      "title": "AIP Documentation",
      "description": "Agent Interoperability Protocol (AIP) gives applications, agents, tools, and workflow systems one governed way to discover capabilities, start work, follow its lifecycle, request human approval, and prove what happened.",
      "route": "/docs",
      "canonical": "https://getaip.org/docs/",
      "raw": "/docs/raw/index.md",
      "section": "Start Here",
      "kind": "Documentation overview",
      "source": "docs/README.md"
    },
    {
      "title": "What AIP Is",
      "description": "AIP is a protocol for running useful work across agents and applications when a simple tool call is not enough.",
      "route": "/docs/getting-started/what-is-aip",
      "canonical": "https://getaip.org/docs/getting-started/what-is-aip",
      "raw": "/docs/raw/getting-started/what-is-aip.md",
      "section": "Start Here",
      "kind": "Getting started",
      "source": "docs/getting-started/what-is-aip.md"
    },
    {
      "title": "Install AIP",
      "description": "This guide installs the AIP daemon and operator CLI from a source checkout. AIP does not currently document a public binary distribution, so a reproducible source build is the supported installation path.",
      "route": "/docs/getting-started/installation",
      "canonical": "https://getaip.org/docs/getting-started/installation",
      "raw": "/docs/raw/getting-started/installation.md",
      "section": "Start Here",
      "kind": "Getting started",
      "source": "docs/getting-started/installation.md"
    },
    {
      "title": "Quickstart",
      "description": "This guide starts one local AIP daemon, discovers its manifest, invokes a real capability, and reads the resulting lifecycle state. It uses native HTTP with a development bearer identity.",
      "route": "/docs/getting-started/quickstart",
      "canonical": "https://getaip.org/docs/getting-started/quickstart",
      "raw": "/docs/raw/getting-started/quickstart.md",
      "section": "Start Here",
      "kind": "Getting started",
      "source": "docs/getting-started/quickstart.md"
    },
    {
      "title": "How AIP Works",
      "description": "AIP turns a request into a governed, observable unit of work. The protocol does not assume that work finishes in one HTTP response or that the caller and the system performing the work share the same technology stack.",
      "route": "/docs/getting-started/how-aip-works",
      "canonical": "https://getaip.org/docs/getting-started/how-aip-works",
      "raw": "/docs/raw/getting-started/how-aip-works.md",
      "section": "Start Here",
      "kind": "Getting started",
      "source": "docs/getting-started/how-aip-works.md"
    },
    {
      "title": "Capabilities and Contracts",
      "description": "A capability is an operation that another participant can discover and invoke. It can represent a tool, workflow, agent behavior, channel operation, human task, or readable resource.",
      "route": "/docs/concepts/capabilities",
      "canonical": "https://getaip.org/docs/concepts/capabilities",
      "raw": "/docs/raw/concepts/capabilities.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/capabilities.md"
    },
    {
      "title": "Actions and Sessions",
      "description": "An action is one requested unit of work. A session is an optional durable relationship that groups related work between two principals.",
      "route": "/docs/concepts/actions-and-sessions",
      "canonical": "https://getaip.org/docs/concepts/actions-and-sessions",
      "raw": "/docs/raw/concepts/actions-and-sessions.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/actions-and-sessions.md"
    },
    {
      "title": "Identity and Trust",
      "description": "AIP carries rich identity context, but data inside an envelope is not trusted merely because it is well formed. Production security begins when a transport identity is verified and mapped to server-owned context.",
      "route": "/docs/concepts/identity-and-trust",
      "canonical": "https://getaip.org/docs/concepts/identity-and-trust",
      "raw": "/docs/raw/concepts/identity-and-trust.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/identity-and-trust.md"
    },
    {
      "title": "Approvals and Policy",
      "description": "Approvals let an automated workflow stop before a sensitive side effect, show a human or external policy system exactly what is being authorized, and resume the same operation after a verified decision.",
      "route": "/docs/concepts/approvals-and-policy",
      "canonical": "https://getaip.org/docs/concepts/approvals-and-policy",
      "raw": "/docs/raw/concepts/approvals-and-policy.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/approvals-and-policy.md"
    },
    {
      "title": "Transactions and Compensation",
      "description": "Many business operations are not safe as one opaque tool call. A payment, booking, CRM mutation, or account change may need validation, approval, commit, reconciliation, and a compensating action.",
      "route": "/docs/concepts/transactions-and-compensation",
      "canonical": "https://getaip.org/docs/concepts/transactions-and-compensation",
      "raw": "/docs/raw/concepts/transactions-and-compensation.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/transactions-and-compensation.md"
    },
    {
      "title": "Delegation",
      "description": "Delegation lets one AIP participant ask another participant to execute a child action while preserving identity, scope, lifecycle, and evidence.",
      "route": "/docs/concepts/delegation",
      "canonical": "https://getaip.org/docs/concepts/delegation",
      "raw": "/docs/raw/concepts/delegation.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/delegation.md"
    },
    {
      "title": "Profiles, Transports, and Connectors",
      "description": "AIP has one native semantic model. Transports, compatibility profiles, and connectors solve different integration problems around that model.",
      "route": "/docs/concepts/profiles-and-connectors",
      "canonical": "https://getaip.org/docs/concepts/profiles-and-connectors",
      "raw": "/docs/raw/concepts/profiles-and-connectors.md",
      "section": "Core Concepts",
      "kind": "Concept",
      "source": "docs/concepts/profiles-and-connectors.md"
    },
    {
      "title": "Use Native AIP",
      "description": "Native AIP is the full-fidelity interface for clients that need durable actions, trusted identity, approvals, transactions, delegation, receipts, or operational queries without projecting them through another protocol.",
      "route": "/docs/guides/use-native-aip",
      "canonical": "https://getaip.org/docs/guides/use-native-aip",
      "raw": "/docs/raw/guides/use-native-aip.md",
      "section": "Build with AIP",
      "kind": "Guide",
      "source": "docs/guides/use-native-aip.md"
    },
    {
      "title": "Use the Rust SDK",
      "description": "The aip crate is the public Rust facade. It always re-exports the semantic core and exposes runtime, gateway, transport, profile, storage, conformance, and connector modules through explicit Cargo features.",
      "route": "/docs/guides/use-rust-sdk",
      "canonical": "https://getaip.org/docs/guides/use-rust-sdk",
      "raw": "/docs/raw/guides/use-rust-sdk.md",
      "section": "Build with AIP",
      "kind": "Guide",
      "source": "docs/guides/use-rust-sdk.md"
    },
    {
      "title": "Use AIP through MCP",
      "description": "AIP exposes its native capabilities to MCP clients without running a separate business runtime. MCP requests enter the same gateway, use the same handlers, and produce the same durable actions, policy decisions, events, and receipts as nati",
      "route": "/docs/guides/use-aip-through-mcp",
      "canonical": "https://getaip.org/docs/guides/use-aip-through-mcp",
      "raw": "/docs/raw/guides/use-aip-through-mcp.md",
      "section": "Build with AIP",
      "kind": "Guide",
      "source": "docs/guides/use-aip-through-mcp.md"
    },
    {
      "title": "Use AIP through A2A",
      "description": "AIP exposes an A2A 1.0 compatibility edge backed by the same native gateway, policy engine, durable action store, and handlers used by native AIP and MCP. Use this path when an external agent already speaks A2A and should participate withou",
      "route": "/docs/guides/use-aip-through-a2a",
      "canonical": "https://getaip.org/docs/guides/use-aip-through-a2a",
      "raw": "/docs/raw/guides/use-aip-through-a2a.md",
      "section": "Build with AIP",
      "kind": "Guide",
      "source": "docs/guides/use-aip-through-a2a.md"
    },
    {
      "title": "Connector Documentation",
      "description": "Connectors translate product APIs and events into the same native AIP capability, identity, lifecycle, policy, and error model.",
      "route": "/docs/connectors",
      "canonical": "https://getaip.org/docs/connectors",
      "raw": "/docs/raw/connectors.md",
      "section": "Connectors",
      "kind": "Documentation",
      "source": "docs/connectors/README.md"
    },
    {
      "title": "Cal.diy Connector",
      "description": "The Cal.diy connector projects the pinned self-hosted scheduling API into 81 typed AIP capabilities. It is built into aipd and is the reference product connector for governed mutations, tenant credential routing, signed webhook ingress, ide",
      "route": "/docs/connectors/cal-diy",
      "canonical": "https://getaip.org/docs/connectors/cal-diy",
      "raw": "/docs/raw/connectors/cal-diy.md",
      "section": "Connectors",
      "kind": "Connector",
      "source": "docs/connectors/cal-diy.md"
    },
    {
      "title": "Hermes Agent Connector",
      "description": "aip-connector-hermes-agent maps the stable Hermes API-server surface to AIP capabilities and can, when explicitly enabled, register each Hermes instance as a governed AIP router/operator principal. Product-specific Hermes DTOs remain inside",
      "route": "/docs/connectors/hermes-agent",
      "canonical": "https://getaip.org/docs/connectors/hermes-agent",
      "raw": "/docs/raw/connectors/hermes-agent.md",
      "section": "Connectors",
      "kind": "Connector",
      "source": "docs/connectors/hermes-agent.md"
    },
    {
      "title": "Chatwoot Connector",
      "description": "The Chatwoot connector turns customer conversations into AIP channel events and exposes governed actions for replies, conversation status, and human handoff.",
      "route": "/docs/connectors/chatwoot",
      "canonical": "https://getaip.org/docs/connectors/chatwoot",
      "raw": "/docs/raw/connectors/chatwoot.md",
      "section": "Connectors",
      "kind": "Connector",
      "source": "docs/connectors/chatwoot.md"
    },
    {
      "title": "Dify Connector",
      "description": "The Dify connector maps configured Dify applications to native AIP capabilities. It supports workflow, completion, chat, advanced chat, agent chat, and agent API families without placing Dify DTOs in the AIP semantic core.",
      "route": "/docs/connectors/dify",
      "canonical": "https://getaip.org/docs/connectors/dify",
      "raw": "/docs/raw/connectors/dify.md",
      "section": "Connectors",
      "kind": "Connector",
      "source": "docs/connectors/dify.md"
    },
    {
      "title": "CrewAI Connector",
      "description": "The CrewAI integration has two deployment components:",
      "route": "/docs/connectors/crewai",
      "canonical": "https://getaip.org/docs/connectors/crewai",
      "raw": "/docs/raw/connectors/crewai.md",
      "section": "Connectors",
      "kind": "Connector",
      "source": "docs/connectors/crewai.md"
    },
    {
      "title": "Build a Connector",
      "description": "A connector makes an existing product behave like an AIP participant without moving that product's business logic into the protocol runtime.",
      "route": "/docs/guides/build-a-connector",
      "canonical": "https://getaip.org/docs/guides/build-a-connector",
      "raw": "/docs/raw/guides/build-a-connector.md",
      "section": "Connectors",
      "kind": "Guide",
      "source": "docs/guides/build-a-connector.md"
    },
    {
      "title": "Upgrade a Connector to the Frozen SDK",
      "description": "The frozen connector SDK makes product integrations use one trusted execution, failure, lifecycle, and conformance boundary. This guide migrates a legacy connector without changing native AIP semantics.",
      "route": "/docs/guides/upgrade-connector-sdk",
      "canonical": "https://getaip.org/docs/guides/upgrade-connector-sdk",
      "raw": "/docs/raw/guides/upgrade-connector-sdk.md",
      "section": "Connectors",
      "kind": "Guide",
      "source": "docs/guides/upgrade-connector-sdk.md"
    },
    {
      "title": "Production Deployment",
      "description": "This guide describes the boundaries a production aipd deployment needs. It does not prescribe one cloud or orchestrator.",
      "route": "/docs/guides/production-deployment",
      "canonical": "https://getaip.org/docs/guides/production-deployment",
      "raw": "/docs/raw/guides/production-deployment.md",
      "section": "Deploy and Operate",
      "kind": "Guide",
      "source": "docs/guides/production-deployment.md"
    },
    {
      "title": "aipd Configuration Reference",
      "description": "aipd uses explicit command-line options to compose storage, identity, transports, profiles, delegation routes, and product connectors. Run aipd --help for the exact binary you are deploying.",
      "route": "/docs/reference/configuration",
      "canonical": "https://getaip.org/docs/reference/configuration",
      "raw": "/docs/raw/reference/configuration.md",
      "section": "Deploy and Operate",
      "kind": "Reference",
      "source": "docs/reference/configuration.md"
    },
    {
      "title": "Environment Variables",
      "description": "aipd accepts environment variables for deployment wiring and secret-file references. Command-line options are easier to inspect locally; environment variables are useful in orchestrators that inject configuration at process start.",
      "route": "/docs/reference/environment-variables",
      "canonical": "https://getaip.org/docs/reference/environment-variables",
      "raw": "/docs/raw/reference/environment-variables.md",
      "section": "Deploy and Operate",
      "kind": "Reference",
      "source": "docs/reference/environment-variables.md"
    },
    {
      "title": "Observe and Recover",
      "description": "AIP exposes an operational read model so an operator can answer what the system knows without reconstructing truth from logs.",
      "route": "/docs/guides/observe-and-recover",
      "canonical": "https://getaip.org/docs/guides/observe-and-recover",
      "raw": "/docs/raw/guides/observe-and-recover.md",
      "section": "Deploy and Operate",
      "kind": "Guide",
      "source": "docs/guides/observe-and-recover.md"
    },
    {
      "title": "Operator Runbooks",
      "description": "These runbooks define first-response steps for common AIP incidents. They are starting procedures, not substitutes for deployment-specific ownership, alerting thresholds, backup policy, or change control.",
      "route": "/docs/guides/operator-runbooks",
      "canonical": "https://getaip.org/docs/guides/operator-runbooks",
      "raw": "/docs/raw/guides/operator-runbooks.md",
      "section": "Deploy and Operate",
      "kind": "Guide",
      "source": "docs/guides/operator-runbooks.md"
    },
    {
      "title": "Native HTTP API",
      "description": "This reference describes the native HTTP binding implemented by aipd 1.0. The generic message endpoint carries complete AIP envelopes. Ergonomic operational routes accept or return the corresponding native body objects.",
      "route": "/docs/reference/http-api",
      "canonical": "https://getaip.org/docs/reference/http-api",
      "raw": "/docs/raw/reference/http-api.md",
      "section": "API Reference",
      "kind": "Reference",
      "source": "docs/reference/http-api.md"
    },
    {
      "title": "Transport Bindings",
      "description": "Transport bindings move AIP messages without changing their semantic meaning. The action id, authenticated principal, policy decision, lifecycle, and error contract remain the same across HTTP, NATS, SSE, and WebSocket.",
      "route": "/docs/reference/transport-bindings",
      "canonical": "https://getaip.org/docs/reference/transport-bindings",
      "raw": "/docs/raw/reference/transport-bindings.md",
      "section": "API Reference",
      "kind": "Reference",
      "source": "docs/reference/transport-bindings.md"
    },
    {
      "title": "aipctl Command Reference",
      "description": "aipctl is the developer and operator client for native AIP, MCP compatibility, schemas, connectors, and receipt verification.",
      "route": "/docs/reference/cli",
      "canonical": "https://getaip.org/docs/reference/cli",
      "raw": "/docs/raw/reference/cli.md",
      "section": "API Reference",
      "kind": "Reference",
      "source": "docs/reference/cli.md"
    },
    {
      "title": "Errors and Retry Decisions",
      "description": "AIP errors are structured so clients can decide whether to correct input, ask for authority, wait, reconcile, or stop. Human-readable text is for diagnosis; automation should use the stable code, category, and retry fields.",
      "route": "/docs/reference/errors",
      "canonical": "https://getaip.org/docs/reference/errors",
      "raw": "/docs/raw/reference/errors.md",
      "section": "API Reference",
      "kind": "Reference",
      "source": "docs/reference/errors.md"
    },
    {
      "title": "Glossary",
      "description": "This glossary gives the user-facing meaning of common AIP terms. Normative field definitions remain in the AIP 1.0 Specification.",
      "route": "/docs/reference/glossary",
      "canonical": "https://getaip.org/docs/reference/glossary",
      "raw": "/docs/raw/reference/glossary.md",
      "section": "API Reference",
      "kind": "Reference",
      "source": "docs/reference/glossary.md"
    },
    {
      "title": "Architecture Documentation",
      "description": "These documents explain how the Rust workspace implements the AIP 1.0 semantics. They are descriptive implementation documentation; the AIP 1.0 Specification remains the normative wire contract.",
      "route": "/docs/architecture",
      "canonical": "https://getaip.org/docs/architecture",
      "raw": "/docs/raw/architecture.md",
      "section": "Architecture and Security",
      "kind": "Documentation",
      "source": "docs/architecture/README.md"
    },
    {
      "title": "Architecture Overview",
      "description": "AIP is a layered Rust workspace. The filesystem mirrors the runtime boundary so core semantics, transport mechanics, compatibility profiles, product connectors, and daemon boot code do not collapse into one crate.",
      "route": "/docs/architecture/overview",
      "canonical": "https://getaip.org/docs/architecture/overview",
      "raw": "/docs/raw/architecture/overview.md",
      "section": "Architecture and Security",
      "kind": "Architecture",
      "source": "docs/architecture/overview.md"
    },
    {
      "title": "Gateway",
      "description": "aip-gateway is the composition boundary between native envelopes, runtime services, profiles, transports, and connectors. It remains a library crate so it can be embedded by aipd, tests, and product-specific host processes.",
      "route": "/docs/architecture/gateway",
      "canonical": "https://getaip.org/docs/architecture/gateway",
      "raw": "/docs/raw/architecture/gateway.md",
      "section": "Architecture and Security",
      "kind": "Architecture",
      "source": "docs/architecture/gateway.md"
    },
    {
      "title": "Runtime",
      "description": "aip-runtime owns reusable in-process services for sessions, capabilities, action lifecycle, event streams, idempotency, escalation, audit, settlement state, and lease-aware queued work execution. It has no dependency on product connectors.",
      "route": "/docs/architecture/runtime",
      "canonical": "https://getaip.org/docs/architecture/runtime",
      "raw": "/docs/raw/architecture/runtime.md",
      "section": "Architecture and Security",
      "kind": "Architecture",
      "source": "docs/architecture/runtime.md"
    },
    {
      "title": "Dependency Graph",
      "description": "The Rust workspace is acyclic. An arrow in the diagram means \"depends on\"; arrows point from a consumer to the lower-level crate or layer it consumes.",
      "route": "/docs/architecture/dependency-graph",
      "canonical": "https://getaip.org/docs/architecture/dependency-graph",
      "raw": "/docs/raw/architecture/dependency-graph.md",
      "section": "Architecture and Security",
      "kind": "Architecture",
      "source": "docs/architecture/dependency-graph.md"
    },
    {
      "title": "Security Model",
      "description": "AIP separates semantic authorization from transport authentication and connector-specific authenticity checks. This prevents a legacy profile or product connector from implicitly becoming a universal trust root.",
      "route": "/docs/architecture/security-model",
      "canonical": "https://getaip.org/docs/architecture/security-model",
      "raw": "/docs/raw/architecture/security-model.md",
      "section": "Architecture and Security",
      "kind": "Architecture",
      "source": "docs/architecture/security-model.md"
    },
    {
      "title": "AIP Specification Suite",
      "description": "This directory contains the versioned protocol contract and supporting profile references.",
      "route": "/docs/spec",
      "canonical": "https://getaip.org/docs/spec",
      "raw": "/docs/raw/spec.md",
      "section": "Protocol Standard",
      "kind": "Documentation",
      "source": "docs/spec/README.md"
    },
    {
      "title": "Agent Interoperability Protocol (AIP) 1.0",
      "description": "Agent Interoperability Protocol (AIP) defines a transport-independent semantic contract for discovering and invoking capabilities across agents, tools, workflow systems, customer channels, and enterprise applications.",
      "route": "/docs/spec/aip-1.0",
      "canonical": "https://getaip.org/docs/spec/aip-1.0",
      "raw": "/docs/raw/spec/aip-1.0.md",
      "section": "Protocol Standard",
      "kind": "Normative specification",
      "source": "docs/spec/AIP-1.0.md"
    },
    {
      "title": "AIP JSON Schemas",
      "description": "The schemas are the machine-readable part of the AIP 1.0 Specification. They use JSON Schema Draft 2020-12, stable $id values, closed typed objects, and the exact wire names generated from the semantic model. A release binds those stable id",
      "route": "/docs/spec/schemas",
      "canonical": "https://getaip.org/docs/spec/schemas",
      "raw": "/docs/raw/spec/schemas.md",
      "section": "Protocol Standard",
      "kind": "Specification reference",
      "source": "docs/spec/schemas.md"
    },
    {
      "title": "AIP Compatibility Profiles",
      "description": "This is a supporting implementation reference. Section 21 of the AIP 1.0 Specification defines the normative compatibility boundary; profile-specific schemas, version matrices, and conformance suites define the exact foreign-protocol wire b",
      "route": "/docs/spec/compatibility-profiles",
      "canonical": "https://getaip.org/docs/spec/compatibility-profiles",
      "raw": "/docs/raw/spec/compatibility-profiles.md",
      "section": "Protocol Standard",
      "kind": "Specification reference",
      "source": "docs/spec/compatibility-profiles.md"
    },
    {
      "title": "AIP Connector Contract",
      "description": "This document summarizes the connector boundary. The normative protocol rules are in the AIP 1.0 Specification; the frozen Rust SDK contract is defined by RFC 0004 and aip-connector; the task-oriented implementation guide is Build a Connect",
      "route": "/docs/spec/connector-contract",
      "canonical": "https://getaip.org/docs/spec/connector-contract",
      "raw": "/docs/raw/spec/connector-contract.md",
      "section": "Protocol Standard",
      "kind": "Specification reference",
      "source": "docs/spec/connector-contract.md"
    },
    {
      "title": "Conformance and Qualification",
      "description": "Conformance answers whether an implementation follows a protocol contract. Qualification answers whether a particular build and deployment works with its real dependencies under the required conditions. AIP treats them as related but differ",
      "route": "/docs/reference/conformance",
      "canonical": "https://getaip.org/docs/reference/conformance",
      "raw": "/docs/raw/reference/conformance.md",
      "section": "Protocol Standard",
      "kind": "Reference",
      "source": "docs/reference/conformance.md"
    },
    {
      "title": "Implementation Status",
      "description": "This page separates the AIP 1.0 protocol contract from what the current Rust workspace and retained qualification evidence prove. The implementation review baseline is the 1.0.0 source line at commit e176a84c288767ffac6cff1e96a5c2ad02530399",
      "route": "/docs/reference/implementation-status",
      "canonical": "https://getaip.org/docs/reference/implementation-status",
      "raw": "/docs/raw/reference/implementation-status.md",
      "section": "Qualification and Evidence",
      "kind": "Reference",
      "source": "docs/reference/implementation-status.md"
    },
    {
      "title": "Testing and Qualification Evidence",
      "description": "This directory contains deployment and external-product evidence. It does not replace deterministic unit, integration, conformance, or schema tests.",
      "route": "/docs/testing",
      "canonical": "https://getaip.org/docs/testing",
      "raw": "/docs/raw/testing.md",
      "section": "Qualification and Evidence",
      "kind": "Documentation",
      "source": "docs/testing/README.md"
    },
    {
      "title": "Product Connector Upstream Baselines",
      "description": "This document records the exact upstream source revisions used to design and qualify AIP product connectors. The repositories are independent clean-room reference checkouts adjacent to the AIP repository. They are not vendored, linked into ",
      "route": "/docs/connectors/upstream-baselines",
      "canonical": "https://getaip.org/docs/connectors/upstream-baselines",
      "raw": "/docs/raw/connectors/upstream-baselines.md",
      "section": "Qualification and Evidence",
      "kind": "Connector",
      "source": "docs/connectors/upstream-baselines.md"
    },
    {
      "title": "Live Product End-to-End Tests",
      "description": "Contract tests and live product tests provide different evidence and are kept separate:",
      "route": "/docs/testing/live-product-e2e",
      "canonical": "https://getaip.org/docs/testing/live-product-e2e",
      "raw": "/docs/raw/testing/live-product-e2e.md",
      "section": "Qualification and Evidence",
      "kind": "Qualification evidence",
      "source": "docs/testing/live-product-e2e.md"
    },
    {
      "title": "Cal.diy Isolated-Live Connector Qualification",
      "description": "Topology: one AIP daemon, one pinned Cal.diy API deployment, separate AIP and Cal.diy PostgreSQL databases, Redis, an RFC 7662 OAuth introspection fixture, and one non-agent qualification runner on two internal Docker networks.",
      "route": "/docs/testing/cal-diy-isolated-live",
      "canonical": "https://getaip.org/docs/testing/cal-diy-isolated-live",
      "raw": "/docs/raw/testing/cal-diy-isolated-live.md",
      "section": "Qualification and Evidence",
      "kind": "Qualification evidence",
      "source": "docs/testing/cal-diy-isolated-live.md"
    },
    {
      "title": "Hermes Agent Isolated-Live Qualification",
      "description": "Topology: two isolated Hermes Agent containers, one AIP daemon, RFC 7662 OAuth introspection, NATS, and a deterministic Postgres support system of record.",
      "route": "/docs/testing/hermes-agent-isolated-live",
      "canonical": "https://getaip.org/docs/testing/hermes-agent-isolated-live",
      "raw": "/docs/raw/testing/hermes-agent-isolated-live.md",
      "section": "Qualification and Evidence",
      "kind": "Qualification evidence",
      "source": "docs/testing/hermes-agent-isolated-live.md"
    },
    {
      "title": "Contributing to AIP",
      "description": "Thank you for improving Agent Interoperability Protocol. AIP is both a versioned wire contract and a Rust implementation, so a change is complete only when its protocol, code, schema, tests, and documentation remain consistent.",
      "route": "/docs/project/contributing",
      "canonical": "https://getaip.org/docs/project/contributing",
      "raw": "/docs/raw/project/contributing.md",
      "section": "Project and Releases",
      "kind": "Project policy",
      "source": "CONTRIBUTING.md"
    },
    {
      "title": "Code of Conduct",
      "description": "The Agent Interoperability Protocol project is committed to a professional, safe, and evidence-based technical community. Participation is conditioned on respect for other contributors and for the users affected by protocol, security, and d",
      "route": "/docs/project/code-of-conduct",
      "canonical": "https://getaip.org/docs/project/code-of-conduct",
      "raw": "/docs/raw/project/code-of-conduct.md",
      "section": "Project and Releases",
      "kind": "Project policy",
      "source": "CODE_OF_CONDUCT.md"
    },
    {
      "title": "Security Policy",
      "description": "Report vulnerabilities privately to the maintainers. Do not publish exploit details, proof-of-concept payloads, or affected deployment identifiers before a fix is available and affected operators have had time to update.",
      "route": "/docs/project/security",
      "canonical": "https://getaip.org/docs/project/security",
      "raw": "/docs/raw/project/security.md",
      "section": "Project and Releases",
      "kind": "Project policy",
      "source": "SECURITY.md"
    }
  ]
}
