Skip to content

Jev directory

Jev Belay

A Claude Code Stop hook that reads the turn transcript locally and spends one four-question Jev call only when files changed with no passing check since, blocking unverified done claims.
Stars
39
Language
JavaScript
License
MIT
Reading time
4 min
Published by
Community
Author
valentynkit
Last verified
Sep 2026

valentynkit/jev-belay

User repository on GitHub

View on GitHub

Claude Code Stop hook that blocks an unverified done: reads the transcript for evidence, asks Jev once, fails open on everything else

Forks
6
Last pushed
Updated Oct 2026

Repo stats from the GitHub API, cached Oct 2026.

About this project

Claude Code says "Done, tests pass." jev-belay checks whether anything ran before it lets that stand. A Stop hook. It reads the turn's transcript locally, and only when files changed and no check has passed since does it spend one Jev call, four questions, $0.00005, on whether the closing message is an unverified "done". If it is, the turn does not end: Claude gets the reason and goes back to run the suite. Every other stop costs nothing. Every error path lets the turn end.

Quoted from the project's README. Read the full README.

Highlights

  • Measured AUROC 0.976 for telling a false done from an honest one over 100 labeled stops, versus 0.777 for wording alone.
  • One Jev call covers four questions for $0.00005, with 1,222 median input tokens and output free.
  • At the shipped 0.70 threshold it blocks 8 turns in 100, 7 of them rightly, and Jev answers in 346 ms at the median.
  • Only 17.7% of stops reach the question; every other stop costs a local transcript read and no network.
  • A turn with no file edits never reaches the question, so a read-only tests-pass claim passes through.

Quickstart

json
{
  "env": { "TYPESAFE_API_KEY": "YOUR_API_KEY" },
  "hooks": { "Stop": [{ "hooks": [{ "type": "command", "command": "node ~/src/jev-belay/belay.mjs", "timeout": 25 }] }] }
}

Watch out

MIT-licensed. Needs Node 20+, Claude Code 2.1.196 or newer, and a TypeSafe API key; every error path lets the turn end.

Questions about this entry

Short answers drawn from the linked project or page.

Reactions & coverage

Posts, threads, and videos about this entry from around the web.

X: Vercel's fx safety reviewer, measured at 18× faster

Reddit: Early experiments wiring Jev into Pi as a safety layer and model router.

YouTube: Ray Amjad puts Jev inside an agentic coding loop and looks at what it costs to run.

YouTube: RoboNuggets puts Jev to work inside Claude Code.

From the Jev guides

Original write-ups on what this entry is for.

From the Jev AI model community

Posts from builders shipping with Jev right now.

Follow @typesafeai