{
  "schema": "zzd_public_ai_gateway_v3",
  "kind": "public_agent_resource_graph_and_rest_adoption_spec",
  "name": "ZZD AI deployment gateway",
  "purpose": "Teach authorized external coding agents how to build, deploy, publish, maintain, distribute, and safely monetize ZZD Shows.",
  "language": [
    "en",
    "zh-CN"
  ],
  "capability_status": {
    "public_resources": "available",
    "signed_in_browser_ui": "available",
    "show_runtime_sdk": "available_when_bound",
    "space_sdk_version": "1.0.0",
    "scoped_rest_v1": "available",
    "rest_capabilities": "https://zzd.show/api/v1/capabilities/",
    "developer_credentials": "available_user_managed_scoped_expiring",
    "verified_thumbnail_upload": "available",
    "draft_private_asset_storage": "available",
    "external_mutation_transport": "https_rest_scoped_bearer",
    "remote_mcp_json_rpc": null,
    "callable_mcp_tools": false
  },
  "entrypoints": {
    "home": "https://zzd.show/",
    "human_and_agent_entry": "https://zzd.show/docs/ai/",
    "mcp_alias": "https://zzd.show/mcp/",
    "llms_txt": "https://zzd.show/llms.txt",
    "full_handbook": "https://zzd.show/llms-full.txt",
    "copyable_brief": "https://zzd.show/docs/ai/prompt/",
    "manifest": "https://zzd.show/.well-known/zzd-agent.json",
    "rest_base": "https://zzd.show/api/v1/",
    "rest_capabilities": "https://zzd.show/api/v1/capabilities/",
    "credential_management": "https://zzd.show/#panel-credentials",
    "space_sdk": "https://zzd.show/docs/ai/branch/space-sdk/"
  },
  "mandatory_flow": [
    "build_and_test_in_local_workspace",
    "user_creates_scoped_expiring_credential",
    "store_credential_in_local_secret_store_not_project_or_chat",
    "fetch_rest_capabilities_and_verify_identity",
    "create_private_hidden_draft",
    "replace_complete_authoritative_piece_tree",
    "upload_and_bind_safe_asset_bytes",
    "configure_bounded_runtime_identity_baas_if_needed",
    "create_and_attach_owned_collection_if_requested",
    "validate_rendered_experience_and_live_source",
    "validate_blank_edit_and_embed",
    "upload_verified_final_state_thumbnail_via_rest",
    "verify_draft_assets_in_owner_controlled_browser",
    "explicitly_confirm_then_call_publication_route",
    "maintain_via_draft_then_repeat_validation",
    "use_separate_reviewed_ui_sale_flow_when_requested"
  ],
  "resource_tree": [
    {
      "id": "understand",
      "title": "Understand ZZD",
      "summary": "Business scope and the safe public capability boundary.",
      "children": [
        {
          "id": "platform",
          "href": "https://zzd.show/docs/ai/branch/platform/",
          "title": "01 · What ZZD is / 平台范围"
        },
        {
          "id": "safety",
          "href": "https://zzd.show/docs/ai/branch/safety/",
          "title": "12 · Authentication and safety / 风险边界"
        },
        {
          "id": "agent-contract",
          "href": "https://zzd.show/docs/ai/branch/agent-contract/",
          "title": "13 · Agent capability contract / REST 与 MCP 边界"
        }
      ]
    },
    {
      "id": "build",
      "title": "Build a Show",
      "summary": "From project inspection to live source, assets, and BaaS.",
      "children": [
        {
          "id": "quickstart",
          "href": "https://zzd.show/docs/ai/branch/quickstart/",
          "title": "02 · Deploy a vibe-coded project / 最短路径"
        },
        {
          "id": "deployment-api",
          "href": "https://zzd.show/docs/ai/branch/deployment-api/",
          "title": "03 · Scoped REST deployment API / 部署接口"
        },
        {
          "id": "show-contract",
          "href": "https://zzd.show/docs/ai/branch/show-contract/",
          "title": "04 · Show and Piece contract / 字段"
        },
        {
          "id": "quality",
          "href": "https://zzd.show/docs/ai/branch/quality/",
          "title": "05 · Code and experience quality / 双门槛"
        },
        {
          "id": "assets",
          "href": "https://zzd.show/docs/ai/branch/assets/",
          "title": "06 · Assets and dependencies / 上传"
        },
        {
          "id": "space-sdk",
          "href": "https://zzd.show/docs/ai/branch/space-sdk/",
          "title": "07 · Space SDK / 应用接入包"
        },
        {
          "id": "baas",
          "href": "https://zzd.show/docs/ai/branch/baas/",
          "title": "08 · BaaS and service runtime / 后端能力"
        },
        {
          "id": "advanced",
          "href": "https://zzd.show/docs/ai/branch/advanced/",
          "title": "11 · Advanced patterns / WebGL 手势 仓库"
        }
      ]
    },
    {
      "id": "operate",
      "title": "Publish and operate",
      "summary": "Validate, publish, maintain, distribute, and hand off.",
      "children": [
        {
          "id": "lifecycle",
          "href": "https://zzd.show/docs/ai/branch/lifecycle/",
          "title": "09 · Publish and maintain / 生命周期"
        },
        {
          "id": "distribution",
          "href": "https://zzd.show/docs/ai/branch/distribution/",
          "title": "10 · Share, distribute, and sell / 分发上架"
        },
        {
          "id": "handoff",
          "href": "https://zzd.show/docs/ai/branch/handoff/",
          "title": "14 · Validation and final handoff / 交付"
        }
      ]
    }
  ],
  "resources": {
    "platform": {
      "title": "01 · What ZZD is / 平台范围",
      "summary": "Product scope, supported outcomes, and the public boundary.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/platform/",
      "media_type": "text/plain"
    },
    "quickstart": {
      "title": "02 · Deploy a vibe-coded project / 最短路径",
      "summary": "The safe local-first path from a project to a published Show.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/quickstart/",
      "media_type": "text/plain"
    },
    "deployment-api": {
      "title": "03 · Scoped REST deployment API / 部署接口",
      "summary": "Exact credential, draft, source, asset, BaaS, collection, publication, and maintenance contract.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/deployment-api/",
      "media_type": "text/plain"
    },
    "show-contract": {
      "title": "04 · Show and Piece contract / 字段",
      "summary": "Writable fields, read-only state, URL surfaces, and source structure.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/show-contract/",
      "media_type": "text/plain"
    },
    "quality": {
      "title": "05 · Code and experience quality / 双门槛",
      "summary": "Rendered fidelity plus genuinely live, maintainable source.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/quality/",
      "media_type": "text/plain"
    },
    "assets": {
      "title": "06 · Assets and dependencies / 上传",
      "summary": "How to localize, upload, describe, bind, and validate project files.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/assets/",
      "media_type": "text/plain"
    },
    "space-sdk": {
      "title": "07 · Space SDK / 应用接入包",
      "summary": "Stable auth, app identity, user state, creator card, and motion permission contract for every Show.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/space-sdk/",
      "media_type": "text/plain"
    },
    "baas": {
      "title": "08 · BaaS and service runtime / 后端能力",
      "summary": "Owner-scoped managed data, realtime state, jobs, and service calls.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/baas/",
      "media_type": "text/plain"
    },
    "lifecycle": {
      "title": "09 · Publish and maintain / 生命周期",
      "summary": "Draft, validate, publish, update, unpublish, and recover.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/lifecycle/",
      "media_type": "text/plain"
    },
    "distribution": {
      "title": "10 · Share, distribute, and sell / 分发上架",
      "summary": "Audience surfaces and the separate reviewed Sale lifecycle.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/distribution/",
      "media_type": "text/plain"
    },
    "advanced": {
      "title": "11 · Advanced patterns / WebGL 手势 仓库",
      "summary": "GSAP, topology/WebGL, webcam gestures, and repository imports.",
      "must_read": false,
      "href": "https://zzd.show/docs/ai/branch/advanced/",
      "media_type": "text/plain"
    },
    "safety": {
      "title": "12 · Authentication and safety / 风险边界",
      "summary": "Ambient sessions, scoped developer credentials, confirmations, and prohibitions.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/safety/",
      "media_type": "text/plain"
    },
    "agent-contract": {
      "title": "13 · Agent capability contract / REST 与 MCP 边界",
      "summary": "What REST capability is live now and what MCP transport is not exposed.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/agent-contract/",
      "media_type": "text/plain"
    },
    "handoff": {
      "title": "14 · Validation and final handoff / 交付",
      "summary": "The evidence matrix and response format for a completed deployment.",
      "must_read": true,
      "href": "https://zzd.show/docs/ai/branch/handoff/",
      "media_type": "text/plain"
    }
  },
  "security": {
    "ambient_session": "A user-controlled browser may send its existing login; the agent must never read, copy, request, print, or store it.",
    "write_boundary": "Mutations use advertised https://zzd.show/api/v1 HTTPS routes with a valid scoped expiring developer bearer, or the normal signed-in UI. Public gateway resources do not themselves accept mutations.",
    "canonical_host": "The developer and credential control planes accept only the exact canonical zzd.show Host. Never send a bearer to www, code.zzd.show, an IP address, a custom domain, or a redirect.",
    "developer_credential": "User-created in the signed-in control plane, shown once, stored locally outside the project, sent only as Authorization Bearer to zzd.show, and never returned in prompts or output.",
    "confirmation_required": [
      "publish_or_unpublish",
      "delete_show_asset_sale_or_baas_data",
      "sale_submit_purchase_reprice_or_remove",
      "credential_create_rotate_or_revoke",
      "destructive_baas_change",
      "new_sensitive_permission_or_data_recipient"
    ],
    "never_expose": [
      "passwords_cookies_sessions_csrf_or_private_keys",
      "server_topology_database_or_staff_operations",
      "generic_shell_sql_or_arbitrary_binding",
      "private_piece_prompt_or_upload_shortcuts",
      "internal_prompts_workers_model_routing_or_lifecycle_orchestrators",
      "legacy_cli_or_baas_runtime_credentials_as_developer_bearers"
    ]
  }
}