jev-gateway
Session-aware OpenAI-compatible gateway that routes chat requests by task type, scale and rigor, optionally via Jev Choice questions.
Overview
JEV Gateway routes OpenAI-compatible chat requests across model providers using configurable cost, quality and capability rules. Clients point at the gateway and choose a catalogue model or a strategy name instead of hard-coding a model. It can classify work by task type, scale and rigor, then select from configured model pools, optionally asking decision providers typed Choice questions; when no answer is available it uses a deterministic fallback.
It supports pinning a session to one route or reconsidering each turn (the shipped task_aware strategy uses fresh mode), derives a reasoning_effort per route clamped to what the route accepts, and records requests, decisions, outcomes and provider continuation state in SQLite without failing requests if recording fails. A dashboard shows live sessions. Installation is a verified installer script for macOS and Linux that uses uv-managed Python 3.12. It is AGPL-3.0 licensed with English and Chinese docs.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | What task type, scale and rigor does this request have? | — |
| Choice | Which model from the pool should serve it?(inferred) | — |
How it works
- Client sends a chat request naming a strategy
- Gateway classifies the request, optionally via Jev Choice questions
- Select a model and reasoning effort from the pool
- Record decisions and outcomes in SQLite
Strengths
- Deterministic fallback when the decision provider is unavailable
- Session pinning or per-turn routing
- Checksum-verified installer
Caveats
- AGPL licence may limit embedding
- Version 0.1
Getting started
`curl -fsSL https://github.com/TexasOct/jev-gateway/releases/latest/download/install.sh | sh -s -- --yes`.At a glance
- Type
- Service
- Status
- beta
- Language
- Python
- Runtime
- OpenAI-compatible HTTP gateway
- Has code
- yes
- License
- AGPL-3.0
Use cases and integrations
How curated lists describe it
Session-aware OpenAI-compatible model-routing gateway powered by JEV
logicrw/awesome-jev-projectsSession-aware OpenAI-compatible model-routing gateway powered by JEV.
wh000wh000/awesome-jev-live
Frequently asked questions
What does Jev decide?
Optionally, the task type, scale and rigor that drive model selection.
What if Jev is unavailable?
Routing falls back to a configured deterministic rule.
Can a session stay on one model?
Yes, via session pinning; per-turn selection is also available.
Related projects
Unofficial Rust gateway routing /v1/systemone requests to TypeSafe, Vercel, OpenRouter or local Laya via an editable DAG.
ProxybetaRustGo gateway that puts local and hosted System One models behind one TypeSafe API, with a local Laya router choosing Laya or Jev.
ServicebetaGoJuspay's TypeScript AI SDK with decide as a third inference type next to generate and stream, backed by Jev or Laya.
LibraryproductionTypeScriptCommunity .NET 10 SDK giving one API for choice, score and assessment over Microsoft-Decision-1, Ollama or native Jev.
PluginbetaC#Python client that sends one Choice/Score/Noul request down a fallback chain of hosted and local decision models with confidence gates.
LibrarybetaPythonElixir client for System One decision models (Jev, Clef, OpenAI Decisions, OpenRouter, self-hosted) returning full distributions.
LibrarybetaElixir