{
  "ok": true,
  "role": "product",
  "slug": "azhub",
  "name": "AZHub",
  "version": "0.1.0",
  "one_line": "AZHub (AIH-WP-1.0): Blank Key / neutral spatial container. Does not interpret. FragGate only. AZInterface is sibling software under the same FragGate door.",
  "author": "Aziel Eliab",
  "identity": "Aziel Eliab",
  "aka": "Aziel Elroi Eliab",
  "license": "Apache-2.0",
  "github": "https://github.com/AzielEliab/azhub",
  "skill_url": "https://aziel-runtime.vibelock.workers.dev/v1/pull/azhub/skill",
  "worker_skill": "https://azhub-download-tracker.vibelock.workers.dev/v1/skill",
  "skill": "---\nname: AZHub\ndescription: >-\n  Use when placing, tethering, or isolating modules on AZHub — the\n  Blank Key / neutral spatial container (AIH-WP-1.0). Not AZInterface,\n  AZBrowser, or AZNet. Author Aziel Eliab.\n---\n\n# AZHub\n\nNeutral spatial container / Blank Key. Place, tether, isolate.\nDeclared tethers only (visible corridors). Hub does not decide why\nanything matters. Modules remain complete if Hub is removed.\n\nAuthor: **Aziel Eliab** only.\n\n**THIS IS:** a Blank Key surface for app/module tiles and Lock tiles.\n\n**THIS IS NOT:** AZInterface, AZBrowser, AZNet, a recommender, a ranker,\na meaning engine, or activation-by-co-presence. Never collapse Hub into\nInterface.\n\nAlways send `User-Agent: Mozilla/5.0`.\n\n**Agent path is FragGate only.** MCP / agents call aziel-runtime.\n\n`POST https://aziel-runtime.vibelock.workers.dev/v1/fraggate/call`\nbody `{\"slug\":\"azhub\",\"op\":\"<op>\",\"payload\":{}}`\n\nSame door as MCP `fraggate_call` (`slug=azhub`). Kernel:\nhttps://github.com/AzielEliab/fraggate. Catalog listing lands in a\nsibling aziel-runtime PR. Human chrome uses this Worker `/v1/{op}`\n(single-segment local ops only). `/v1/fraggate/*` and `/v1/runtime/*`\nPROXY to aziel-runtime. `GET|POST /mcp` here is a pointer, not a second MCP.\n\n**Human UI stays on this Worker.** AI path is FragGate + this OpenAPI.\n\nAZHub and AZInterface are **separate software** under **one FragGate door**.\nNever collapse them into one engine.\n\n## FragGate live ops (agents)\n\n| op | UI chrome |\n|----|-----------|\n| `place_module` | Drop → Place (`/v1/place`) |\n| `region_list` | Palette / list (`/v1/list_modules`) |\n| `tether_declare` | Drop → Tether |\n| `tether_list` | Corridor list |\n| `tether_cut` | Cut a declared corridor |\n| `remove_module` | Take a tile off the Blank Key |\n| `blank_key_status` | Home (everblooming sigil) |\n| `health` `skill` | Liveness / skill |\n\nHuman chrome also keeps `place`, `list_modules`, and `isolate`\non `/v1` (same handlers via aliases). `isolate` stays on the tile;\n`remove_module` takes it off. Agents must use the FragGate names.\n\n## Stub ops (refuse)\n\n`recommend` `rank` `auto_wire` `interpret_meaning` `activate_by_copresence`\n`scorch_remote` `auto_unlock` `ranking` `completeness_detect` `unlock`\n`complete` `completeness` `scorch`\n\nWorks with ChatGPT (GPT Actions / OpenAI), Grok (xAI), Venice, Claude\n(Anthropic), Cursor (MCP), Glama (MCP), Perplexity, Microsoft Copilot /\nBing, Google Gemini / Vertex, Mistral, Meta AI, Apple Intelligence\nsurfaces, Amazon Q tooling, DuckAssist, You.com, Cohere, and other\nMCP/OpenAPI-capable assistants — **through FragGate only**.\n\nAgents display `display.title`, `display.summary`, and\n`display.fields` in chat, then take the next input. No technical MCP\nUI is required for the human.\n\n## How to call\n\n```bash\ncurl -s -A 'Mozilla/5.0' -X POST https://aziel-runtime.vibelock.workers.dev/v1/fraggate/call \\\n  -H 'content-type: application/json' \\\n  -d '{\"slug\":\"azhub\",\"op\":\"place_module\",\"payload\":{\"slug\":\"azmail\",\"x\":80,\"y\":80}}'\ncurl -s -A 'Mozilla/5.0' -X POST https://azhub-download-tracker.vibelock.workers.dev/v1/blank_key_status \\\n  -H 'content-type: application/json' \\\n  -d '{}'\ncurl -s -A 'Mozilla/5.0' https://aziel-runtime.vibelock.workers.dev/v1/fraggate/list\n```\n\nApache-2.0. Forks are welcome and always allowed.\n",
  "download": "https://azhub-download-tracker.vibelock.workers.dev/download",
  "cite": "https://azhub-download-tracker.vibelock.workers.dev/cite.json",
  "llms": "https://azhub-download-tracker.vibelock.workers.dev/llms.txt",
  "sitemap": "https://azhub-download-tracker.vibelock.workers.dev/sitemap.xml",
  "count": "https://azhub-download-tracker.vibelock.workers.dev/count",
  "install": "https://azhub-download-tracker.vibelock.workers.dev/install.sh",
  "install_sh": "curl -fsSL https://azhub-download-tracker.vibelock.workers.dev/install.sh | bash",
  "openapi": "https://azhub-download-tracker.vibelock.workers.dev/openapi.json",
  "runtime_openapi": "https://aziel-runtime.vibelock.workers.dev/openapi.json",
  "ops": [
    {
      "op": "health",
      "method": "GET",
      "summary": "Liveness. Does not increment download KV."
    },
    {
      "op": "region_list",
      "method": "POST",
      "summary": "List Blank Key regions. Hub does not interpret meaning."
    },
    {
      "op": "place_module",
      "method": "POST",
      "summary": "Place a module in a region without interpretation."
    },
    {
      "op": "remove_module",
      "method": "POST",
      "summary": "Remove a placed module. Does not interpret."
    },
    {
      "op": "tether_declare",
      "method": "POST",
      "summary": "Declare a tether between modules. Link only, not meaning."
    },
    {
      "op": "tether_cut",
      "method": "POST",
      "summary": "Cut a declared tether."
    },
    {
      "op": "tether_list",
      "method": "POST",
      "summary": "List declared tethers."
    },
    {
      "op": "blank_key_status",
      "method": "POST",
      "summary": "Blank Key status. Interprets nothing. Auto-unlock / completeness stay refused."
    },
    {
      "op": "skill",
      "method": "GET",
      "summary": "Return AZHub skill markdown. Does not increment download KV."
    }
  ],
  "banner": "AZHub (AIH-WP-1.0): neutral spatial container / Blank Key. Reached only via FragGate (POST /v1/fraggate/call { slug: \"azhub\", op }). Does not interpret meaning. Refuses auto-unlock and completeness events. AZInterface is sibling software under the same FragGate door. scorch_remote / ranking stay stub. Author Aziel Eliab.",
  "limitations": "AZHub (AIH-WP-1.0): neutral spatial container / Blank Key. Reached only via FragGate (POST /v1/fraggate/call { slug: \"azhub\", op }). Does not interpret meaning. Refuses auto-unlock and completeness events. AZInterface is sibling software under the same FragGate door. scorch_remote / ranking stay stub. Author Aziel Eliab.",
  "aliases": {
    "catalog_card": "https://aziel-runtime.vibelock.workers.dev/p/azhub",
    "catalog_skill": "https://aziel-runtime.vibelock.workers.dev/p/azhub/skill",
    "catalog_health": "https://aziel-runtime.vibelock.workers.dev/p/azhub/health",
    "invoke_prefix": "https://aziel-runtime.vibelock.workers.dev/p/azhub",
    "worker_home": "https://azhub-download-tracker.vibelock.workers.dev/",
    "slugs": [
      "azhub",
      "az-hub",
      "blank-key",
      "blank_key",
      "aih-hub"
    ]
  },
  "doi": null,
  "doi_note": "No DOI. Zenodo software deposit needed. Do not invent one.",
  "skill_source": "https://azhub-download-tracker.vibelock.workers.dev/v1/skill (service binding)",
  "kv_increment": false
}