shipwithjev

Catalog / Tools & apps

0038GitHub

pi-jev-router

A Pareto-optimal OpenRouter router for Pi, decided by Jev.

Philipp Dubach’s router asks Jev what a task needs, then picks the cheapest OpenRouter model on the quality-and-price frontier that meets it.

philippdubach/pi-jev-routerREADME ↗
# pi-jev-router: a minimal Pareto-optimal OpenRouter model router for pi, based on Jev

pi-jev-router is a pi extension. It classifies each task with Jev (TypeSafe
System One, called through OpenRouter) and routes the task to an OpenRouter
model. The pick balances quality, cost and latency, and follows a role
policy for planning, code and writing.

The default mode is shadow: the router records what it would pick and does
not switch. Use `/router auto` or `/router auto --dry-run N` to let it switch.

## How a pick is made

1. **Continuation check.** A bare continuation ("continue", "go on", "keep
   going", "yes", "ok", "do it", …) keeps the current model and skips Jev.
   A continuation after an abstain or a manual pin classifies normally.
2. **Classification.** One Jev call per task, with a bounded context block
   from the session and the repository. Five questions: category,
   complexity, risk, brief and decompose. The categories include `planning`
   and `writing`, so prose and planning tasks do not route as code.
3. **Work kind.** The category and a few text rules map the task to
   planning, code, writing or other. A short continuation that Jev calls
   `unclear` inherits the previous work kind.
4. **Abstain.** If Jev is confident (0.7 or more) that the brief needs
   clarification, the router does not switch. The current model asks.
5. **Eligibility.** Hard gates remove infeasible models: no tool support,
   context too small, a zero or sentinel price, an expired preview, a
   measured pass rate under the quality floor (0.65), and, for risk 2 or
   higher, fewer than three measured runs. Then the role policy applies
   (see below). If nothing is left, the gates relax in a fixed order and
   the ledger records which one relaxed.
6. **Frontier and pick.** The rou

Also filed under Tools & apps

  1. 0616

    Jevstiller: distill Jev calls into a local model

    A self-hosted proxy that trains a local model on Jev's answers. It served 72% of Banking77 locally at 15 ms, with a 2% audit and a bound on disagreement.

    tomerglick57 · Tools & apps · 15 ms local

  2. 0611

    Scruple: code checks for what linters miss

    Semantic-aware linting with System One models: rules you can state in a sentence, checked against your code by Jev.

    @nalexpeae · Tools & apps

  3. 0606

    Algolia-style Postgres search with a Jev reranker

    Typo tolerance, typeahead, barcodes and facet counts in plain Postgres SQL, plus an optional Jev step that asks one question per top-10 result.

    @alex_forman1 · Tools & apps

  4. 0604

    Virtual Closet: outfits from closet videos

    built a virtual closet & outfit generator from raw closet videos. classification + semantic search thanks to jev 🥰. clueless closet dreams finally coming to life

    @maitreemervana · Tools & apps