Skip to main content
Version: 0.2 (next)

Models and costs

Every agent step runs on a Claude model, and the model is most of what a step costs. You choose the model for each AgentRole, and for a single AgentWorkflow step when one task needs something different. The work that needs the strongest model gets it, and the rest runs for less.

Tiers​

AgentRoles and steps choose a tier, not a model ID. Your org (or the install) maps each tier to a model, so when a new model comes out you change one mapping instead of every AgentRole.

TierDefault modelFor
Frontierclaude-opus-5-5 (Opus 5.5)Writing code across many files, and catching what others miss
Balancedclaude-sonnet-5-5 (Sonnet 5.5)Reviews, plans, docs and drafts: reading and judgment over a known change
Fastclaude-haiku-4-5-20251001 (Haiku 4.5)Mechanical, high-volume work whose output can be checked

An AgentRole that names no tier runs Frontier.

What the catalog recommends​

Each catalog AgentRole names a tier and says why. When the catalog is upgraded, AgentRoles your org hasn't edited move to their recommended tier; AgentRoles you edited keep what you chose.

TierAgentRolesWhy
FrontierFeature builder, merge conflict resolver, security reviewerThe builder writes the change, and a better first attempt saves review rounds and retries. The resolver rewrites code on a moved base and runs rarely. A missed secret or malicious edit is the most expensive mistake a review can make, and the security reviewer's steps are short, so Frontier costs little more there.
FastLint fixerIt makes the mechanical fixes the linter names.
BalancedEverything else: the architects, the other reviewers and fixers, the end-to-end verifier, docs, versioning, and the scheduled watches and auditsReading the repo and writing specs, reviews and prose, where Balanced keeps most of the quality at about half of Frontier's price.

Each AgentRole's page in the catalog shows its tier and the reason for it.

Change a model​

  • One AgentRole. Under Workforce → Agents → Models and costs, pick its tier in the Model column, or open the AgentRole and change Model on its Permissions tab. Only org admins can. Through the API, PATCH /v1/orgs/{org}/agentroles/{name}/model with {"tier": "balanced"} or {"model": "<model ID>"}; a model ID wins over a tier.

  • All of them at once. Apply recommended models lists every catalog AgentRole that isn't on its recommended tier, with the reason for each, and moves them when you confirm (POST /v1/orgs/{org}/agentroles/recommended-models, with ?dryRun=true to only list them).

  • One step. Give the step a model in its AgentWorkflow: a tier or a model ID. It wins over the AgentRole's choice for that step only. For example, a Balanced quality reviewer can run Frontier for the change workflow's final review:

    steps:
    - name: quality-reviewer
    type: agentRole
    agentRole: quality-reviewer
    model: frontier
  • The mapping. Settings → Model tiers maps each tier to a model ID for your org (PUT /v1/orgs/{org}/models/tiers). An empty field uses the install's mapping, Installation.spec.models.tiers, which in turn defaults to the models above:

    kubectl patch installation infrared --type merge -p '{"spec":{"models":{"tiers":{"balanced":"claude-sonnet-5-5"}}}}'

An AgentRole whose model you changed counts as edited, so later catalog upgrades leave it alone. Reset to catalog on the AgentRole takes the catalog's version, recommended tier included. A step uses the model in force when it starts; a step already running keeps its model.

See what agents cost​

Workforce → Agents → Models and costs shows the last 7 or 30 days:

  • Spend, split by model; Same work, recommended tiers; and Estimated savings per month if every AgentRole ran its recommended tier.
  • Cost by AgentRole and model: for each AgentRole, its model, its recommended tier, steps, spend, spend per step, spend by model, and what its work would have cost on the recommended tier.
  • Cost by AgentWorkflow step: the same by step, with the tier and model each step runs now.

Each step on a Change's page shows its model and tier, and a run's entry on the Changes page adds up each AgentRole's tokens, cost and time. Through the API, GET /v1/orgs/{org}/agent-costs?days=30 (add &product=<name> for one Product). For what the org spends on AI overall, Claude and Gemini together, and the caps it has set, see Usage and limits.

How the numbers are made​

  • Spend is what the Claude Agent SDK reported for each step, split by the models the step used (a step's subagents and context compaction can use other models). It is an estimate, not the bill; the Anthropic Console has the bill.
  • Projections price the same work on another model by the ratio of the two models' list prices for the step's tokens: input, output, cache reads and cache writes. They assume the other model would use the same tokens, which it may not: a cheaper model can take more turns, or fewer.
  • Cache reads cost the same on Opus 5.5 and Sonnet 5.5, so steps that mostly re-read cached context save less than half when they move to Balanced.

Prices​

Projections use Anthropic's first-party API list prices per million tokens. Cache writes are the 5-minute TTL price, 1.25 times input.

ModelInputOutputCache readCache write
claude-opus-5-5$4$20$0.20$5
claude-sonnet-5-5$2$10$0.20$2.50
claude-haiku-4-5-20251001$1$5$0.10$1.25

When prices change, set Installation.spec.models.prices (a list of model, inputUSD, outputUSD, cacheReadUSD and cacheWriteUSD) and the estimates follow. Settings → Model tiers shows the table in use. A model with no price is projected at what it actually cost.