agentleFS
pantheon-orgpantheon-org/tekhne/skills/agentic-harness/pick-model/SKILL.md

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

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
  1. Distinctive:

    Use it when a user asks which model fits a task, before the work starts.

    line 20
  2. Distinctive:

    Use it when an agent must assign a model to a sub-task without a human in the loop.

    line 21
  3. Distinctive:

    Use it when a pipeline or batch job overspends on a frontier model for simple work.

    line 22
  4. Distinctive:

    Use it when the cost against capability trade-off must be explicit, for example in production routing.

    line 23
  5. Distinctive:

    Do not use it when infrastructure or an explicit user instruction already fixes the model.

    line 27
  6. Distinctive:

    Do not use it once the task is finished, because the choice is moot.

    line 28
  7. Distinctive:

    Do not use it for cross-vendor comparisons or live pricing, which this skill does not hold.

    line 29
  8. Distinctive:

    Do not use it when a fine-tuned or domain-specific model decides the outcome, not the tier.

    line 30
  9. Very specific:

    Read the task from $ARGUMENTS.

    line 34
  10. Distinctive:

    Run every escalator check below.

    line 36
  11. Distinctive:

    Read the full matrix for technical, business, creative and command or agent tasks.

    line 49
  12. Distinctive:

    Check ambiguity: requirements are underspecified or have several valid readings.

    line 55
  13. Distinctive:

    Check scope: the change spans 3 or more files, systems or components.

    line 56
  14. Distinctive:

    Check stakes: production, security, data loss or regulatory exposure.

    line 57
  15. Distinctive:

    Check novelty: no established pattern exists.

    line 58
  16. Distinctive:

    Check stakeholders: competing interests need balancing.

    line 59
  17. Distinctive:

    Check irreversibility: strategic, long-term or organisational consequences.

    line 60
  18. Distinctive:

    Check sensitivity: layoffs, executive messaging, crisis response.

    line 61
  19. Distinctive:

    Check synthesis: the work crosses domains such as tech, business and legal.

    line 62
  20. Distinctive:

    Check cognition: pattern detection across sessions, bias spotting, ethical reasoning or two or more analytical frameworks at once.

    line 63
  21. Distinctive:

    Start one tier lower when a retry is cheap, as in drafts, batch runs and exploration.

    line 72
  22. Distinctive:

    NEVER classify on the task label alone: Check the escalators first.

    line 97
  23. Distinctive:

    NEVER pick a model from benchmark leaderboards alone: Test the shortlisted tier on a sample of the real workload.

    line 121

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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

  1. Read the task from $ARGUMENTS. Ask for it when the argument is empty.
  2. Match the task type to a base tier in the matrix below. Match what the task demands, not how long it is.
  3. Run every escalator check below. Move up exactly one tier when any escalator fires, capped at Opus.
  4. Apply the tie-breaks below to a borderline call.
  5. Adjust for cost and latency only after the tier is settled.
  6. Make the recommendation in the output template below. Always name the escalator or matrix row that decided it.

Base tier by task type

TierTypical 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

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.