pick-model
Skill10 starsChanged 39 days agoMITView on GitHub
Recommend the cheapest Claude model tier (Haiku, Sonnet, Opus) that still meets a task's quality bar, using a task-type matrix plus complexity escalators (scope, stakes, ambiguity, stakeholders). Use when asked "which model", "pick model", "model for", or before starting a costly task. Covers technical, business, creative work.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- whyashthakker/estacktheir own version, first seen Nov 8, 2026
- jpfmscel/model-routertheir own version, first seen Oct 9, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- jpfmscel/model-router★ 1same name
- whyashthakker/estack★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository81 other files it gives its agents.
- AGENTS.mdAGENTS.md
- skills/development/biome-complete/AGENTS.mdAGENTS.md
- skills/development/bun-development/AGENTS.mdAGENTS.md
- skills/development/commanderjs/AGENTS.mdAGENTS.md
- skills/documentation/markdown-authoring/AGENTS.mdAGENTS.md
- skills/package-mgmt/mise-complete/AGENTS.mdAGENTS.md
- skills/testing/bdd-testing/AGENTS.mdAGENTS.md
- agents-mdSkill
- cache-auditSkill
- context-radar-auditSkill
- create-contextSkill
- guided-interviewSkill
- handover-document-creatorSkill
- load-contextSkill
- pinSkill
- professional-honestySkill
- rules-managementSkill
- save-contextSkill
- session-reflectionSkill
- socratic-methodSkill
- vault-captureSkill
- vault-consolidateSkill
- vault-fetchSkill
- vault-searchSkill
- bird-fortune-political-satireSkill
- brooker-esque-media-satireSkill
- clarke-dawe-esqueSkill
- comedy-style-skill-generatorSkill
- cunk-esque-mockumentarySkill
- gervais-esque-cringe-satireSkill
- monty-python-esqueSkill
- pryor-esque-confessional-standupSkill
- rock-esque-observational-standupSkill
- biome-completeSkill
- bun-developmentSkill
- commanderjsSkill
- conventional-commitsSkill
- humanizerSkill
- journal-entry-importSkill
- markdown-authoringSkill
- mermaid-diagramsSkill
- plain-englishSkill
- professional-communicationSkill
- sop-structureSkill
- logql-generatorSkill
- mise-completeSkill
- context-indexSkill
- create-context-fileSkill
- follow-upSkill
- goal-trackerSkill
- nasa-pm-lessonsSkill
- plan-createSkill
- plan-executeSkill
- plan-reviewSkill
- risk-registerSkill
- tech-debtSkill
- tech-evaluationSkill
- blast-radiusSkill
- bridgeSkill
- challengeSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
23 rules. About 0 are common, 22 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈22
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
Use it when a user asks which model fits a task, before the work starts.
- Distinctive: line 21
Use it when an agent must assign a model to a sub-task without a human in the loop.
- Distinctive: line 22
Use it when a pipeline or batch job overspends on a frontier model for simple work.
- Distinctive: line 23
Use it when the cost against capability trade-off must be explicit, for example in production routing.
- Distinctive: line 27
Do not use it when infrastructure or an explicit user instruction already fixes the model.
- Distinctive: line 28
Do not use it once the task is finished, because the choice is moot.
- Distinctive: line 29
Do not use it for cross-vendor comparisons or live pricing, which this skill does not hold.
- Distinctive: line 30
Do not use it when a fine-tuned or domain-specific model decides the outcome, not the tier.
- Very specific: line 34
Read the task from $ARGUMENTS.
- Distinctive: line 36
Run every escalator check below.
- Distinctive: line 49
Read the full matrix for technical, business, creative and command or agent tasks.
- Distinctive: line 55
Check ambiguity: requirements are underspecified or have several valid readings.
- Distinctive: line 56
Check scope: the change spans 3 or more files, systems or components.
- Distinctive: line 57
Check stakes: production, security, data loss or regulatory exposure.
- Distinctive: line 58
Check novelty: no established pattern exists.
- Distinctive: line 59
Check stakeholders: competing interests need balancing.
- Distinctive: line 60
Check irreversibility: strategic, long-term or organisational consequences.
- Distinctive: line 61
Check sensitivity: layoffs, executive messaging, crisis response.
- Distinctive: line 62
Check synthesis: the work crosses domains such as tech, business and legal.
- Distinctive: line 63
Check cognition: pattern detection across sessions, bias spotting, ethical reasoning or two or more analytical frameworks at once.
- Distinctive: line 72
Start one tier lower when a retry is cheap, as in drafts, batch runs and exploration.
- Distinctive: line 97
NEVER classify on the task label alone: Check the escalators first.
- Distinctive: line 121
NEVER pick a model from benchmark leaderboards alone: Test the shortlisted tier on a sample of the real workload.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Pick Model
Classify the task, apply the escalators, then recommend the cheapest Claude tier that meets the quality requirement.
Mindset
- Right-size and do not default up. Keep to the cheapest tier that meets the quality bar. Escalating after a failed attempt costs one retry; an Opus habit costs every call.
- Judge reasoning demand, not volume. Pass a long document to a summariser at the same tier as a short one.
- Name tiers (fast, balanced, reasoning) before model names. Model names are retired and renamed; tier meaning lasts.
- Escalate with a stated reason. Always name the signal that moved the tier.
When to Use
- Use it when a user asks which model fits a task, before the work starts.
- Use it when an agent must assign a model to a sub-task without a human in the loop.
- Use it when a pipeline or batch job overspends on a frontier model for simple work.
- Use it when the cost against capability trade-off must be explicit, for example in production routing.
When Not to Use
- Do not use it when infrastructure or an explicit user instruction already fixes the model.
- Do not use it once the task is finished, because the choice is moot.
- Do not use it for cross-vendor comparisons or live pricing, which this skill does not hold.
- Do not use it when a fine-tuned or domain-specific model decides the outcome, not the tier.
Procedure
- Read the task from
$ARGUMENTS. Ask for it when the argument is empty. - Match the task type to a base tier in the matrix below. Match what the task demands, not how long it is.
- Run every escalator check below. Move up exactly one tier when any escalator fires, capped at Opus.
- Apply the tie-breaks below to a borderline call.
- Adjust for cost and latency only after the tier is settled.
- Make the recommendation in the output template below. Always name the escalator or matrix row that decided it.
Base tier by task type
| Tier | Typical work |
| 🟢 Haiku (fast) | Typo fixes, formatting, regex, extraction, templated fills, file conversion, factual lookup, summaries under 2K words |
| 🟡 Sonnet (balanced) | Single-file code and bug fixes, code review, tests, standard refactors, technical and business writing, research summaries (the default for skills and commands) |
| 🔴 Opus (reasoning) | Multi-file refactors, architecture, multi-system debugging, security audits, strategy, long-form reports, multi-framework analysis |
Read the full matrix for technical, business, creative and command or agent tasks.
Escalators
Move up one tier when the task shows any of these signals.
- Check ambiguity: requirements are underspecified or have several valid readings.
- Check scope: the change spans 3 or more files, systems or components.
- Check stakes: production, security, data loss or regulatory exposure.
- Check novelty: no established pattern exists.
- Check stakeholders: competing interests need balancing.
- Check irreversibility: strategic, long-term or organisational consequences.
- Check sensitivity: layoffs, executive messaging, crisis response.
- Check synthesis: the work crosses domains such as tech, business and legal.
- Check cognition: pattern detection across sessions, bias spotting, ethical reasoning or two or more analytical frameworks at once.
See escalators for edge cases and borderline readings.
Tie-breaks
- Choose Sonnet over Haiku when the task needs any judgement.
- Choose Opus over Sonnet when trade-offs must be balanced or several valid approaches exist.
- Go one tier up when the output is customer-facing, production or irreversible.
- Start one tier lower when a retry is cheap, as in drafts, batch runs and exploration.
Output Format
[emoji] **[Model]**: [one-line reason naming the deciding signal]
Cost: [lowest|medium|highest] | Speed: [fastest|medium|slowest] | Confidence: [high|medium|low]
Tip: [only when a cheaper or stronger tier fits a stated condition]🔴 **Opus**: refactor touches 15 files and changes the auth architecture (Scope escalator)
Cost: highest | Speed: slowest | Confidence: high
Tip: Sonnet is enough if the scope shrinks to 2 files after exploration.Set confidence to high when the task matches one tier clearly, medium when it sits between two tiers, and low when the task is too vague to classify. Ask one clarifying question instead of guessing when confidence is low.
Anti-Patterns
- NEVER default to the most powerful model for every task. Oversized models inflate cost with no quality gain on simple work. Match the tier to the reasoning demand. Why: Haiku handles classification and routing at a fraction of the cost.
NEVER classify on the task label alone. Check the escalators first. Why: one missed signal, such as a security-sensitive refactor, turns a Sonnet task into an Opus task.
# BAD: label only "refactor the auth module" -> Sonnet (looks like single-file coding) # GOOD: escalators checked "refactor the auth module": Scope (3+ files) + Stakes (credentials) -> OpusNEVER hardcode model identifiers in agent workflows. Why: providers retire models, and a pinned identifier fails on the day it is retired. Use tier aliases and resolve them at runtime.
# BAD: pinned identifiers that break on retirement routing: summariser: claude-3-haiku-20240307 reviewer: claude-3-opus-20240229 # GOOD: tiers resolved to current models at runtime routing: summariser: fast reviewer: reasoning- NEVER pick a model from benchmark leaderboards alone. Test the shortlisted tier on a sample of the real workload. Why: benchmark tasks differ from your workload, so real performance depends on prompt structure, context length and domain.
- NEVER choose Haiku for production-critical work to save money. Apply the stakes escalator instead. Why: this is the false economy pitfall, because one outage or rework cycle costs far more than the saving.
- NEVER treat speed as a tier. Why: a fast model on a reasoning-heavy task returns wrong answers faster. Settle the tier first, then apply latency.
- NEVER override an explicit user model choice. Recommend only when no model is named. Why: the user often holds constraints, such as budget or latency, that the task text does not show.
- NEVER quote prices or speed multipliers as fact. Why: they change between releases. Describe cost and speed as relative ranks. Send readers to current vendor pricing for exact figures.
Worked Examples
Task: "summarise 5 meeting notes into bullets"
Matrix: Haiku. Escalators: none (under 2K words, no trade-offs).
Result: 🟢 Haiku, because it is plain text transformation.Task: "fix a typo in the production payment config"
Matrix: Haiku. Escalators: Stakes (production, payments) -> one tier up.
Result: 🟡 Sonnet. A typo alone is Haiku work; the stakes decide this one.Task: "plan market entry for a new region"
Matrix: Sonnet. Escalators: Irreversibility, Synthesis, Ambiguity -> one tier up, capped at Opus.
Result: 🔴 Opus. Three signals fired but the move is one tier, not three.More cases are in worked examples.
References
- Decision matrix: base tiers by technical, business, creative and command or agent task
- Escalators: signal definitions, borderline readings and what does not count
- Worked examples: classified tasks by domain with the deciding signal
- Reference: model characteristics, file-type and domain matrices, cost and latency trade-offs, hybrid patterns and common mistakes
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

