Jev Router Lab
Jev picks the best option from a fixed list and reports how sure it is. It never calls a tool and never generates text. Jev decides, your code executes.
1 · Request
⌘/Ctrl + Enter
2 · Options (tools)4 options · Jev may only pick one of these ids
Required fallback option. The router throws if this id is missing from the list.
API key○ none · demo mode
Use your own TypeSafe key without editing .env.local. It is saved in this browser only, sent to this app's server as a header on each routing call, and forwarded to TypeSafe. It is never shown on screen, so the UI stays safe to stream.
3 · Decision
Run a routing decision to see Jev's pick, its confidence, the full score breakdown, and what your code would execute.
How the boundary works
- The app posts the input and the option list to
/api/route. createRouterchecks that the fallback option is present, then asks Jev onechoicequestion whose options are exactly the option ids.- Jev returns a pick, a probability per option, and a confidence. Anything not in the list is rejected as an invalid route.
- Below the threshold, the fallback policy runs: safe default (model) or ask the user (tool). The decision is logged.
- The library returns an option id. Executing it is your code's job. This demo only prints what it would do.
4 · Routing history
No routing decisions yet. Every run is logged here: input, options, pick, confidence, fallback.