jev-decision-harness
Claude Code plugin adding typed Jev decisions to hooks: task kind, command risk, failure class, completion; never grants permissions.
Overview
jev-decision-harness is a Claude Code plugin and CLI that wraps typed Jev decisions around Claude Code's hooks. Claude keeps all code understanding and generation, deterministic code keeps permissions, retrieval, thresholds and side effects, and Jev answers small typed questions. Jev can push toward asking or blocking but never grants a permission.
On prompt submit it classifies task kind, relevant skills, risk and complexity and reranks keyword-found files. Before Bash commands that no regex rule decides, it scores risk and may escalate to 'ask'. After tool use it classifies failures that rules miss. At stop it checks whether work is complete, suspicious, and whether each file is relevant, producing a human-review message or one block per prompt. Projects must opt in with /jev-init, and any error, timeout or missing key leaves Claude Code unchanged.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | What kind of task is this prompt, and which skills apply? | — |
| Score | How risky is this Bash command? | — |
| Choice | What class of failure is this? | — |
| Yes / no | Is the work complete and not suspicious? | — |
How it works
- Run /jev-init to opt a project in
- Hooks apply deterministic rules first
- Jev answers bounded questions only where rules do not decide
- Add context lines, escalate to ask, or block once at stop; fail open on any error
Strengths
- Jev can never allow a command, only ask or deny via policy
- Opt-in per project; fails open
- Covers prompt, tool, failure and stop stages
Caveats
- Requires Node 20+ and a TypeSafe key
- No accuracy figures in the excerpt
Getting started
`claude plugin marketplace add chhetri123/jev-decision-harness`, `claude plugin install jev-decision-harness@jev-decision-harness`, then run /jev-init in a project.At a glance
- Type
- Plugin
- Status
- beta
- Language
- JavaScript
- Runtime
- Claude Code plugin (Node hooks)
- Has code
- yes
Use cases and integrations
How curated lists describe it
Claude Code plugin: typed Jev (TypeSafe System One) decisions around Claude…
wh000wh000/awesome-jev-live
Frequently asked questions
What does Jev decide?
Task kind, command risk where rules are silent, failure class, and whether work is complete or suspicious.
Can Jev approve dangerous commands?
No. It can only lead to ask or block; it never grants allow.
What if the key is missing?
Claude Code behaves exactly as before.
Related projects
Risk gate for AI coding agents: Jev decides at five layers and Claude Code hooks enforce deny or ask deterministically.
ProjectbetaJavaScriptAuditable Zig terminal agent pairing Codex for coding with Jev typed preflight and postflight checks under deterministic policy gates.
CLIproductionZigVerified computer-use agent: a Jev guard checks claimed completions and gates irreversible actions; Jev also takes simple steps.
ProjectbetaPythonTyped judgment layer for Claude Code, Codex and Hermes Agent: deterministic facts in code, language judgments in Jev, with receipts.
ProjectbetaPythonClaude Code PreToolUse hook that auto-approves shell commands Jev is confident are read-only, and otherwise shows the normal prompt.
HookbetaPythonDeepSeek Harness plugin with 12 opt-in Jev or Luna Decisions judgments: skill and file selection, supervision, filtering and approval help.
PluginbetaTypeScript