Pick Model
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.
npx skills add github:pantheon-org/tekhne --skill agentic-harness--pick-modelClassify 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) -> Opus -
NEVER 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
Explicit NEVER/WHY/consequence triplets with side-by-side bad/good examples. Generic warnings score low — concrete failure modes with real impact (security, correctness, performance) score high.
Runtime validation via eval scenarios proving the skill actually changes agent behaviour. Requires evals/ directory, instructions.json, ≥3 scenarios, and ≥80% instruction coverage in summary.json.
Appropriate rigidity for the skill type: strict rules for critical/security skills, balanced steps for process skills, flexible options for tool skills. Mismatched calibration (too rigid or too loose) reduces score.
Expert-only knowledge the AI couldn't derive on its own — domain-specific patterns, production gotchas, decision frameworks, and non-obvious tool behaviour. High scores mean <5% redundancy with what the model already knows.
A clear philosophy plus numbered step-by-step workflows with explicit entry/exit points. Should answer: what is the core principle, how to execute it, and when (and when not) to apply it.
Rich activation keywords and trigger scenarios in the description so the skill fires when needed. Best descriptions read like an exhaustive list of the tasks and concepts that should invoke this skill.
Copy-paste-ready code, complete runnable examples, real file paths and commands. Pseudocode and abstract descriptions score low — concrete, executable content scores high.
SKILL.md as a <100-line navigation hub pointing to focused references/ files. Content should be lazy-loaded on demand, not front-loaded. Includes actionable 'When to Use' conditions per reference.
Proper frontmatter, single-task focus, activation keywords, and cross-harness portability. Skills must work across 40+ agentic harnesses without hardcoded paths or agent-specific references.
Explicit NEVER/WHY/consequence triplets with side-by-side bad/good examples. Generic warnings score low — concrete failure modes with real impact (security, correctness, performance) score high.
Runtime validation via eval scenarios proving the skill actually changes agent behaviour. Requires evals/ directory, instructions.json, ≥3 scenarios, and ≥80% instruction coverage in summary.json.
Appropriate rigidity for the skill type: strict rules for critical/security skills, balanced steps for process skills, flexible options for tool skills. Mismatched calibration (too rigid or too loose) reduces score.
Expert-only knowledge the AI couldn't derive on its own — domain-specific patterns, production gotchas, decision frameworks, and non-obvious tool behaviour. High scores mean <5% redundancy with what the model already knows.
A clear philosophy plus numbered step-by-step workflows with explicit entry/exit points. Should answer: what is the core principle, how to execute it, and when (and when not) to apply it.
Rich activation keywords and trigger scenarios in the description so the skill fires when needed. Best descriptions read like an exhaustive list of the tasks and concepts that should invoke this skill.
Copy-paste-ready code, complete runnable examples, real file paths and commands. Pseudocode and abstract descriptions score low — concrete, executable content scores high.
SKILL.md as a <100-line navigation hub pointing to focused references/ files. Content should be lazy-loaded on demand, not front-loaded. Includes actionable 'When to Use' conditions per reference.
Proper frontmatter, single-task focus, activation keywords, and cross-harness portability. Skills must work across 40+ agentic harnesses without hardcoded paths or agent-specific references.
Expert-only knowledge the AI couldn't derive on its own — domain-specific patterns, production gotchas, decision frameworks, and non-obvious tool behaviour. High scores mean <5% redundancy with what the model already knows.
A clear philosophy plus numbered step-by-step workflows with explicit entry/exit points. Should answer: what is the core principle, how to execute it, and when (and when not) to apply it.
Explicit NEVER/WHY/consequence triplets with side-by-side bad/good examples. Generic warnings score low — concrete failure modes with real impact (security, correctness, performance) score high.
Proper frontmatter, single-task focus, activation keywords, and cross-harness portability. Skills must work across 40+ agentic harnesses without hardcoded paths or agent-specific references.
SKILL.md as a <100-line navigation hub pointing to focused references/ files. Content should be lazy-loaded on demand, not front-loaded. Includes actionable 'When to Use' conditions per reference.
Appropriate rigidity for the skill type: strict rules for critical/security skills, balanced steps for process skills, flexible options for tool skills. Mismatched calibration (too rigid or too loose) reduces score.
Rich activation keywords and trigger scenarios in the description so the skill fires when needed. Best descriptions read like an exhaustive list of the tasks and concepts that should invoke this skill.
Copy-paste-ready code, complete runnable examples, real file paths and commands. Pseudocode and abstract descriptions score low — concrete, executable content scores high.
Runtime validation via eval scenarios proving the skill actually changes agent behaviour. Requires evals/ directory, instructions.json, ≥3 scenarios, and ≥80% instruction coverage in summary.json.
No eval scenarios available.
Decision Matrix
Base tier by task type, before escalators. Match what the task demands, not how long it is. Apply the escalators in escalators afterwards.
Technical tasks
| Tier | Task types |
|---|---|
| 🟢 Haiku | Simple transforms, formatting, regex, typo fixes, status queries, template fills, data extraction, factual lookup with no reasoning, file conversion |
| 🟡 Sonnet | Single-file coding, bug fixes, code review, moderate debugging, test writing, PR review, standard refactoring, technical docs, API integration with known patterns |
| 🔴 Opus | Multi-file refactors (3 or more files), architecture and design decisions, multi-system debugging, framework migration, security audit, novel algorithm design, system design with trade-offs |
Business and strategy tasks
| Tier | Task types |
|---|---|
| 🟢 Haiku | Summaries under 2K words, data extraction, status reports, simple translation, template filling, meeting-note formatting |
| 🟡 Sonnet | Content creation (blog, email, docs), research summaries, competitive analysis, standard business writing, persuasive proposals, marketing copy, customer communications |
| 🔴 Opus | Strategic planning, business model design, M&A analysis, organisational design, change management, market entry, crisis response, stakeholder management with competing interests, long-form reports over 2K words, executive presentations with nuance |
Creative and analysis tasks
| Tier | Task types |
|---|---|
| 🟢 Haiku | Basic formatting, simple data visualisation suggestions, straightforward categorisation |
| 🟡 Sonnet | Creative writing, single-framework brainstorming, persona development, user research synthesis, A/B test analysis, survey analysis |
| 🔴 Opus | Multi-framework brainstorming (for example SCAMPER plus Starbursting plus trade-off analysis), cross-session pattern detection, bias identification, retrospective analysis, ethical reasoning, strategic foresight, scenario planning |
Commands, skills and agents
| Tier | Task types |
|---|---|
| 🟢 Haiku | Simple conversions (PDF, EPUB), format checks, simple utilities, minimal reasoning |
| 🟡 Sonnet | Standard workflows, context management, serialisation, most skills and commands (the default) |
| 🔴 Opus | Strategic analysis (brainstorms, retrospectives), multi-framework reasoning, high-stakes decisions, pattern detection across sessions |
Choosing between tiers
- Haiku or Sonnet: does the task need any reasoning or judgement? If yes, choose Sonnet.
- Sonnet or Opus: are there trade-offs to balance or several valid approaches? If yes, choose Opus.
- Quality first: customer-facing, executive, production and irreversible work goes one tier up.
- Cost first: batch processing, exploration and drafts start one tier lower, because a retry is cheap.
- Latency: use the fast and balanced tiers for interactive feedback. Batch and asynchronous work can trade speed for quality.
Rank cost and speed relatively (lowest to highest, fastest to slowest). Take exact prices and multipliers from current vendor pricing, because they change between releases.
Escalators
An escalator is a signal that the task needs more capability than its task type suggests. Move up exactly one tier when any escalator fires. Cap at Opus. Several escalators firing together raise confidence in the move; they do not stack into a second tier.
Technical
| Signal | Fires when | Does not fire when |
|---|---|---|
| Ambiguity | Requirements are underspecified, or the task has several valid readings that lead to different work | The user gave exact inputs and a single expected output |
| Scope | The change touches 3 or more files, systems or components | One file changes many times, such as a mechanical rename within it |
| Stakes | Production systems, security, data loss or regulatory compliance are at risk | The work runs in a sandbox, a throwaway branch or a draft |
| Novelty | No established pattern exists, or the technology is new to the team | A well-documented pattern applies, even in an unfamiliar codebase |
Business
| Signal | Fires when | Does not fire when |
|---|---|---|
| Stakeholders | Competing interests need balancing | Several readers receive the same message and nobody has a conflict |
| Irreversibility | The consequences are long-term, strategic or organisational | The output is a draft that someone reviews before any decision |
| Sensitivity | Layoffs, restructuring, executive messaging or crisis response are involved | Routine internal announcements |
| Synthesis | The work crosses domains, such as tech plus business plus legal | One domain with a vocabulary borrowed from another |
Cognitive
| Signal | Fires when | Does not fire when |
|---|---|---|
| Pattern detection | The task analyses trends across many data points or sessions | A single table is summarised |
| Bias identification | The task must spot blind spots, cognitive biases or hidden assumptions | The user lists known assumptions to format |
| Ethical reasoning | Moral ambiguity, fairness or unintended consequences matter | Policy text is only reformatted |
| Multi-framework | Two or more analytical frameworks apply at the same time | One named framework is applied once |
Borderline readings
- Stakes outranks task type. A typo fix in a production payment configuration is Haiku work by type and Sonnet work by stakes.
- Scope counts independent units. Fifteen files changed by one mechanical codemod are still one decision, so Scope may not fire. Fifteen files with distinct logic fire it.
- Volume is not an escalator. A long document needs the tier its reasoning demands. Length alone does not move it.
- Cap at Opus. Never recommend a tier above the top one, and do not add a second move because a fourth signal fired.
- Name the signal. Every escalated recommendation must state which signal moved it, so the user can disagree with a specific claim.
Worked Examples
Each row shows the base tier, the escalators that fired and the result. Use them to calibrate borderline calls.
Technical
| Task | Result | Deciding signal |
|---|---|---|
| “fix typo in README” | 🟢 Haiku | Trivial single edit, no reasoning |
| “convert PDF to markdown” | 🟢 Haiku | Simple conversion, no decisions |
| “debug flaky integration test” | 🟡 Sonnet | Single-system debugging, moderate reasoning |
| “refactor auth across 15 files” | 🔴 Opus | Scope escalator on top of architectural decisions |
| “design database schema for e-commerce” | 🔴 Opus | Architecture with trade-offs and long-term impact |
| “plan microservices migration strategy” | 🔴 Opus | Complex architectural planning plus Irreversibility |
Business and strategy
| Task | Result | Deciding signal |
|---|---|---|
| “summarise this meeting transcript” | 🟢 Haiku | Text transformation under 2K words |
| “extract action items from notes” | 🟢 Haiku | Extraction, no reasoning |
| “write blog post about AI trends” | 🟡 Sonnet | Creative writing, moderate reasoning |
| “draft sales proposal for enterprise client” | 🟡 Sonnet | Persuasive writing, moderate reasoning |
| “analyse competitor pricing strategy” | 🟡 Sonnet | Research with a single framework |
| “plan market entry strategy for Europe” | 🔴 Opus | Irreversibility, Synthesis and Ambiguity |
| “design organisational restructuring plan” | 🔴 Opus | Sensitivity, Stakeholders and Irreversibility |
| “M&A due diligence analysis” | 🔴 Opus | Stakes and Synthesis |
| “crisis communication plan for a data breach” | 🔴 Opus | Sensitivity, Stakes and Stakeholders |
Creative and analysis
| Task | Result | Deciding signal |
|---|---|---|
| “translate paragraph to French” | 🟢 Haiku | Language transform, no reasoning |
| “brainstorm product names (single session)” | 🟡 Sonnet | Creative generation, one framework |
| “brainstorm with SCAMPER plus trade-off analysis” | 🔴 Opus | Multi-framework |
| “retrospect: analyse collaboration patterns” | 🔴 Opus | Pattern detection plus Bias identification |
| “identify blind spots in strategy” | 🔴 Opus | Bias identification plus Ethical reasoning |
| “plan 3-day conference with speakers” | 🔴 Opus | Many constraints and Stakeholders |
Commands, skills and agents
| Task | Result | Deciding signal |
|---|---|---|
| “command: convert EPUB to markdown” | 🟢 Haiku | Simple workflow, minimal reasoning |
| “command: save session context” | 🟡 Sonnet | Context management, serialisation logic |
| “command: brainstorm with research plus SCAMPER” | 🔴 Opus | Multi-framework plus strategic analysis |
| “command: retrospect domain learnings” | 🔴 Opus | Pattern detection across sessions plus Bias identification |
| “skill: format code with prettier” | 🟢 Haiku | Deterministic task |
| “skill: standard workflow implementation” | 🟡 Sonnet | Standard workflow, moderate reasoning |
| “agent: explore codebase architecture” | 🔴 Opus | Exploration plus architectural synthesis |
Cases where the escalator decides
Task: "fix a typo in the production payment config"
Base: Haiku (typo fix). Fired: Stakes (production, payments).
Result: Sonnet. One tier up, not Opus.
Task: "rename a function across 40 files with a codemod"
Base: Sonnet. Fired: none. Scope is one mechanical decision, not 40.
Result: Sonnet. Check the diff before trusting the codemod.
Task: "write a customer apology email after an outage"
Base: Sonnet. Fired: Sensitivity (customer-facing crisis).
Result: Opus. Sonnet is enough for the internal incident summary.
Pick Model - Extended Reference
Speed and cost ratios on this page are indicative and change between releases. Model version numbers date from when this page was written, so confirm them against current vendor documentation before quoting them. Rank models by tier (fast, balanced, reasoning) when in doubt.
Model Characteristics
Haiku 4.5
- Speed: Fastest (~2-3x faster than Sonnet)
- Cost: Lowest (~10x cheaper than Opus)
- Context: 200K tokens
- Best for: Deterministic, pattern-based, low-reasoning tasks
- Limitations: Struggles with ambiguity, multi-step reasoning, creative tasks
Sonnet 4.5
- Speed: Medium (baseline)
- Cost: Medium (~5x cheaper than Opus)
- Context: 200K tokens
- Best for: Balanced reasoning, creative work, most coding tasks
- Limitations: Multi-file refactoring, highly nuanced reasoning
Opus 4.6
- Speed: Slowest (~1.5-2x slower than Sonnet)
- Cost: Highest (premium tier)
- Context: 200K tokens
- Best for: Complex reasoning, architectural decisions, high-stakes work
- Limitations: Overkill for simple tasks, slower iteration
Extended Decision Matrix
By File Type
| File Type | Task | Model |
|---|---|---|
.md, .txt |
Typo fix, formatting | Haiku |
.md, .txt |
Blog post, documentation | Sonnet |
.md, .txt |
Long-form report (>5K words) | Opus |
.json, .yaml, .toml |
Parse, extract, validate | Haiku |
.json, .yaml, .toml |
Schema design | Sonnet |
.py, .js, .ts (single) |
Bug fix, feature add | Sonnet |
.py, .js, .ts (3+ files) |
Refactor, architecture | Opus |
.sh, .bash |
Script debug/fix | Sonnet |
.sh, .bash |
Complex orchestration | Opus |
By Domain
| Domain | Task Type | Model |
|---|---|---|
| Data Processing | ETL, parsing, cleaning | Haiku |
| Data Processing | Pipeline design | Sonnet |
| Data Processing | Distributed system design | Opus |
| Content Creation | Social post, email | Sonnet |
| Content Creation | Whitepaper, thesis | Opus |
| DevOps | Config fix, logs analysis | Haiku/Sonnet |
| DevOps | Infrastructure design | Opus |
| Security | Code scan, vuln check | Sonnet |
| Security | Threat modeling, audit | Opus |
| Testing | Unit test write | Sonnet |
| Testing | Test strategy, framework | Opus |
By Interaction Pattern
| Pattern | Model |
|---|---|
| One-shot (single request/response) | Match task complexity |
| Iterative (back-and-forth refinement) | Start lower, escalate if needed |
| Exploratory (user learning) | Start Sonnet (patient explanations) |
| Production (high stakes) | Escalate +1 tier for safety |
Cost/Latency Tradeoffs
When to optimize for speed (choose lower tier)
- Rapid prototyping, quick iteration
- Low-stakes exploratory work
- User waiting synchronously
- Batch processing many simple tasks
When to optimize for quality (choose higher tier)
- Production deployments
- Security-critical code
- User-facing content (brand reputation)
- Complex architectural decisions
- Tasks where rework is expensive
Cost Examples (Approximate)
- 100K input tokens + 10K output:
- Haiku: ~$0.10
- Sonnet: ~$0.30
- Opus: ~$1.50
Edge Cases & Hybrid Tasks
Escalation Scenarios
Start Haiku → Upgrade Sonnet if:
- Output lacks coherence
- Task requires reasoning not obvious from pattern
- User requests “explain why” or “consider alternatives”
Start Sonnet → Upgrade Opus if:
- Multi-system dependencies emerge
- Ambiguity requires nuanced judgment
- Initial approach fails, root cause unclear
- Architectural implications surface
Hybrid Approaches
Sequential (pipeline):
- Haiku: Extract data from logs
- Sonnet: Analyze patterns, generate report
Parallel (fan-out):
- Haiku: Format 10 files in parallel
- Sonnet: Review aggregated changes
Iterative (feedback loop):
- Sonnet: Draft implementation plan
- User: Feedback
- Opus: Refine with architectural considerations
Domain-Specific Guidelines
Web Development
- Component styling, prop changes → Sonnet
- Component library design → Opus
- API endpoint (single) → Sonnet
- API architecture (REST vs GraphQL) → Opus
Data Science
- Data cleaning, feature engineering → Haiku/Sonnet
- Model selection, experiment design → Opus
- Jupyter notebook fixes → Sonnet
- Pipeline architecture → Opus
Infrastructure
- Terraform syntax fix → Haiku
- Resource provisioning → Sonnet
- Multi-region HA design → Opus
Documentation
- API reference generation → Haiku
- Tutorial writing → Sonnet
- Architecture Decision Records → Opus
Common Mistakes
Over-escalation
- Using Opus for typo fixes, simple formatting
- Cost: 10-15x more expensive
- Fix: Trust Haiku for deterministic tasks
Under-estimation
- Using Haiku for “simple” refactors that touch 5+ files
- Risk: Poor code quality, missed edge cases
- Fix: Apply complexity escalators
Ignoring context
- Choosing model without considering stakes, ambiguity, scope
- Fix: Use decision matrix + escalators
False economy
- Choosing Haiku for production-critical work to save $1
- Risk: Outages, security issues, rework costs >> savings
- Fix: Escalate +1 tier for high stakes
When to Override Recommendation
User knows best when:
- Specific model preferences based on past experience
- Budget constraints require cost optimization
- Time constraints require speed optimization
- Iterative work (start lower, escalate if needed)
Always respect explicit user model selection.
Quick Reference: Signal Words
Haiku signals
- “quick”, “simple”, “just”, “only”, “extract”, “format”, “rename”, “fix typo”
Sonnet signals
- “write”, “create”, “explain”, “review”, “analyze”, “debug”, “single file”
Opus signals
- “design”, “architect”, “complex”, “multiple files”, “refactor”, “migration”, “strategy”, “nuanced”
Model Selection Confidence
Output confidence level based on task clarity:
🔴 **Opus** — [reason]
💰 Cost: highest | ⚡ Speed: slowest
🎯 Confidence: High (clear architectural scope)
💡 Consider Sonnet if scope reduces to 2-3 files after exploration
Confidence indicators:
- High: Task signals clearly match one tier
- Medium: Borderline between two tiers
- Low: Insufficient information, recommend exploration