Skip to content
Agentmart
Submit a tool

model-routing

Use before the first search or edit of work that needs more than two steps, and whenever bounded work might be handed to another model through `pi-dispatch`.

Skill by jhonDoe15

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/jhondoe15-model-routing

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use before the first search or edit of work that needs more than two steps, and whenever bounded work might be handed to another model through `pi-dispatch`. Chooses the owner (main session, `pi-dispatch` worker, or fresh session) and the model slot. Not for single-step requests or questions answerable directly.

Use cases: writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/model-routing

What's inside

Skill name
model-routing
Description
Use before the first search or edit of work that needs more than two steps, and whenever bounded work might be handed to another model through `pi-dispatch`. Chooses the owner (main session, `pi-dispatch` worker, or fresh session) and the model slot. Not for single-step requests or questions answerable directly.
License
MIT
Instructions
173 lines in SKILL.md · view on GitHub

Files (7)

  • SKILL.md
  • component-take-it-offline.json · evals/
  • outcome.json · evals/
  • package-closure.json · evals/
  • role.json · evals/
  • trigger.json · evals/
  • pi-dispatch-prompting.md · references/

SKILL.md (first lines)

# Model Routing

Decide who does each unit of work, and on which model, before doing it. Then
dispatch with `pi-dispatch` or keep the work here.

## Route first

Before the first search or edit on work that needs more than two steps, state a
**route**:

1. Name the intended outcome, done boundary, and overreach boundary.
2. Separate judgment from mechanical execution.
3. Assign each unit to the main session, `pi-dispatch`, or a fresh session.

Keeping work in the main session is a route and needs the same decision.
Default to delegation when it reduces context load, enables parallel progress,
or creates a clearer completion boundary. Keep the work here when handoff
overhead would exceed the bounded work.

## Choose the owner

- **Main session:** work that depends on reasoning already held here. It owns
  decisions, orchestration, integration, and review.
- **`pi-dispatch`:** bounded, self-contained work whose handoff the main session
  will consume.
- **Fresh session:** a new phase, a clean-slate second opinion, or an unrelated
  thread. Load `take-it-offline` by its exact canonical name to create the
  handoff, recommend the slot, then wait for the user to open the session.

Each dispatch owns exactly one bounded task. Its brief supplies the necessary
inputs, one outcome, allowed scope, constraints, and checkable completion
criteria. The task may take several steps; each must advance those criteria.
Meeting them ends the worker's authority, and adjacent work returns to the
parent.

## Choose the slot

Choose the family by the shape of the evidence, not by whether the task
contains judgment:

- **OpenAI** for closed-world work: the contract, rubric, source set, or
  expected validation is explicit and coverage can be enumerated. This includes
  implementation, API and contract research, test planning, static checks, and
  exact spec comparison.
- **Anthropic** for open-world work: the worker must infer intent, expose hidden
  invariants, generate causal hypotheses, reconcile ambiguous evidence, or
  reason about interactions across state, time, or ownership boundaries.
- Wide independent items favor OpenAI. A cohesive problem whose parts share
  implicit behavior favors Anthropic. File count alone selects neither family
  nor tier.

| Work | Slot |
|---|---|
| Deterministic transformation or implementation with exact checks, even across several files | `openai-small` |
| Contract or API research, test mapping, or rubric-driven spec, standards, and static review | `openai-mid` |
| Exhaustive closed-world reconciliation where omissions are hard to detect, or proven mid-tier reasoning insufficiency | `openai-top` |
| Factual summary, eligibility gate, or bounded local semantic check | `anthropic-small` |
| Unknown-cause debugging, implicit-invariant review, ambiguous intent, or interacting-module judgment | `anthropic-mid` |
| Unresolved cross-system behavior or adversarial review where a wrong answer is both hard to detect and costly | `anthropic-top` |

Start at `small` and promote only on evidence:

- `small` when a precise brief and deterministic validation can expose a wrong
  result. Large settled edits may stay small.
- `mid` when local judgment remains, validation is partly interpretive, or the
  worker must discover and connect evidence.
- `top` only when mid-tier reasoning has proved insufficient, multiple
  unresolved uncertainties interact across boundaries and failure would be
  silent or expensive, or required completeness is consequential and omissions
  cannot be checked cheaply. A sensitive domain alone does not require `top`;
  sensitivity plus unresolved judgment does.

Calibration: a multi-file refactor with an exact analyzer and tests is
`openai-small`; a pinned SDK contract audit is `openai-mid`; a stale async-state
race is `anthropic-mid`; an unresolved authorization design spanning systems is
`anthropic-top`.

Promote a wide enumeration only when omissions cannot be checked cheaply.
Escalate after failure only when the failure reveals missing judgment or
insufficient reasoning; fix the brief or tooling at the same tier for execution
failures.

## Dispatch

Run `pi-dispatch --list` for the current slots, models, and effort levels; the
command is their only authority. Dispatch from the working directory the worker
should use:

```bash
pi-dispatch --list
pi-dispatch <slot> <slug> "<bounded brief>"
pi-dispatch <slot> <slug> --context <handoff> "<angle-specific brief>"
pi-dispatch --recursive <slot> <slug> [--context <handoff>] "<bounded parent brief>"
```

The command attaches the family and tier prompting profiles itself, from
`~/.cursor/rules/references/pi-dispatch-prompting.md` unless
`PI_DISPATCH_PROMPTING_GUIDE` names another file. When the command exits with
`Prompting guide must be a readable, nonempty file`, set
`PI_DISPATCH_PROMPTING_GUIDE` to the absolute path of
[`references/pi-dispatch-prompting.md`](references/pi-dispatch-prompting.md)
in this skill and rerun. Keep only task-specific judgment in the brief; do not
copy or weaken those profiles. It
also attaches the optional `--context` handoff without copying it into the
command, and prints only the output handoff path. Output metadata records the
context path and hash when supplied.

When several workers share context, load `take-it-offline` by its exact
canonical name once to create the handoff, and reuse its path with a small brief
for each angle. Without shared context, pass the
complete brief directly or through stdin.

Every ordinary dispatch is a depth-one **bounded worker**. Its authority is the
brief; shared context supplies facts rather than scope. Completion ends the
run.

After a dispatch returns, read its handoff, inspect any diff, and verify the
critical path before accepting the work.

From jhonDoe15/skills, MIT.

More from jhonDoe15/skills

Signals

Stars
0
Forks
0
Open issues
16
Last commit (this folder)
Oct 8, 2026 (21 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from jhonDoe15

Cite this page

model-routing skill. Agent Mart. https://agentmart.dev/skills/jhondoe15-model-routing (last updated 2026-10-24)