Reviewers turns the things you keep telling your coding agent into checks it can't skip. A broken rule stops the commit, and the agent fixes it before you ever see it.

$ curl -fsSL https://reviewers.sh/install | sh

v0.1.0 · 6.5 MB · macOS and Linux · experimental

Why not a lint rule?

I built this because I'm not sure a lint rule is enough for a given situation, so a generic approach (using agents) is much easier for me. If you're comfortable with lint rules, you're better off not using Reviewers at all.

Where the rules come from

The first run reads 90 days of your Claude Code and Codex sessions. Every correction you kept repeating becomes a Reviewer, with your own words kept as evidence.

$ reviewers

  • why is this called usr? spell it out→● Spell out names
  • never show error.message, map it to copy→● Errors reach users through the error map
  • stop casting the API response, validate it→● No type casts
  • only comment what the code can't say→● Comments only where code can't say it
  • why is one function doing two things?→● One function answers one question
  • these tests aren't proving anything→● Tests prove behavior that matters
  • what if the storefront priced it wrong?→● Server re-prices every checkout line
  • users aren't developers, hide the json→● No developer content in user UI
  • module A never touches module B's tables→● Modules keep out of each other's tables

Also

everywhere or one repo
A rule can apply to every repo, one repo, or one folder of it.
reviewers eval
Pin real diffs as cases and tune the wording until they all pass.
reviewers stats
What each rule catches, the wait it adds and the tokens it uses.
reviewers classifier
Optional: skips the Reviewers a change can't concern, with Jev.
the skill
Claude Code, Codex, Cursor, OpenCode read reviewers help --agent.

Install it

$ curl -fsSL https://reviewers.sh/install | sh