docs(agents): model selection in tiers relative to the parent, not by name

Co-Authored-By: Claude Mythos 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UH8jPP1zXteddiR9pEd4KE
This commit is contained in:
mwiegand 2026-10-09 22:51:15 +02:00
parent 1027d553f7
commit e000cfe121
No known key found for this signature in database

View file

@ -41,21 +41,27 @@ Prefix every `Agent` prompt with one of:
- `[TIER: STANDARD]` — focused implementation logic; minimal preamble
- `[TIER: DEEP]` — complex reasoning; must conclude with a summary
### Model selection (override only when needed)
### Model selection (relative to the parent, no fixed names)
Resolution order: explicit `model` param → agent type frontmatter → parent
inheritance. (`fork` always runs on the parent model; an override is ignored.)
Model names shift (Opus was the top tier when this was written; Fable and
Mythos sit above it now), so think in tiers, not names:
0. **Self-hosted backend (a SessionStart hook says so when `ANTHROPIC_BASE_URL`
points at the vLLM gateway): never pass `model`.** Aliases like `sonnet`
do not exist there; every subagent inherits the one available model.
1. **Don't override specialized agent types** (`Explore`, `Plan`, etc.) — their frontmatter is tuned. Leave `model` off.
2. **For `general-purpose` under an expensive parent (Opus/Fable): set `model: sonnet`** — don't pay top rates for routine subagent work.
3. **`opus`** for research, recommendation, trade-off and judgement work
(also blinded eval judges) and when isolated context *and* reasoning beyond
the parent's inline capacity are both needed. For "how should X look"
questions discuss options first, do not build.
4. **`model: haiku`** only for mechanical tasks: bulk classification, format conversion, summarizing pre-filtered text. Code-semantic work → Sonnet.
points at the vLLM gateway): never pass `model`.** Aliases do not exist
there; every subagent inherits the one available model.
1. **Specialized agent types** (`Explore`, `Plan`, …) keep their frontmatter
model. Leave `model` off.
2. **Routine `general-purpose` work** (mechanical edits, bulk lookups,
verification runs): one tier below the parent, today `sonnet`. Don't pay
top rates for routine work.
3. **Judgement work** (research, recommendation, trade-off, review, blinded
eval judges): the parent's tier, so pass no `model` and let it inherit.
For "how should X look" questions discuss options first, do not build.
4. **`haiku`** only for purely mechanical tasks: bulk classification, format
conversion, summarizing pre-filtered text. Code-semantic work is at least
`sonnet`.
### Context hygiene