{
  "schema_version": "2.0.0",
  "site": {
    "name": "AIS FLOWS",
    "canonical_url": "https://aisflows.github.io/home/",
    "languages": [
      "en",
      "ru"
    ],
    "deployment_status": "public"
  },
  "discovery": {
    "canonical_catalog": "./content-model.json",
    "catalog_schema": "./content-model.schema.json",
    "skills_catalog": "./skills/skills-index.json",
    "media_catalog": "./media/media-index.json",
    "artifacts": "./artifacts.json",
    "artifact_schema": "./artifacts.schema.json",
    "updates": "./updates.json",
    "update_schema": "./updates.schema.json",
    "feed": "./feed.xml",
    "public_changelog": "./CHANGELOG_PUBLIC.md",
    "analytics_event_schema": "./analytics-event.schema.json",
    "link_manifest": "./links-manifest.json",
    "human_agent_index": "./AI_AGENT_DISCOVERY.md",
    "llm_index": "./llms.txt",
    "request_schema": "./request-schema.json",
    "privacy_en": "./privacy/index.html",
    "privacy_ru": "./ru/privacy/index.html",
    "course_manifest": "./course/course-agent-manifest.json",
    "sitemap": "./sitemap.xml"
  },
  "public_capabilities": [
    "read_catalog",
    "read_skills_catalog",
    "read_media_catalog",
    "search_entities",
    "read_direct_content_when_non_null",
    "read_updates",
    "follow_verified_links",
    "download_verified_artifacts",
    "open_request_page_after_user_confirmation"
  ],
  "skills_catalog": {
    "deployment_status": "public",
    "catalog_en": "./skills/index.html",
    "catalog_ru": "./ru/skills/index.html",
    "machine_index": "./skills/skills-index.json",
    "skills": [
      {
        "id": "skill-operations-pack",
        "title_en": "Skill Operations Pack",
        "title_ru": "Skill Operations Pack",
        "version": "0.1.0-rc6",
        "lifecycle": "released",
        "status": "released",
        "route_status": "verified",
        "primary_action": "open_release",
        "release_url": "https://github.com/aisflows/skill-operations-pack/releases/tag/v0.1.0-rc6",
        "action_url": "https://github.com/aisflows/skill-operations-pack/releases/tag/v0.1.0-rc6",
        "download_url": "https://github.com/aisflows/skill-operations-pack/releases/download/v0.1.0-rc6/ais-flows-skill-operations-pack-0.1.0-rc6.zip",
        "image_url": "https://aisflows.github.io/home/assets/cards/skill-operations-pack-release-cover-16x9.png",
        "unavailable_reason": null
      },
      {
        "id": "skill-cleaner",
        "title_en": "Skill Cleaner",
        "title_ru": "Skill Cleaner",
        "version": "v0.1.0-release-001",
        "lifecycle": "released",
        "status": "released",
        "route_status": "verified",
        "primary_action": "open_release",
        "release_url": "https://github.com/aisflows/skill-cleaner/releases/tag/v0.1.0-release-001",
        "action_url": "https://github.com/aisflows/skill-cleaner/releases/tag/v0.1.0-release-001",
        "download_url": null,
        "image_url": "https://aisflows.github.io/home/assets/cards/skill-cleaner-github-preview.jpg",
        "unavailable_reason": null
      },
      {
        "id": "ready-gate",
        "title_en": "Ready Gate",
        "title_ru": "Ready Gate",
        "version": "v0.1.0-ready-gate-rc1",
        "lifecycle": "released",
        "status": "released",
        "route_status": "verified",
        "primary_action": "open_release",
        "release_url": "https://github.com/aisflows/ready-gate/releases/tag/v0.1.0-ready-gate-rc1",
        "action_url": "https://github.com/aisflows/ready-gate/releases/tag/v0.1.0-ready-gate-rc1",
        "download_url": "https://github.com/aisflows/ready-gate/releases/download/v0.1.0-ready-gate-rc1/ais-flows-ready-gate-0.1.0-ready-gate-rc1.zip",
        "image_url": "https://aisflows.github.io/home/assets/cards/ready-gate-release-cover-16x9.jpeg",
        "unavailable_reason": null
      },
      {
        "id": "proofline",
        "title_en": "Proofline",
        "title_ru": "Proofline",
        "version": "v0.2.0-rc5",
        "lifecycle": "released",
        "status": "released",
        "route_status": "verified",
        "primary_action": "open_release",
        "release_url": "https://github.com/aisflows/proofline/releases/tag/v0.2.0-rc5",
        "action_url": "https://github.com/aisflows/proofline/releases/tag/v0.2.0-rc5",
        "download_url": null,
        "image_url": "https://aisflows.github.io/home/assets/proofline-square.png",
        "unavailable_reason": null
      }
    ]
  },
  "media_catalog": {
    "deployment_status": "public",
    "catalog_en": "./media/index.html",
    "catalog_ru": "./ru/media/index.html",
    "machine_index": "./media/media-index.json",
    "featured_trailer": {
      "id": "featured-youtube-trailer",
      "route_slug": "featured-youtube-trailer",
      "title_en": "AIS FLOWS trailer",
      "title_ru": "Трейлер AIS FLOWS",
      "description_en": "Featured trailer and eight confirmed AIS FLOWS media works.",
      "description_ru": "Главный трейлер и восемь подтверждённых медиаработ AIS FLOWS.",
      "media_kind": "youtube",
      "mime_type": null,
      "asset_url": null,
      "poster_url": "https://aisflows.github.io/home/assets/media/aisflows-youtube-trailer-poster.jpg",
      "width": 1280,
      "height": 720,
      "aspect_ratio": "16:9",
      "duration_ms": null,
      "lifecycle": "published",
      "status": "published_on_provider",
      "public_or_private": "public",
      "provider_url": "https://www.youtube.com/watch?v=DDpVQ53pnAI",
      "provider_id": "DDpVQ53pnAI",
      "download_url": null,
      "size_bytes": null,
      "sha256": null,
      "alt_en": "AIS FLOWS YouTube trailer poster.",
      "alt_ru": "Постер трейлера AIS FLOWS на YouTube.",
      "attribution": "AIS FLOWS / Andrei Spirydovich",
      "license_boundary": "All rights reserved; no public reuse license is granted.",
      "primary_action": "provider",
      "markers": [],
      "prompt_url": null,
      "social_urls": {
        "youtube": "https://www.youtube.com/watch?v=DDpVQ53pnAI",
        "instagram": null,
        "tiktok": null
      },
      "order": -1,
      "human_page_url_en": "https://aisflows.github.io/home/media/featured-youtube-trailer/",
      "human_page_url_ru": "https://aisflows.github.io/home/ru/media/featured-youtube-trailer/"
    },
    "works": [
      {
        "id": "jbl-jurassic-park",
        "title_en": "JBL. Jurassic Park? Never heard of it. 🦖🎧 | AI advertising",
        "title_ru": "JBL. Jurassic Park? Never heard of it. 🦖🎧 | AI advertising",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 41215,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/dCX4VlgEkk8",
          "instagram": "https://www.instagram.com/p/DbUUtnpK1yq/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7667387333196434708"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/jbl-jurassic-park/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/jbl-jurassic-park/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-media-jbl-jurassic-park-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "interstellar-millers-planet",
        "title_en": "Interstellar: Miller's Planet Is the Worst Resort in the Universe | AI Fan Trailer",
        "title_ru": "Interstellar: Miller's Planet Is the Worst Resort in the Universe | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 43305,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/XCmDNhmmp00",
          "instagram": "https://www.instagram.com/p/DbEDQq2KJHB/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7665036218937167125"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/interstellar-millers-planet/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/interstellar-millers-planet/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-media-interstellar-millers-planet-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "doom-battlefield-earth",
        "title_en": "DOOM: THE BATTLEFIELD IS EARTH | AI Fan Trailer",
        "title_ru": "DOOM: THE BATTLEFIELD IS EARTH | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 49876,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/iyqO3Sel4eA",
          "instagram": "https://www.instagram.com/p/DU6gNXRim2Y/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7608327208469417236"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/doom-battlefield-earth/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/doom-battlefield-earth/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-media-doom-battlefield-earth-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "witcher-monsters-men",
        "title_en": "THE WITCHER: Monsters & Men | AI Fan Trailer",
        "title_ru": "THE WITCHER: Monsters & Men | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 54010,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/MBIVxINnkNY",
          "instagram": "https://www.instagram.com/p/DVyzeVsig2q/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7616440679534726420"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/witcher-monsters-men/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/witcher-monsters-men/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-media-witcher-monsters-men-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "28-days-later",
        "title_en": "28 DAYS LATER: USA | AI Fan Trailer",
        "title_ru": "28 DAYS LATER: USA | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 46200,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/68T1UU4WXdg",
          "instagram": "https://www.instagram.com/p/DULPeiuioZ9/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7601510848963579157"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/28-days-later/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/28-days-later/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-preview-28-days-later-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "dead-space",
        "title_en": "DEAD SPACE: THE SIGNAL | AI Fan Trailer",
        "title_ru": "DEAD SPACE: THE SIGNAL | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 67800,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/H8Mdi7AubC8",
          "instagram": "https://www.instagram.com/p/DPl9pu9CkWm/",
          "tiktok": "https://www.tiktok.com/@aisflows/photo/7560619174192581900"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/dead-space/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/dead-space/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-preview-dead-space-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "godzilla",
        "title_en": "GODZILLA: D-DAY | AI Fan Trailer",
        "title_ru": "GODZILLA: D-DAY | AI Fan Trailer",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 51767,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/ONyqpXtHnkA",
          "instagram": "https://www.instagram.com/p/DTbg-CSipB4/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7594633448740900108"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/godzilla/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/godzilla/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-preview-godzilla-web.mp4",
        "provider_url": null,
        "download_url": null
      },
      {
        "id": "predator",
        "title_en": "PREDATOR: ABYSS | AI Fan Traile",
        "title_ru": "PREDATOR: ABYSS | AI Fan Traile",
        "media_kind": "local_video",
        "status": "published",
        "dimensions": "720x1280",
        "duration_ms": 62400,
        "markers": [
          "FULL"
        ],
        "social_urls": {
          "youtube": "https://youtube.com/shorts/lLuDRp7LSM8",
          "instagram": "https://www.instagram.com/p/DPUBM3vDM_O/",
          "tiktok": "https://www.tiktok.com/@aisflows/video/7556656857746574603"
        },
        "primary_action": "playback",
        "human_page_url_en": "https://aisflows.github.io/home/media/predator/",
        "human_page_url_ru": "https://aisflows.github.io/home/ru/media/predator/",
        "asset_url": "https://aisflows.github.io/home/assets/media/aisflows-preview-predator-web.mp4",
        "provider_url": null,
        "download_url": null
      }
    ]
  },
  "measurement_capabilities": {
    "browser_events": "umami_public_home_collection_verified",
    "direct_agent_fetches": "not_observable_on_static_github_pages",
    "server_aggregate_events": false
  },
  "rules": {
    "null_route": "Unavailable. Read route_unavailable_reasons and do not invent a route.",
    "private_content": "not_public and withdrawn objects must not expose content or download URLs.",
    "downloads": "Use artifacts.json and verify version, MIME, size, and SHA256 before retrieval.",
    "purchase": "No purchase route is active. purchase_url is null.",
    "request_submission": "Obtain explicit end-user confirmation before sending any request data.",
    "request_delivery": "formspree_public_home_delivery_verified",
    "registration": "Not required for public reading or verified free downloads.",
    "write_access": "No public write or administration API is exposed."
  },
  "owner_operations": {
    "mode": "local_source_controlled",
    "source_of_truth": "./content-model.json",
    "command": "node home-tools/site-content.mjs build",
    "validation": "node home-tools/site-content.mjs validate",
    "required_state_before_deploy": "approved",
    "current_state": "live_verified",
    "deploy_requires_explicit_owner_approval": true,
    "object_hashes": {
      "ais-flows-ai-video-course": "5de12c796bb5230888e55c52c6943e14131a78446e8aaeb6318c30272574d721",
      "featured-youtube-trailer": "8a20dd2f45d5c42399162b1d3aeb623a51f9083cd8eabe81f93dadbc008a61ac",
      "local-ai-gateway": "7215b5fcacd680dcae3efb983196440798df064dd818728a20adfb4790e51313",
      "proofline": "1a45dfcb2e1e679ef75f378c463d67d7bfa9a67b50a7916029183276da2eb371",
      "ready-gate": "5190dc7b8d5cb56c8f6d15339ab934332acf0e7759c9de141169c73439ae6658",
      "request": "8bff4c685c9232b59a8c302fc2cd7c449290bed74dcb009ad9fdfc7a45a04882",
      "skill-cleaner": "f01ed9266548cea5ec14c3b655bbcd627cd1c00fd970ca3a8cd36254df68ac4d",
      "skill-operations-pack": "07fdff5b1358a01709bccdbb7e4b57d1df714300e1f3dfcd4350b30a73d0675b",
      "video-builder-pack": "dc6865583755ab90baf9b3587624dd67905e18a08275ae375ec96b3441cad166"
    }
  },
  "state_machines": {
    "owner_job": [
      "received",
      "classified",
      "prepared",
      "preview_ready",
      "awaiting_owner_approval",
      "approved",
      "deployed",
      "live_verified",
      "validation_failed",
      "blocked_source_missing",
      "blocked_publication_decision",
      "cancelled"
    ],
    "public_object": [
      "draft",
      "in_development",
      "released",
      "published",
      "superseded",
      "withdrawn",
      "not_public"
    ],
    "artifact": [
      "unavailable",
      "prepared",
      "verified",
      "published",
      "withdrawn"
    ],
    "route": [
      "unavailable",
      "verified",
      "stale",
      "superseded"
    ],
    "paid_route": [
      "not_selected",
      "checkout_configured",
      "entitlement_issued",
      "signed_url_ready",
      "access_verified"
    ]
  },
  "updated_at": "2026-08-09T13:37:52Z"
}
