Skip to content

jev-router

Per-turn model routing for Claude Code and Codex: wraps the real CLI and lets Jev send simple turns to fast models and hard ones to strong.

ProxybetaMIT

Overview

jev-router provides two commands, jev-claude and jev-codex, that launch the real Claude Code or OpenAI Codex CLI and let Jev choose the model for each fresh user turn. Simple work goes to the fast tier and difficult work to the strong tier, while each CLI's interface, tools, sessions, permissions and authentication stay unchanged; existing subscriptions mean no Anthropic or OpenAI API key is needed.

In Claude Code it appears as a 'Jev Router' entry in /model; selecting another model pauses routing. A status line shows the model chosen for the last turn and its probability. A bundled explanation skill shows the factors behind the last decision, such as task complexity, reasoning required, tool complexity and context size, plus the recommended tier and confidence. All CLI arguments are forwarded. It is a popular project in the ecosystem (593 stars in the input data) and is MIT-licensed.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich model tier should handle this turn?haiku · sonnet · opus
ScoreHow complex is this task / how much reasoning does it need?—

How it works

  1. Launch jev-claude or jev-codex
  2. On each fresh user turn, Jev scores complexity factors
  3. Jev recommends a tier and the router selects the model
  4. The upstream CLI runs the turn unchanged
  5. Use /jev-explain to see the factors

Strengths

  • Native CLI experience preserved
  • Works with subscription logins
  • Transparent per-turn explanations

Caveats

  • Requires a TypeSafe key
  • Routes only fresh user turns
  • Name collision with another npm package noted by a different project

Getting started

npm install -g jev-router, echo "JEV_API_KEY=..." > ~/.jev-router.env, then run jev-claude or jev-codex

At a glance

Type
Proxy
Status
beta
Language
JavaScript
Runtime
Node CLI wrapper
Has code
yes
License
MIT
Stars
593

Use cases and integrations

How curated lists describe it

  • Developer tooling: routes Claude Code tasks to the cheapest capable model by asking Jev to choose among candidates.

    yibie/awesome-jev
  • Per-turn routing for Claude Code and Codex: Jev sends simple work to the fast tier and hard work to the strong tier. `npm i -g jev-router`.

    AnotiaWang/awesome-decision-models
  • A Claude Code and CLI proxy that asks Jev to score task complexity and pick a model from the account’s available set.

    logicrw/awesome-jev-projects
  • Route to the cheapest model in claude code for your task using jev-router

    wh000wh000/awesome-jev-live
  • Chooses a model for each fresh Claude Code or Codex turn while wrapping the existing CLI.

    cobanov/awesome-jev
  • Route to the cheapest model in claude code for your task using jev-router.

    hellogumbo/awesome-jev
  • Per-turn model routing for Claude Code and Codex. Simple work goes to the fast tier and difficult work to the strong tier.

    MrJev/awesome-jev

Frequently asked questions

What does Jev decide?

Which model tier should handle each new user turn, based on complexity factors.

Do I need API keys for Claude or OpenAI?

No, if the CLI is already logged in with a subscription; only a Jev key.

Can I override it?

Yes. Picking another model in /model pauses routing.

Related projects

  • Local router for Claude Code and Codex that has Jev assess each new task, then pins a policy-chosen model and effort for the conversation.

    ProxybetaTypeScript
  • Cost-, cache- and quota-aware LLM router that classifies each turn with a Jev-class model, prices every route, and checks cheap answers.

    ProjectprototypePython
  • TypeScript/Bun launcher that asks Jev which model and reasoning effort each Codex, Claude Code or Pi turn should use.

    ProjectbetaTypeScript
  • Go CLI model router that uses one Jev analysis to recommend a model, harness and effort level, then selects deterministically.

    CLIbetaGo
  • Claude Code and Codex plugin where Jev judges each turn for model routing, delegation, evidence search and compaction.

    ProjectbetaTypeScript
  • Claude Code, Claude Desktop and Codex plugin where Jev reads a task and ranks live models and reasoning effort by quality, speed and cost.

    PluginbetaTypeScript