{
  "version": "0.1",
  "protocol": "open-agent-access",
  "site": {
    "name": "Kirke Labs",
    "origin": "https://www.kirkelabs.com",
    "contact": "mailto:contact@kirkelabs.com",
    "securityContact": "mailto:security@kirkelabs.com",
    "terms": "https://www.kirkelabs.com/the-prove-it-protocol"
  },
  "defaults": {
    "decision": "review",
    "respectRobotsTxt": true,
    "requireAgentIdentity": true,
    "requirePurpose": true,
    "requireReceipt": false
  },
  "rules": [
    {
      "id": "public-pages-read",
      "match": {
        "methods": [
          "GET"
        ],
        "paths": [
          "/",
          "/about",
          "/team",
          "/tooling",
          "/ecosystem",
          "/agent-city",
          "/the-prove-it-protocol",
          "/llms.txt",
          "/sitemap.xml"
        ]
      },
      "decision": "allow",
      "purposes": [
        "research",
        "indexing",
        "accessibility",
        "monitoring"
      ],
      "uses": [
        "read",
        "summarize",
        "quote",
        "ai-input"
      ],
      "deniedUses": [
        "ai-train"
      ],
      "training": false,
      "summarisation": true,
      "indexing": true,
      "attribution": {
        "required": true,
        "format": "source-url"
      },
      "rateLimit": {
        "requests": 120,
        "window": "1m",
        "burst": 20,
        "respectRetryAfter": true
      }
    },
    {
      "id": "agent-city-demo",
      "match": {
        "methods": [
          "GET",
          "POST"
        ],
        "paths": [
          "/agent-city",
          "/agent-city-scenarios.json",
          "/api/agent-city/scenarios",
          "/api/agent-city/preflight",
          "/api/agent-city/policy",
          "/api/agent-city/receipt"
        ]
      },
      "decision": "allow",
      "purposes": [
        "research",
        "demo",
        "monitoring",
        "indexing"
      ],
      "uses": [
        "read",
        "summarize",
        "ai-input",
        "simulate"
      ],
      "deniedUses": [
        "ai-train"
      ],
      "attribution": {
        "required": true,
        "format": "source-url"
      },
      "rateLimit": {
        "requests": 60,
        "window": "1m",
        "burst": 10,
        "respectRetryAfter": true
      }
    },
    {
      "id": "agent-city-paid-step",
      "match": {
        "methods": [
          "POST"
        ],
        "paths": [
          "/api/agent-city/step",
          "/api/agent-city/premium/**"
        ]
      },
      "decision": "charge",
      "purposes": [
        "research",
        "commerce",
        "monitoring",
        "demo"
      ],
      "uses": [
        "read",
        "summarize",
        "ai-input",
        "settle"
      ],
      "deniedUses": [
        "ai-train"
      ],
      "price": {
        "amount": "0.01",
        "currency": "USD",
        "unit": "request"
      },
      "payment": {
        "type": "x402",
        "settlement": "algorand",
        "network": "testnet",
        "scheme": "exact",
        "asset": "USDC",
        "assetIdEnv": "USDC_TESTNET_ASA_ID",
        "payToEnv": "AVM_ADDRESS",
        "facilitatorUrlEnv": "FACILITATOR_URL"
      },
      "rateLimit": {
        "requests": 30,
        "window": "1m",
        "burst": 5,
        "respectRetryAfter": true
      },
      "receipt": {
        "required": true,
        "signing": "optional-v0"
      }
    },
    {
      "id": "deny-ai-training",
      "match": {
        "methods": [
          "GET",
          "POST"
        ],
        "paths": [
          "/**"
        ]
      },
      "decision": "deny",
      "purposes": [
        "model-training",
        "training"
      ],
      "uses": [
        "ai-train"
      ]
    }
  ],
  "expiresAt": "2027-06-30T23:59:59Z",
  "jurisdiction": "EU",
  "reviewUrl": "https://www.kirkelabs.com/the-prove-it-protocol"
}
