model-router

model-router is a skill for Claude Code, Codex from BASHBOP/otito. It costs 93 tokens per session (355 once invoked), scanned A, original, MIT.

A task-routing skill that estimates how difficult or risky a coding request is and chooses a lower-cost, middle, or higher-capability AI model tier. It can use Otito or a built-in scoring method.

In plain words
What is it for?
Use it at the start of coding, code review, debugging, or planning requests to select a model tier, unless the user has already chosen a model.
Why use it?
It avoids using the most expensive model for every request while allowing harder or riskier work to use a more capable model. It runs before large amounts of context or code are processed.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions Claude Code; mentions Codex.

Good fit Use it at the start of coding, code review, debugging, or planning requests to select a model tier, unless the user has already chosen a model.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/bashbop/otito/model-router
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add BASHBOP/otito --skill model-router
Clone the repo
git clone --depth 1 https://github.com/BASHBOP/otito

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for model-router

README.md
[![agentmods](https://agentmods.dev/badge/skills/bashbop/otito/model-router.svg)](https://agentmods.dev/skills/bashbop/otito/model-router)
Your own site
<a href="https://agentmods.dev/skills/bashbop/otito/model-router"><img src="https://agentmods.dev/badge/skills/bashbop/otito/model-router.svg" alt="Measured on agentmods" height="20"></a>
Per session 93 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 355 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00093 $0.00355
Opus 5 $0.00046 $0.00178
Sonnet 5 $0.00019 $0.00071
Haiku 4.5 $0.00009 $0.00036

Measured yesterday against content hash ffbb8e45454d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

model-router scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

codex/skills/model-router/SKILL.md · 41 lines

What it actually says

Model router (host-agnostic)

Goal: spend premium models only when the task needs them. Works with any ML coding host, including agents launched inside Herdr panes. Otito scores cost/safety; this skill chooses the model tier.

This is routing, not orchestration. Do not spawn multi-agent loops.

When to run

At the start of a user request (before large context packs or edits), unless the user already pinned a model.

Step 1 — Score

Prefer Otito AX / Herdr bashbop.otito.model-route. Else use the heuristic in the Cursor/Codex copies of this skill.

AX Tier
≥ 75 cheap
45–74 mid
< 45 premium

Bump one tier if containment < 20 or auth/payments/migrations.

Herdr

herdr plugin action invoke bashbop.otito.model-route
# prefix+m when configured

Then start/prompt the pane agent for that tier.

Sync

Canonical: otito/codex/skills/model-router/ and Cursor/Codex user skills.

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 41 lines · 93 tokens per session scan A ffbb8e45454d

Subscribe to this mod's changes

model-router is a skill published in the GitHub repository BASHBOP/otito (1 stars, last pushed today), licensed MIT. It adds 93 tokens to every session and 355 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-07.

Related

Other skills, from other repositories

memorywhale

Query and write durable debugging memory recorded by MemoryWhale. Use when debugging a failure that may have happened before, when you need the exact error/flags/output from an earlier attempt, when the user asks "how did we fix this last time?", or once you've figured out why something failed / how a fix worked and…

wuisabel-gif/MemWhale · 79 tokens

init

Turn on Rekal memory in the current repository by running rekal init. Use when the user asks to initialize or set up Rekal here, or when a rekal command reported the repository is not initialized. Once per repository. Do not offer this merely because a repo lacks a .rekal/ store — most repos do not want one.

rekal-dev/rekal-cli · 75 tokens

install

Install the Rekal binary on this machine. Use when rekal is not on PATH — a command reported command not found — or when the user asks to install Rekal. Once per machine, not per repository; to set up a repo that already has the binary, use the init skill instead.

rekal-dev/rekal-cli · 66 tokens

rekal

Use in a repo with Rekal initialized (.rekal/ exists). Rekal is memory of prior AI sessions — who changed what, why, and when. Before spending a token, decide WHERE the answer lives: TREE / KNOWLEDGE / LEDGER / MAP. Route to one substrate, act, and stay silent when memory is not the tool. Rekal's commands return…

rekal-dev/rekal-cli · 91 tokens

tree-ring-memory

Guides AI agents in using Tree Ring Memory for durable recall, project decisions, user preferences, warnings, future seeds, privacy-safe memory capture, and lifecycle-aware forgetting.

TerminallyLazy/Tree-Ring-Memory · 38 tokens

planpage

Render a skill's plan, review gate, quiz, poll, or report as a beautiful, self-contained INTERACTIVE HTML page via the open-source planpage package (Preact → static HTML + local post-back). The user edits and annotates the plan in the browser, attaches screenshots, stages everything in a fixed sidebar, then hits Send…

YosefHayim/planpage · 123 tokens