jev-pref
Linter that has Jev check code changes against project preferences from `jev-pref.json` and feeds findings back to coding agents.
# jev-pref **Turn your preferences from AGENTS.md into a fast, Jev-powered AI linter.** `jev-pref` lets you define project-specific semantic rules, run them against code changes with [Jev](https://docs.typesafe.ai), and feed the results back to your coding agent. ## Quick start Tell your coding agent: ```text Run `npx jev-pref setup` and follow the instructions it prints. ``` That's it. `setup` inspects the repository and teaches the agent how to configure `jev-pref`. The agent explains the system, asks you a few questions, helps translate your preferences into useful semantic checks, and adds persistent instructions to `AGENTS.md`, `CLAUDE.md`, or wherever you choose. No special agent integration or global installation is required. Node.js 20+ and `npx` are enough. ## What jev-pref is for Think: ```text TypeScript → type invariants ESLint → syntax and static rules tests → behavioral invariants jev-pref → semantic project rules ``` Instead of asking an AI "is this code good?", you define what matters, Jev classifies the evidence in the change, `jev-pref` maps the result to an outcome, and your coding agent acts on it. The full boundary — what Jev may and may not judge — lives in [docs/principles.md](./docs/principles.md). Good questions name externally defined, evidence-grounded checks: ```text Does this diff introduce new mutable module-level state? ``` ```text Does this change remove or rename an existing exported symbol? ``` ```text Classify the API impact: - none - additive - behavioral - breaking ``` Poor questions ask Jev to invent a standard of quality: ```text Is this good architecture? Is this code clean? Are these tests sufficient? ``` If you cannot explain what visible evidence would make an answer true, the rule needs more