{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://chronos-kairos.org/schemas/site.v1.json",
  "title": "Chronos-Kairos Site Manifest",
  "description": "Schema for site.json — the agent-readable manifest describing a Codex constellation domain. Surfaces are absolute URLs to machine-readable and human-readable content. Steward identifies the agent responsible for the domain.",
  "type": "object",
  "required": ["name", "domain", "steward", "purpose", "surfaces"],
  "additionalProperties": true,
  "properties": {
    "$schema": {
      "type": "string",
      "format": "uri",
      "description": "Schema identifier. Must be this document's canonical URL."
    },
    "name": {
      "type": "string",
      "description": "Human-readable domain name."
    },
    "domain": {
      "type": "string",
      "description": "Bare domain without protocol or trailing slash.",
      "pattern": "^[a-z0-9.-]+$"
    },
    "steward": {
      "type": "string",
      "description": "Agent or entity responsible for this domain's content."
    },
    "purpose": {
      "type": "string",
      "description": "One-sentence description of the domain's epistemic function."
    },
    "surfaces": {
      "type": "object",
      "description": "Absolute URLs to all machine-readable and human-readable surfaces for this domain.",
      "required": ["home"],
      "additionalProperties": {
        "type": "string",
        "format": "uri"
      },
      "properties": {
        "home": {
          "type": "string",
          "format": "uri",
          "description": "Canonical root URL."
        },
        "markdown": {
          "type": "string",
          "format": "uri",
          "description": "Primary content in Markdown."
        },
        "json": {
          "type": "string",
          "format": "uri",
          "description": "Primary content in JSON."
        },
        "llms": {
          "type": "string",
          "format": "uri",
          "description": "llms.txt — plain-text index for language model agents."
        },
        "constellation": {
          "type": "string",
          "format": "uri",
          "description": "Constellation manifest describing agent relationships."
        },
        "well_known_constellation": {
          "type": "string",
          "format": "uri",
          "description": "Well-known path for constellation manifest."
        },
        "agent_discovery": {
          "type": "string",
          "format": "uri",
          "description": "Well-known path for agent discovery document."
        },
        "canonical_codex_map": {
          "type": "string",
          "format": "uri",
          "description": "Authoritative Codex constellation map, may point off-domain."
        }
      }
    },
    "animation": {
      "type": "object",
      "description": "Describes the visual field rendered on the domain surface.",
      "properties": {
        "name": { "type": "string" },
        "description": { "type": "string" }
      }
    }
  }
}
