# Model Tiers for Delegation Prefer a project-pinned agent from `.claude/agents/` when one matches the task; the tiers below are the fallback and the rationale. | Task type | Tier | `subagent_type` | Rationale | |-----------|------|-----------------|-----------| | Domain knowledge, repeated consultation | `adept` agent (Opus, long-lived) | `"adept"` | Accumulated priors, informed search, journal continuity; domain-scoped | | Deep research, bug investigation | Opus-tier research agent | `"researcher"` | Depth, reasoning; writes reports, never modifies code | | Quick fact extraction, version/config lookup | Haiku lookup | `"scout"` | Fast, cheap, read-only; at most 2 web pages | | Code/file lookups, symbol tracing | Sonnet search | `"search"` | Read-only; targeted "where is X" lookups | | Writing a plan | `planner` (pinned to Opus 5.5) | `"planner"`, omit `model` | Reads the code; plan at decision/contract altitude; never builds or attacks it | | Attacking a plan, reshaping into a build plan | `attacker` (pinned to Opus 5.5) | `"attacker"`, omit `model` | Never the planner; writes the build plan | | Phase review, re-check | `reviewer` (pinned to Opus 5.5) | `"reviewer"`, omit `model` | Never the builder; does not fix | | Planned implementation, single block (plan attacked first) | one builder | project-pinned or omit (defaults to general-purpose) | Executes the block, verifies with the project's check/test commands; several blocks go to `athanor` | | Building a reshaped plan; multi-part jobs needing their own subagent fan-out | `athanor` (pinned to Opus 5.5, may use Agent/Task tool) | `"athanor"`, omit `model` | Builds one phase per turn; also takes non-build fan-out briefs | | Complex summaries, git fixes, small code changes | Sonnet subagent | omit (defaults to general-purpose) | Capability/speed balance; needs write access | | Test runs, compiles, commits, linear-data summaries | Haiku subagent | omit (defaults to general-purpose) | Fast, cheap, mechanical; needs Bash and possibly write access | Rules of thumb: - One task -> one subagent with an explicit output file path in the workpad. - Implementation goes through the cycle (plan → attack the plan → build): the `athanor` gets a reshaped build plan, never an unplanned build brief. A non-build job with 3+ independent subtasks (research cascade, audit) may go to `athanor` as a single brief (scope, output paths, completion criteria). - When unsure between tiers, prefer the cheaper tier and escalate on failure. Write-capability guard: - **`Explore` and `Plan` are READ-ONLY.** They cannot use Edit, Write, or NotebookEdit. Never dispatch them for tasks that must produce a file artifact (report, design, plan, research note). Use them only for pure lookups (`Explore`) or pure planning conversations (`Plan`) where the answer comes back in the agent's reply text, not as a written file. - **Prefer Spire's pinned read-only agents over `Explore`.** `scout` (Haiku), `search` (Sonnet), and `researcher` (Opus, can write) are purpose-built and tool-restricted. Use `scout` or `search` for lookups instead of `Explore`. - **For tasks that produce file output, use write-capable agent types.** Omit `subagent_type` (defaults to general-purpose) or use a project-pinned agent that has Edit/Write (`researcher`, `adept`, `athanor`). The `researcher` agent is the correct choice for research that must produce a written report. Sub-delegation guard: - **Sub-delegation guard.** Agent types without the Agent tool cannot spawn children: `scout`, `search`, `Explore`, and `Plan` are safe leaves. `general-purpose` and `researcher`/implementer agents may have the Agent tool and *can* sub-delegate — give them explicit "do not delegate" instructions, or route fan-out work to `athanor` on purpose. Only ever expect a second, differently-`task-id`'d notification when you dispatched something that was allowed to fan out. Model selection rules: - **Never dispatch a Fable-tier subagent unless the user explicitly asks.** Subagents are Opus or lower. - **Unpinned agents get an explicit `model`** (`"opus"`, `"sonnet"`, `"haiku"`) — omitting it inherits the coordinator's model, which may be Fable. - **Pinned agents get no `model`** unless you deliberately override the pin. The per-call alias overrides the frontmatter pin. Note the choice and have the agent stamp the model id it ran on. - **Model traits** (which model is good at what, context guesstimates) live in the implementation skill's `references/models.md`, as dated observations. Defaults as of 2026-10-05: Opus 5.5 for the Athanor, planning, attacking plans and review. This table can grow — add new agents and heuristics here as they prove out.