{
  "openapi": "3.1.0",
  "info": {
    "title": "doloop tool registry",
    "version": "1.0.0",
    "description": "Headless registry of deterministic, auditable, accumulating tools. Browse the catalog, get per-tool manifests, find MCP/CLI install instructions. Each tool has its own API surface; this is the discovery layer.",
    "contact": {"email": "hello@doloop.io", "url": "https://doloop.io"}
  },
  "servers": [{"url": "https://doloop.io", "description": "production registry"}],
  "tags": [
    {"name": "discovery", "description": "Find and describe tools in the doloop family"},
    {"name": "compliance", "description": "SR 26-2 framing artifacts"}
  ],
  "paths": {
    "/api/v1/tools/index.json": {
      "get": {
        "tags": ["discovery"],
        "summary": "Tool catalog",
        "description": "Full registry of doloop tools with status, category, and per-tool manifest pointer.",
        "responses": {
          "200": {"description": "Tool catalog", "content": {"application/json": {"schema": {"type": "object"}}}}
        }
      }
    },
    "/api/v1/tools/{slug}.json": {
      "get": {
        "tags": ["discovery"],
        "summary": "Per-tool manifest",
        "parameters": [{"name": "slug", "in": "path", "required": true, "schema": {"type": "string", "enum": ["wysiwyd", "inkwell", "doloop-mcps", "donkeykong", "pebble", "phaedrus", "canonical-framework", "retained-learning-ratchet"]}}],
        "responses": {
          "200": {"description": "Tool manifest with api/mcp/cli install + determinism evidence"}
        }
      }
    },
    "/.well-known/ai-plugin.json": {
      "get": {
        "tags": ["discovery"],
        "summary": "ChatGPT plugin manifest (legacy)",
        "responses": {"200": {"description": "ai-plugin.json manifest"}}
      }
    }
  },
  "components": {}
}
