{
  "schema": "aether_hallway_middleware_v0",
  "name": "Aether Hallway",
  "description": "LLM-friendly middleware map. Treat this file as the corridor: each door is a room (product). Agents enter via MCP/OpenAI connector; package installs via npm and PyPI; desk via portable ZIP.",
  "version": "0.1.1",
  "generated_for": "agents, codex, claude, chatgpt-actions, custom orchestrators",
  "offer_catalog": {
    "path": "offers.json",
    "selling_enabled": false,
    "checkout_connected": false,
    "rule": "Quote the public contract, but do not report a sale until payment, entitlement, delivery route, and receipt are all verified."
  },
  "registries": {
    "npm": {
      "url": "https://www.npmjs.com",
      "packages": [
        {
          "name": "scbe-aethermoore",
          "version": "4.3.1",
          "install": "npm install -g scbe-aethermoore",
          "bins": ["geoseal", "scbe-geoseal", "scbe-scan", "scbe-patent"],
          "page": "https://www.npmjs.com/package/scbe-aethermoore"
        },
        {
          "name": "scbe-agent-bus",
          "version": "0.4.1",
          "install": "npm install scbe-agent-bus",
          "bins": ["scbe-agent-bus"],
          "page": "https://www.npmjs.com/package/scbe-agent-bus"
        }
      ]
    },
    "pypi": {
      "url": "https://pypi.org",
      "packages": [
        {
          "name": "scbe-aethermoore",
          "version": "4.3.1",
          "install": "pip install scbe-aethermoore",
          "requires_python": ">=3.11",
          "scripts": ["scbe", "scbe-scan", "scbe-convert-to-sft", "scbe-code-prism"],
          "page": "https://pypi.org/project/scbe-aethermoore/"
        }
      ]
    }
  },
  "entry": {
    "human": {
      "site": "./index.html",
      "download_desk": "downloads/AetherDesk-Portable-latest.zip",
      "npm": "npm install -g scbe-aethermoore",
      "pip": "pip install scbe-aethermoore",
      "desktop_shortcut_after_install": "Desktop\\\\AetherDesk.lnk"
    },
    "agent": {
      "preferred": "mcp",
      "local_base": "http://127.0.0.1:5717",
      "mcp": "http://127.0.0.1:5717/mcp",
      "openai_connector": "http://127.0.0.1:5717/connector",
      "health": "http://127.0.0.1:5717/api/health",
      "auth": {
        "localhost": "optional",
        "public": "Bearer token required (AETHERDESK_CONNECTOR_AUTH_MODE=token)"
      },
      "package_install": {
        "node_cli": "npm install -g scbe-aethermoore",
        "python_cli": "pip install scbe-aethermoore",
        "agent_bus": "npm install scbe-agent-bus"
      },
      "first_calls": [
        { "tool": "aetherdesk_health", "why": "Is the desk alive?" },
        { "tool": "aetherdesk_local_status", "why": "Plugin+ reachability" },
        { "tool": "aetherdesk_tool_view_plane", "why": "What rooms/tools exist without opening UI" },
        { "public_record": "kernel-status.json", "why": "What exact browser-kernel artifact was verified?" },
        { "local_route": "/api/aetherbrowser/kernel/status", "why": "Is the installed bounded browser transaction kernel running?" },
        { "tool": "aetherdesk_ai_desktop", "why": "Robotext snapshot of the desk" }
      ]
    }
  },
  "doors": [
    {
      "id": "door_hall_root",
      "from": "agent_client",
      "to": "hallway",
      "protocol": "mcp",
      "path": "/mcp",
      "label": "Enter the hallway"
    },
    {
      "id": "door_openai_style",
      "from": "agent_client",
      "to": "hallway",
      "protocol": "openai_functions",
      "path": "/connector",
      "label": "OpenAI-style function calls"
    },
    {
      "id": "door_npm_scbe",
      "from": "builder",
      "to": "npm_scbe",
      "protocol": "npm",
      "package": "scbe-aethermoore",
      "command": "npm install -g scbe-aethermoore",
      "label": "Node / GeoSeal install"
    },
    {
      "id": "door_pypi_scbe",
      "from": "builder",
      "to": "pypi_scbe",
      "protocol": "pypi",
      "package": "scbe-aethermoore",
      "command": "pip install scbe-aethermoore",
      "label": "Python / scbe install"
    },
    {
      "id": "door_npm_agent_bus",
      "from": "builder",
      "to": "npm_agent_bus",
      "protocol": "npm",
      "package": "scbe-agent-bus",
      "command": "npm install scbe-agent-bus",
      "label": "Agent bus library"
    },
    {
      "id": "door_geoseal_cli",
      "from": "operator_shell",
      "to": "geoseal",
      "protocol": "cli",
      "command": "geoseal",
      "install_npm": "npm install -g scbe-aethermoore",
      "install_pip": "pip install scbe-aethermoore",
      "label": "CLI room (after registry install)"
    },
    {
      "id": "door_desk_ui",
      "from": "hallway",
      "to": "aetherdesk",
      "protocol": "http",
      "path": "/",
      "label": "Open visual desk",
      "tool": "aetherdesk_open_desktop_url"
    },
    {
      "id": "door_tool_plane",
      "from": "hallway",
      "to": "aetherdesk",
      "protocol": "http",
      "path": "/api/desktop/tool-plane",
      "label": "List tools as rooms",
      "tool": "aetherdesk_tool_view_plane"
    },
    {
      "id": "door_plugin_pack",
      "from": "human",
      "to": "plugin_plus",
      "protocol": "download",
      "path": "downloads/AetherDesk-PluginPlus-latest.zip",
      "label": "Install Codex/Claude bridge config"
    },
    {
      "id": "door_browser_kernel",
      "from": "hallway",
      "to": "browser",
      "protocol": "http",
      "path": "/api/aetherbrowser/kernel/status",
      "runtime_scope": "local_after_install",
      "public_status": "kernel-status.json",
      "capabilities": "/api/aetherbrowser/kernel/capabilities",
      "receipts": "/api/aetherbrowser/kernel/receipts",
      "saves": "/api/aetherbrowser/kernel/saves",
      "label": "Enter the bounded browser transaction kernel",
      "mutation_contract": "observe -> plan -> approve -> dispatch -> verify -> receipt"
    }
  ],
  "rooms_index": "rooms.json",
  "registries_index": "registries.json",
  "llms_txt": "llms.txt",
  "safety": {
    "arbitrary_shell": false,
    "default_powershell_access": "read-only",
    "secrets_in_package": false,
    "receipts": "artifacts/ under install root",
    "browser_remote_writes": "denied by default",
    "browser_receipt_integrity": "SHA-256 hash chain"
  },
  "orchestrator_prompt": "You are entering Aether Hall. Fetch hallway.json, rooms.json, and registries.json. Package installs: npm install -g scbe-aethermoore (GeoSeal bins) OR pip install scbe-aethermoore (scbe bins); optional npm install scbe-agent-bus. Prefer MCP tools on the local desk for operation. Browser mutations must use the fixed transaction kernel: observe, plan, approve, dispatch, verify, receipt. Do not invent host shell access. For humans, point to room CTAs (ZIP, npm, or PyPI)."
}
