# Tool Registry This file documents the public Mako tool catalog and the question shapes each tool is built around. The model-facing surface is intentionally smaller than the full catalog. Start with `reef_ask`; use the compact fallback tools for exact search, diagnostics, freshness, and batching; use `tool_search` to find specialist tools only after the compact surface identifies a concrete need. For the authoritative live catalog, use one of: - `agentmako tool list` - `GET /api/v1/tools` - MCP `tools/list` - harness `tool_search` Everything listed here is available through the same shared tool layer over: - MCP at `http://127.0.0.1:3017/mcp` - HTTP via `GET /api/v1/tools` and `POST /api/v1/tools/:name` - CLI via `tool list` and `tool call` Use `reef_ask` when the question is natural language. Call a named specialist tool directly only when the target and question shape are already clear. Every tool result includes `_hints: string[]` with result-specific next-step guidance. Tool metadata also includes centralized MCP annotations for read-only, open-world, idempotent, and destructive behavior. `/api/v1/answers` remains supported for the original answer flows, but the current product also ships later roadmap families such as graph, operator, workflow, artifact, composer, and code-intel tools over the same shared tool plane. ## Compact Surface These are the default model-facing Mako tools: | Tool | Common question shape | Description | | --- | --- | --- | | `reef_ask` | "what matters if I change endorsement creation?" | Primary Reef query over codebase, database, durable findings, diagnostics, instructions, freshness, quoted literal checks, and the normalized evidence graph. | | `reef_status` | "what does Reef know is unhealthy?" | Maintained issues, changed files needing verification, stale diagnostic sources, schema freshness, watcher degradation, and queue state. | | `reef_verify` | "can I claim this is verified?" | Completion gate combining diagnostic freshness, changed files, watcher state, recent runs, and unresolved open loops. | | `reef_impact` | "what did my changed files affect?" | Changed-file impact over downstream import callers, active findings that may be invalidated, and convention risks. | | `mako_help` | "how should I audit auth flow?" | Returns a task-specific workflow recipe with ordered tool steps, pre-filled suggested args, batchable follow-ups, and notes. | | `live_text_search` | "find exact verifySession(" | Current filesystem text search for regex, glob scope, generated/unindexed files, or full inventories. | | `lint_files` | "lint these changed files" | Bounded diagnostics and `.mako/rules` findings for known files. | | `tool_batch` | "run these read-only checks together" | Batches independent read-only follow-ups after the first Reef result. | | `tool_search` | "which specialist tool handles RLS?" | Finds route, graph, DB, finding, refresh, ack, and other specialist tools without loading them by default. | ## Router | Tool | Common question shape | Description | | --- | --- | --- | | `mako_help` | "how should I audit auth flow?" | Returns a task-specific Mako workflow recipe with ordered tool steps, pre-filled suggested args, and batchable follow-ups. | | `ask` | "where is /api/v1/projects handled?" | Legacy one-question router. Prefer `reef_ask` for new model-facing flows. | ## Answers | Tool | Common question shape | Description | | --- | --- | --- | | `route_trace` | "what handles /auth/login?" | Traces a route to the indexed handler, matching files, and nearby evidence. | | `schema_usage` | "where is projects used?" | Finds where an indexed schema object is defined and referenced in the repo. | | `file_health` | "what does services/api/src/server.ts do?" | Summarizes a file's role, dependents, and notable risks with evidence. | | `auth_path` | "what auth protects /api/v1/projects?" | Traces likely auth boundaries for a route, file, or feature without overclaiming. No-match cases return `matched: false` with a suggested `cross_search` fallback. | ## Code Intelligence | Tool | Common question shape | Description | | --- | --- | --- | | `cross_search` | "where is manager onboarding checked?" | Broad indexed search across code, schema, routes, and memories. Defaults to compact output; pass `limit` or `verbosity: "full"` for wider results. | | `live_text_search` | "find exact verifySession(" | Exact current filesystem text search after edits or for generated/unindexed files. | | `ast_find_pattern` | "find `