Skip to content

pi-jev-model-router

Pi /jev slash command: Jev picks model tier and thinking level for one prompt in about 200 ms before sending it.

Pluginbeta

Overview

pi-jev-model-router (zazencodes) adds a /jev slash command to Pi. Put /jev at the start or end of a prompt and Jev picks the model and thinking level for it in about 200 ms, then the prompt goes to that model; prompts without /jev behave like stock Pi. The trailing form works in print mode.

Jev answers two Choices in one call: a tier (simple, standard or complex) and a thinking level (low, medium, high, xhigh, max). A cache guard asks before a mid-session switch, and the routed model stays selected afterwards as an ordinary model switch shown in Pi's footer. If the model does not support the chosen thinking level, Pi clamps it and the notification shows both. Default tiers map to Luna, Sol and Astra models and can be customised. The package has no dependencies of its own, calling Jev through Pi's classifier models with TYPESAFE_API_KEY.

What the decision model decides

TypeQuestionAnswers
Choicetiersimple · standard · complex
Choicethinkinglow · medium · high · xhigh · max

How it works

  1. Add /jev to a prompt.
  2. Jev answers tier and thinking in one call (~200 ms).
  3. Cache guard asks before switching mid-session.
  4. Set model and thinking level, then send the prompt.

Strengths

  • Opt-in per prompt.
  • No dependencies; uses Pi's classifier models.
  • Clear notification of choice and probability.

Caveats

  • Routed model stays selected until changed.
  • Requires a TypeSafe key.

Getting started

pi install npm:@zazencodes/pi-jev-model-router, export TYPESAFE_API_KEY, then add /jev to a prompt.

At a glance

Type
Plugin
Status
beta
Language
TypeScript
Runtime
Pi extension
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

How do I trigger routing?

Put /jev at the start or end of a prompt.

Does it affect other prompts?

No, prompts without /jev behave like stock Pi.

How fast is it?

About 200 ms per routing decision, per the README.

Related projects

  • Open-source team agent platform for Slack, GitHub and more that asks Jev once per session which agent runtime and model to use.

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

    ProjectbetaTypeScript
  • CLI, Claude Code plugin and Pi virtual model that pick the right model per prompt from one Jev call with a complexity floor.

    PluginbetaTypeScript
  • Hooks for Claude Code, Codex and pi that use Jev to suggest a skill each turn, plus a rule gate for subagent model routing.

    HookbetaJavaScript
  • Local-first macOS coding workspace that runs your agents and lets a local Laya or hosted Jev selector pick a route the host validates.

    ServicebetaRust
  • Oh My Pi extension where Jev classifies each prompt as simple or advanced and switches the model role, defaulting to advanced on doubt.

    PluginbetaTypeScript