jev-commit
Commit-msg hook where one Jev request checks the message against the staged diff and flags filler, contradictions and secrets.
Overview
jev-commit is a pre-commit framework hook that compares a commit message with the staged diff in a single Jev request. It asks five yes/no questions: is the message filler, does it contradict the diff, are there debug leftovers, is there unmentioned work, and is a secret-shaped value on an added line. Each answer is a probability where high always means bad.
It targets teams whose coding agents write both the code and the message, with nothing checking that they agree. By default it only warns; blocking comes from a local regex check for high-precision credential hits, and the secret Noul blocks only in strict mode. The README reports about four cents per thousand commits at list price, computed over a 152-case corpus, and explains that code owns thresholds and decisions while Jev owns only the five judgements.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is the message filler with no checkable claim? | — |
| Yes / no | Does a claim in the message contradict the diff? | — |
| Yes / no | Are there debug leftovers or unmentioned work in the diff? | — |
| Yes / no | Is a credential value written out on an added line? | — |
How it works
- Hook runs at commit-msg time on the message and staged diff
- One Jev request asks five Noul questions
- Print bar-chart scores and findings
- Warn by default; block only on a local regex credential hit or the secret Noul in --strict mode
Strengths
- Very low cost: README estimates about four cents per thousand commits
- Threshold-able probabilities instead of free-text review
- Warns rather than blocks, avoiding noisy outages
Caveats
- Cost figures are arithmetic over a test corpus, not billed amounts
- Large diffs may need more than one request
- Python process start adds latency per commit
Getting started
Add the repo (rev v0.1.0, hook id jev-commit) to .pre-commit-config.yaml and run `pre-commit install --hook-type commit-msg`.At a glance
- Type
- Hook
- Status
- beta
- Language
- Python
- Runtime
- pre-commit hook
- Has code
- yes
- Has tests
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Developer tooling: pre-commit hook where one Jev call judges whether the commit message matches the staged diff, flags debug leftovers and unmentioned work, and blocks only on a detected credential.
yibie/awesome-jevPre-commit hook where one Jev call judges whether the commit message matches the staged diff, flags debug leftovers and unmentioned work, and blocks only when it detects a credential.
AnotiaWang/awesome-decision-modelsA commit-msg hook that scores the message against the staged diff with one Jev request of five Nouls and warns by default. Default blocking is a local regex belt on high-precision added-line hits; the secret\_shaped Noul blocks only with --strict.
logicrw/awesome-jev-projectsPre-commit hook where one Jev call judges whether the commit message matches the staged diff, flags debug leftovers and unmentioned work, and blocks only when it detects a credential.
cobanov/awesome-jevPre-commit hook: one Jev call judges whether your commit message matches the staged diff, plus debug leftovers, unmentioned work, and a credential check.
hellogumbo/awesome-jevPre-commit hook where one Jev call checks whether the commit message matches the staged diff, flags debug leftovers and unmentioned work, and blocks only when it finds a credential.
MrJev/awesome-jev
Frequently asked questions
What does Jev check?
Five yes/no questions about whether the commit message matches the staged diff, including debug leftovers and secrets.
Will it block my commits?
Only on a local high-precision credential match, or on the secret question when run with --strict.
Why not use a chat model?
The README argues Jev gives thresholdable probabilities, near-zero cost since output is free, and speed suitable for every commit.
Related projects
Advisor for coding agents: git and Stop hooks flag test tampering, secrets and skipped hooks, with optional Jev review findings.
HookbetaNode quality gate that scores each diff, commit message and doc set with three Jev Score lenses and a security Noul.
CLIbetaTypeScriptSemantic lint rules as yes/no questions to Jev, for review issues like logged secrets or unbounded retries that ESLint cannot express.
ProjectbetaTypeScriptGitHub Action that asks Jev yes/no questions about each diff chunk for secrets, vulnerabilities, complexity and prompt injection.
ProjectbetaPythonGitHub Action that compiles .jev.yml rules into Jev questions and fails, comments on or passes a PR based on the numbers.
ProjectbetaTypeScriptLocal software factory running YAML pipelines of coding agents and shell steps, with a typesafe step for typed Jev judgments.
ProjectbetaPython