jev-skill-router
Claude Code hook that asks Jev which skill fits each prompt, plus the week-long log that led its author to remove it.
Overview
jev-skill-router is a reference implementation of Jev as a Claude Code skill router. A UserPromptSubmit hook asks Jev one Choice over the installed skills plus Noul gates on whether any skill is needed; code applies a 0.30 threshold and names at most one skill. In shadow mode, the default, it only logs the guess; inject mode also adds a one-line hint. Claude still sees every skill and makes the final pick, and a bundled script compares the log with what Claude Code did next. It is Python 3.10+, standard library only, version 0.2.0.
The README is a candid negative result. Six scripted single-intent requests all got sensible answers, but over a week in shadow mode with 52 to 66 skills and Japanese prompts there were 1,242 decisions and 539 suggestions, and the suggested skill was called within 30 minutes only 28 times, about 5%. In a random sample of 20 unused suggestions, 13 were off target. The author's explanation is that a per-prompt hook cannot change the skill listing, so the router is a weaker second opinion for a stronger model reading the same descriptions. The README is in English and Japanese.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which installed skill fits this prompt? | — |
| Yes / no | Is any skill needed for this prompt? | yes · no |
How it works
- Prompt submitted in Claude Code
- Hook asks Jev for a skill choice and need gates
- Code applies thresholds and names at most one skill
- Shadow mode logs; inject mode adds a hint
- Script checks the log against later skill calls
Strengths
- Honest published negative result
- Shadow mode lets you measure before acting
- No dependencies beyond Python
Caveats
- Author removed it after a week
- Only about 5% of suggestions were followed
- Needs a paid TypeSafe API key
Getting started
Install the Claude Code plugin, set TYPESAFE_API_KEY, and leave it in shadow mode to log decisionsAt a glance
- Type
- Plugin
- Status
- research
- Language
- Python
- Runtime
- Claude Code hook (plugin)
- Has code
- yes
- Has tests
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Coding agents: Claude Code plugin whose UserPromptSubmit hook asks Jev one `Choice` over the installed skill roster plus `Boolean`-style gates on whether any skill is needed, suggests a skill only when the gate and the per-candidate fit both clear 0.30, and defaults to a shadow mode that logs the decision without injecting it.
yibie/awesome-jevClaude Code plugin: asks TypeSafe Jev which installed skill fits each prompt and logs the answer (shadow-first). A working reference for the skill-suggestion cookbook on Claude Code — the README records why it is unlikely to help a strong model as a router.
logicrw/awesome-jev-projectsClaude Code plugin whose UserPromptSubmit hook asks Jev one `Choice` over the installed skill roster plus `Noul` gates, while code applies the thresholds and names at most one skill; it starts in a shadow mode that only logs the decision.
cobanov/awesome-jevReference implementation for Jev builders: a Claude Code hook that asks TypeSafe's Jev which skill fits each prompt and logs the answer. Run for a week, 28 of 539 suggestions used, then removed; the README keeps what transfers.
hellogumbo/awesome-jevClaude Code hook that asks Jev which skill fits each prompt, in shadow or inject mode, published with the log of the week its author ran it and why they removed it. English and Japanese.
MrJev/awesome-jev
Frequently asked questions
What does Jev decide?
Which installed skill fits a prompt and whether any skill is needed at all.
Did it help?
Not in the author's week: 28 of 539 suggestions were followed, and the author removed it.
Why publish it then?
As a reference implementation that records what transfers to other Jev builds and why this one did not pay off.
Related projects
MIT plugin and local MCP server that hands an agent's closed questions to Jev or local Laya, with policy gates and receipts.
Agent skillproductionPythonClaude Code and Codex skill that routes a task to one of 27 specialist roles, with an optional Jev engine for catalog selection.
ProjectbetaPythonClaude Code hook that decides which agent or skill should handle a request using YAML rulebooks plus one Jev Choice with confidence bands.
HookbetaPythonOrchestrator that probes which coding agents are installed and logged in, then has Jev pick the best one for a task.
Agent skillbetaPythonHooks for Claude Code, Codex and pi that use Jev to suggest a skill each turn, plus a rule gate for subagent model routing.
HookbetaJavaScriptClaude Code plugin that asks Jev before each turn for reasoning effort, subagent model, strategy and skill, with a decision log.
Agent skillbetaTypeScript