Amplifier
Active

Routing Matrix

Stable names, shifting models. Declare intent — the matrix resolves the rest.

March 2026 · v2
01
The Problem

Model selection was a minefield

💥

Brittle Hardcoding

Agents hardcoded provider/model names. When upstream models changed or retired, entire agent fleets silently broke.

💸

The 30× Cost Trap

Copilot's claude-opus-4.6-fast costs 30× premium requests. Glob patterns like claude-opus-* silently matched it.

🧩

No Cross-Provider Intelligence

No way to express "for coding tasks, Sonnet outperforms GPT-5-mini" — providers were isolated silos.

🔄

Constant Churn

Model rankings shift as new benchmarks drop. Yesterday's best is today's second-tier. Manual tracking across 66 agents doesn't scale.

02
The Insight

Stable names,
shifting models

Role names last years. Model assignments change weekly.
When a new model ships, update one matrix row — every agent benefits immediately.

03
Before / After

From brittle to declarative

Before — brittle, manual, expires
# Hardcoded in every agent provider_preferences: - provider: anthropic model: claude-sonnet-4-6
  • Breaks when models retire
  • Must update every agent individually
  • No awareness of what's installed
  • Glob patterns risk cost traps
After — declarative, automatic, stable
# Semantic intent, not model names model_role: coding
  • Survives model churn — role stays, mapping updates
  • One-line change updates every agent
  • Provider-aware — resolves against what's installed
  • Cost-safe — matrices exclude budget traps
04
Semantic Roles

13 roles across 5 categories

Agents declare what KIND of work they're doing. The matrix resolves the best available model.

🏗️

Foundation

general catch-all
fast quick utility tasks

⌨️

Coding

coding implementation
ui-coding frontend / spatial
security-audit vulnerability analysis

🧠

Cognitive

reasoning deep analysis
critique finding flaws
creative design direction
writing long-form content
research investigation

👁️

Capability

vision understanding visual input
image-gen generating images

🔒

Operational

critical-ops high-reliability infrastructure tasks

Each role maps to a model tier
flash → mid → heavy → specialized # with appropriate reasoning config
05
Curated Matrices

7 matrices, one command to switch

Matrix Philosophy Best For
balanced (default) Quality/cost sweet spot Daily development
economy Budget-first, free tiers preferred Experimentation, bulk runs
quality Best model everywhere Critical production work
anthropic Claude models only Claude-centric shops
openai OpenAI models only OpenAI-centric shops
gemini Gemini models only Google ecosystem
copilot Copilot-optimized, avoids 30× trap GitHub Copilot users
# Switch your entire fleet in one command amplifier routing use economy # Or set in config routing: matrix: balanced
06
Benchmarks

Rankings backed by evidence

Curated using two leading independent evaluation sources.

📊 Artificial Analysis

Intelligence Index v4.0 — Terminal-Bench, SciCode, GPQA Diamond, 10+ evaluations

📡 StrongDM Weather Report

14 operational task categories, updated weekly

Key findings informing our matrix
Model Highlight Source
Gemini 3.1 Pro Preview #1 overall — 57.18 Intelligence Index Artificial Analysis
GPT-5.3 Codex Top OpenAI coding model — "workhorse" Weather Report
Claude Sonnet 4.6 "May overtake Opus for everyday use cases" Weather Report
Gemini 3 Flash 46.43 index at $0.50/M — 218 tok/s Artificial Analysis
07
Architecture

How it works

1. Agent declares: model_role: [coding, general]
2. Hook fires at session start, loads active matrix
3. Walks role list, checks candidates against installed providers
4. First match wins → agent config patched with resolved provider/model
5. Fallback chain ensures graceful degradation if preferred provider is unavailable

🧱 Pure Bundle Architecture

Hook module + YAML data files. No Amplifier Core changes required.

🛂 Graceful Degradation

Works without the bundle installed — agents fall back to direct model config.

🧠 LLM-Aware

Available roles injected into context so LLMs can intelligently delegate to the right role.

08
For Agent Authors

One line in your agent config

Simple — one role
# file-ops agent meta: name: file-ops model_role: fast
With fallback chain
# zen-architect agent meta: name: zen-architect model_role: [reasoning, general]
Multi-role fallback
# security-guardian agent meta: name: security-guardian model_role: [security-audit, critique, general]

🔗 Fallback Chains

List multiple roles in priority order. If security-audit can't resolve, try critique, then general.

🧩 Delegation-Aware

When an LLM delegates to a sub-agent, it can override the role based on the specific task — e.g., sending image work to vision.

⚡ Zero Migration

Existing agent configs work unchanged. Adding model_role is purely additive.

09
Composable Overrides

Your models, your rules

settings.yaml
routing: matrix: balanced overrides: coding: - provider: ollama model: codellama:70b - base # fall back to balanced's coding candidates

🔑 base keyword

"Keep the matrix defaults, but try my preferred model first." Overrides compose with — not replace — the curated rankings.

🏠 Local Model Support

Point coding to a local Ollama/vLLM endpoint. If it's down, the matrix seamlessly falls through to cloud providers.

📁 Custom Matrices

Build and store custom matrices at ~/.amplifier/routing/ for team or project-specific strategies.

10
Cost Protection

The Copilot 30× trap — solved

Before: claude-opus-* globs could match the 30× fast variant. Now: the matrix explicitly excludes it.

Model Copilot Multiplier Routing Matrix Assignment
GPT-4.1 0× (free) Not used — Haiku is better
Claude Haiku 4.5 0.33× Fast roles
Claude Sonnet 4.6 Coding / general
Claude Opus 4.6 Reasoning / research only
Claude Opus 4.6 fast 30× NEVER — excluded from all matrices

One glob-match accident at 30× premium can burn through a month of Copilot quota in a single session.

11
CLI Tooling

New commands, clean interfaces

amplifier init

Combined setup dashboard — providers + routing in one flow

amplifier provider manage

Interactive provider management with status display

amplifier routing manage

Interactive matrix selection with live preview of role→model mappings

amplifier routing show

See exactly what each role resolves to right now

amplifier routing use

Switch your entire agent fleet to a different matrix strategy

amplifier routing create

Build your own custom matrix from scratch

amplifier routing list

See all available matrices (built-in + custom)

Ecosystem Adoption

Deployed across the platform

66
Agents Annotated
18+
Repos Coordinated
1,195
Tests Passing
0
Breaking Changes

reasoning / critique

zen-architect, security-guardian → Opus

coding / general

explorer, modular-builder, bug-hunter → Sonnet

fast

file-ops, git-ops, session-analyst → Haiku

Foundation, superpowers, stories, design-intelligence, browser-tester, python-dev, rust-dev, LSP, containers, shadow, webruntime, and webllm agents all annotated.

Development Velocity

Scope of change

18+
Repositories
7
Curated Matrices
13
Semantic Roles
7
CLI Commands

One config line switches your entire routing strategy.

# ~/.amplifier/settings.yaml routing: matrix: balanced
Sources

Data & Methodology

Data as of: March 1, 2026

Feature status: Active — deployed across 18+ repositories

Content source: Slide content authored by feature developer. Numbers reflect implementation state at time of authoring.

Key metrics:

Benchmark sources:

Copilot cost multipliers: Sourced from GitHub Copilot model pricing documentation (March 2026)

Changes from v1:

Gaps: Benchmark numbers are point-in-time snapshots and may shift. Copilot pricing subject to change. Agent count reflects annotated agents, not total agents in ecosystem.

Get Started

Try it now

amplifier init # setup wizard amplifier routing show # see live resolution amplifier routing use economy # switch strategy amplifier routing list # see all matrices amplifier routing create # build your own

📖 Docs

See amplifier routing --help for full command reference

💬 Feedback

File issues in amplifier-bundle-routing-matrix

Amplifier Routing Matrix
More Amplifier Stories