Skip to content

opencode-jev-router

OpenCode plugin and proxy where Jev picks reasoning effort per step; superseded by reasoning-router.

ProxybetaMIT

Overview

opencode-jev-router asks Jev how much reasoning each step needs so one model can handle both quick edits and hard debugging without manual effort switching. For each primary request it sends a bounded summary of recent conversation to Jev, which picks an effort level such as low for a rename or high for a failing test, then adds that choice as an OpenAI configuration_update item or an Anthropic effort-only system message, leaving earlier updates in place so the prefix stays cacheable.

On the author's GPT-6 Astra task mix, both Jev routing and fixed high effort solved 44 of 44 attempts, with Jev using 14% fewer output tokens and finishing 9% faster on average. If Jev is slow or unavailable, a fallback effort (high by default) is used. Jev keys can come from TypeSafe or Vercel AI Gateway. The project is superseded by reasoning-router, whose OpenCode plugin is @reasoning-router/opencode.

What the decision model decides

TypeQuestionAnswers
ChoiceHow much reasoning effort does this step need?(inferred)low · medium · high

How it works

  1. Summarise recent conversation for Jev.
  2. Jev chooses a reasoning effort.
  3. Inject the effort as a configuration_update or system message.
  4. Forward to the model; fall back to high if Jev is unavailable.

Strengths

  • Same success rate with fewer tokens in the author's evaluation.
  • Cache-friendly effort updates.
  • Works with OpenAI Responses or Anthropic endpoints.

Caveats

  • Superseded by reasoning-router.
  • Results on other workloads may differ.

Getting started

Use the successor @reasoning-router/opencode; this package requires OpenCode V2 2.0.4+ and a Jev key from TypeSafe or Vercel AI Gateway.

At a glance

Type
Proxy
Status
beta
Language
TypeScript
Runtime
OpenCode plugin, Responses API proxy
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

Frequently asked questions

Is this project maintained?

It is superseded by reasoning-router.

What did the evaluation find?

44/44 solved with 14% fewer output tokens and 9% faster than fixed high effort.

What if Jev is down?

Requests continue at a fallback effort, high by default.

Related projects

  • OpenCode plugin where Jev picks the best free Zen or Go model for each new message from the live catalogue.

    ProjectbetaJavaScript
  • OpenCode plugin adding an Auto (Jev) virtual model that routes each turn to one of your configured real models.

    PluginbetaTypeScript
  • OpenCode orchestrator that keeps a cheap sticky parent model and escalates to strong child subagents only when Jev flags a hard turn.

    ProjectbetaTypeScript
  • Host-agnostic routing layer that picks model, effort and provider per round for coding harnesses from trajectory evidence.

    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
  • Local-first, outcome-aware model router for coding harnesses that picks a capability tier per task with Jev and learns from history.

    ProjectprototypeRust