Checked, not fully reviewed
Routes requests to an agent or skill with YAML rules plus one Jev choice. Checked, not fully reviewed: redacts common keys, fails open, starts in shadow mode.
Good for
- Claude Code setups with many skills or subagents, where the model keeps picking the wrong one
- Watching what a router would do for a few days before letting it act
Watch out for
- Redaction catches credential-shaped strings, not a password written in plain words
- The endpoint is fixed to api.typesafe.ai, so it cannot be pointed at a compatible server
Tested Oct 6, 2026 at bcc1c20ce501 · Python 3.12 in Docker; its 168 tests, and its engine driven over HTTP against a local stand-in in place of api.typesafe.ai
Checked, not fully reviewed. We ran its 168 tests (all pass, offline) and drove the engine with
the bundled marketing-team rulebook against a stand-in we pointed its client at. No Jev calls.
A gate is a YAML rulebook. Slash commands, keywords and field checks are settled in code; whatever is
left becomes one Jev choice over the skills still in play, and the verdict is one of allow, route,
suggest, confirm, escalate or block. When no single skill is confident but the likely ones belong to
the same role, it adds their probabilities and routes to the role instead — a sensible use of the
distribution Jev returns. A fresh install runs in shadow mode, logging what it would have done and
changing nothing.
What leaves the machine is the prompt, and only the prompt. We planted four secrets in one:
| planted |
sent |
an OpenAI-style sk-proj-… key |
no — [redacted] |
| an AWS access key id |
no |
password=… |
no |
| “the staging db pass is mauve-otter-77” |
yes |
That is what its own docstring promises: “best effort, not a guarantee” for common token shapes. The
TypeSafe key itself is removed from every error message.
It behaves well when things go wrong. A 529 was retried and the prompt still routed; with the
endpoint unreachable, both shipped rulebooks fail open — the prompt goes through and the error is
logged — so a Jev outage never stalls a session. The rulebook pins jev-1.13.0 on purpose, with a
comment saying thresholds are tuned per model version. One gap that only matters against a
misbehaving server: a choice outside the offered skills was routed as given rather than refused.
MIT, 19 stars, Python 3.11+.
See how it compares with other tools in Best Jev tools, tested hands-on.
Review updated Oct 6, 2026. Numbers quoted from the project are its author's own; we don't publish our own measurements of Jev.