JevLint
Semantic linter that checks each source file against plain-English conventions and reports Jev's probability of a violation.
Overview
JevLint lets teams write coding conventions in plain English and checks what code means rather than its syntax. It is designed for a write, check, fix loop with a coding agent: the agent writes code, JevLint checks it against the conventions, and the agent uses the findings for its next edit. It runs from the terminal, an agent's verification step or CI.
For each selected source file and rule, JevLint sends the file and the plugin's instructions to Jev and receives the probability that the file violates the rule. Findings above a threshold (default 0.8) are reported. Results are file-level only: no line numbers, suggested names or automatic fixes. A built-in magic-strings plugin is enabled by default, and JavaScript or TypeScript plugins can add rules. The README warns that plugins run with full Node permissions even in dry-run mode and that filename-based exclusions are not secret detection.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does this file violate the rule (e.g. contains magic strings)? | — |
How it works
- Run npx jevlint init to create a config
- Select files by path or glob
- Jev scores each file against each enabled plugin rule
- Files above the threshold (default 0.8) are reported as findings
- The coding agent or developer fixes and reruns
Strengths
- Conventions written in plain English instead of AST rules
- Adjustable threshold and JSON output for agents and CI
- Dry-run mode shows requests without calling the API
Caveats
- File-level findings only, no line diagnostics
- Source code is sent to the hosted Jev API
- Plugins execute with normal Node permissions
Getting started
npm install --save-dev @jevlint/cli && npx jevlint init, add JEV_API_KEY to .env, then run npx jevlint.At a glance
- Type
- Plugin
- Status
- beta
- Language
- TypeScript
- Runtime
- Node.js 24+ CLI
- Has code
- yes
Use cases and integrations
How curated lists describe it
Configurable semantic linting powered by Jev, with file-level NOUL judgments…
wh000wh000/awesome-jev-liveConfigurable semantic linting powered by Jev, with file-level NOUL judgments and a magic-strings plugin.
hellogumbo/awesome-jevChecks code against conventions written in plain English, in a write-check-fix loop with your coding agent.
MrJev/awesome-jev
Frequently asked questions
What does JevLint decide?
For each file and rule, the probability that the file violates the plain-English convention.
Does it point to exact lines?
No, findings are file-level signals for review.
Does it need a key?
Yes, a JEV_API_KEY, except for --dry-run which only prints the requests.
Related projects
Rust code-review gate asking Jev small typed questions about functions and tests, failing CI only on rules measured 80% right.
CLIproductionRustCoding-agent hook that asks Jev one yes/no per project rule on every edit or turn and makes the agent fix any violation.
HookbetaTypeScriptAdvisor for coding agents: git and Stop hooks flag test tampering, secrets and skipped hooks, with optional Jev review findings.
HookbetaRead-only Go CLI that checks files against your plain-language code rules with Jev, locally or in CI.
CLIbetaGoCLI and agent commands auditing a git diff against YAML standards packs, scoring each hunk with Jev so agents fix only flags.
Agent skillbetaTypeScriptFuzzy linter hook for Claude Code and Codex where Jev checks each written file against team rules and reports violations at edit time.
HookbetaTypeScript