Skip to content

jev-guard (muratcakmak)

Claude Code plugin that moves CLAUDE.md rules into hooks, denying rule-breaking edits and unasked deploys via Jev probabilities.

ProjectbetaMIT

Overview

jev-guard by muratcakmak is a Claude Code plugin that scores what the model is about to do and what it just claimed, and denies tool calls when the score is high enough. It moves the conventions that matter out of CLAUDE.md, which the model stops following as context grows, into hooks where a broken rule becomes a denied call with the correction attached.

A rule guard runs on Edit, Write and Bash: regex rules decide locally at no cost, and Jev rules (such as a hardcoded colour where a token exists, or a catch block swallowing errors) go to Jev in one batched request per call. A deploy gate asks whether a command deploys, publishes, merges or sends a credential, and whether the user's last prompt asked for exactly that. It can also route docs into prompts and check the final answer against the turn's evidence. Thresholds are configurable (deny at 0.7 by default), and every failure path lets the call through. The shipped rules are React and React Native examples meant to be replaced.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes this edit break a project rule that a regex cannot express?—
Yes / noDoes this command deploy, publish, merge or send a credential?—
Yes / noDid the user's last prompt ask for exactly that?—

How it works

  1. Hook fires on Edit, Write or Bash
  2. Regex rules decide locally first
  3. Jev rules and deploy questions batched in one request
  4. Deny with the correction if above threshold; fail open on errors

Strengths

  • Rules enforced in hooks, not just prompts
  • Configurable thresholds
  • Fails open, never blocks on scorer outage

Caveats

  • Example rules must be replaced with your own
  • Fail-open design means outages skip checks

Getting started

Clone into ~/.claude/plugins/jev-guard, export JEV_API_KEY, point Claude Code at the plugin, then edit hooks/rules.ts.

At a glance

Type
Project
Status
beta
Language
TypeScript
Runtime
Claude Code plugin (hooks)
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Probability-scored guardrails for Claude Code: deny rule-breaking edits and unasked-for deploys, route your docs into each prompt, and check the final answer against the turn's own evidence.

    logicrw/awesome-jev-projects
  • Probability-scored guardrails for Claude Code: deny rule-breaking edits and unasked-for deploys, route your docs into each prompt, and check the final answer against the turn's own evidence.

    hellogumbo/awesome-jev

Frequently asked questions

What does Jev decide?

Whether edits break semantic rules and whether commands deploy something the user did not ask for.

What if Jev is unavailable?

The tool call proceeds; every failure path passes through.

Can I use my own rules?

Yes, hooks/rules.ts is the config and is meant to be replaced.

Related projects

  • Risk gate for AI coding agents: Jev decides at five layers and Claude Code hooks enforce deny or ask deterministically.

    ProjectbetaJavaScript
  • Auditable Zig terminal agent pairing Codex for coding with Jev typed preflight and postflight checks under deterministic policy gates.

    CLIproductionZig
  • Hermes plugin that asks Jev to review risky plans, check claims against sources, and judge whether a task is really finished.

    Pluginbeta
  • Asynchronous System-1 supervisory plugin for Hermes Agent with typed Jev decisions, ranking, verification and an opt-in tool gate.

    ProjectbetaPython
  • Lean Pi supervisor: zero-token regex guardrails, done-check verification, per-turn routing and a Jev/Clef semantic slop gate on diffs.

    ProjectbetaTypeScript
  • Advisory Jev sidecar for Pi: four pre-flight hazard checks before bash/write/edit and four diff-quality checks after edits.

    PluginbetaTypeScript