open source · MIT · one key

The second opinion
for AI code.

You ship faster with Claude Code, Cursor, and Copilot — but you're trusting one model. Before you merge, Nomos reviews the change with a different one and hands you a receipt. One command. One key. The AI that wrote it doesn't get to grade its own homework.

Your editor
Claude Code · Cursor
writes the change
nomos verify
a different model
reviews it, adversarially
Receipt
✓ signed
verdict · sha256
One command

It catches what your AI missed.

Point Nomos at the change you just made. A second, independent model reviews the diff — told to find what's wrong, not to agree — and gives you a verdict. Here it caught an auth bypass a "looks fine" review would wave through:

nomos verify — a real run
$ nomos verify -m anthropic/claude-opus-4-8
▸ reviewing 11 diff lines…

✗ FAILif (user.role = "admin") assigns instead of compares.
  The function now returns true for any user, mutates the input,
  and bypasses every authorization check. Revert it.

── receipt 14c8680b · independently checked by anthropic/claude-opus-4-8

FAIL exits non-zero — drop it in a pre-commit hook or CI and a bad change can't land. nomos verify --staged checks what you're about to commit; --against main reviews a whole branch.

Why a second model

Don't grade your own homework.

The model that wrote the code is the worst judge of it — it's confident in exactly the places it's wrong. A different model, told to refute rather than agree, catches the bugs, edge cases, and security holes the first one was blind to. Nomos emits a content-hashed receipt of that review: tamper with the diff, the answer, or the verdict and the id changes.

.nomos/receipts/14c8680b2280.json
{
  "proposer": { "model": "Cursor", "provider": "external" },
  "verifier": { "model": "anthropic/claude-opus-4-8", "verdict": "FAIL" },
  "cross_provider": true,
  "hash": "sha256…"
}

It carries no secrets — commit it, attach it to a PR, hand it to a reviewer who wasn't there. Stop merging AI code on faith.

Built like a real tool

One key. Your models. No lock-in.

ONE KEY

Bring a single model

Verify with whatever you already pay for — Claude, GPT, Kimi, GLM, Qwen, Grok, DeepSeek, or a local Ollama. 13 providers. The key stays on your machine, mode 0600.

FITS YOUR FLOW

Pre-commit, CI, or by hand

nomos verify --staged in a git hook. --against main on a PR. A FAIL exits non-zero, so a bad change can't merge. --json for pipelines.

ALSO AN AGENT

It can do the work too

Need it to make the change as well? nomos run is a full coding agent — explore, surgical edits, run your tests — streaming, on the same one key.

LIGHT

Zero dependencies

One small, readable, sandboxed codebase. npm test runs 25 tests. MIT — fork it.

Two minutes

Get started.

Node 18+. One key — whatever model you want as the reviewer.

# clone, link, connect ONE model $ git clone https://github.com/KadeVeyr/nomos-agent && cd nomos-agent $ npm link $ nomos connect # let Cursor / Claude Code edit, then get a second opinion before you commit $ nomos verify -m anthropic/claude-opus-4-8 --staged