Skip to content

AI code review — verified

Only what it can prove.

Don’t take the review on faith. Every comment lands with the failure scenario that proves it — check it yourself in seconds. And when we miss, it shows up in our published numbers.

Free forever for open source · No card to start · Uninstall deletes your data

THE PR

  • review-bot

    nit: trailing whitespace on line 12

  • code-assistant

    consider adding a comment here

  • review-bot

    prefer const over let

+ 3 more dropped — no proof

superdiffsPROVED

retry creates a new idempotency key → customer charged twice

✓ failure scenario checked vs repo

7 comments came back. Six couldn’t prove their story against the repo — dropped. One did.

✗ dropped — no proof✓ verified — posted

superdiffs / checkoutPR #482

Fix: retry the charge when Stripe times out

OPEN
ConversationFiles +18 −4
MK
mira.kopened 12m ago

Stripe timed out twice yesterday. This retries the charge — review before I merge?

src/checkout/charge.ts+18 −4
138async function chargeWithRetry(order) {
139 for (let i = 0; i < 3; i++) {
140- const key = order.idempotencyKey;
140+ const key = randomUUID();
141 const res = await stripe.charge(order, { key });
7 candidates in · press run

illustrative PR · the real pipeline is replayable from a stored trace

Your code

Never trained on. Never kept.

Read in a disposable sandbox by a one-hour, read-only token scoped to the single repository under review. Nothing you give us trains a model.

Read the trust centre

Measured, not asserted

80% of seeded bugs found · 67% of comments right

Our own live run on the 25-fixture seeded-bug benchmark — harness, fixtures and every miss published. The 10 false positives are in the report too.

Read the benchmark

Open source

Free forever, every depth

Public OSI-licensed repositories get the full reviewer — no card, no trial clock, no credits to run out mid-month.

See what that includes

The problem

36% of AI review comments are noise.

An independent audit across 28 PRs classed roughly a third of a leading reviewer’s comments as nitpicks or outright useless. Teams stop reading, then uninstall.

Typical AI reviewer36%

every bar = 10% of comments · our meter stays unfilled here on purpose — the number lives on the benchmark page with the method that produced it

Pricing · from the catalogue

$19 / seat

per month billed annually ($24 monthly) — and free forever for public OSI-licensed repositories.

One illustrative PR · stored trace

7 → 1

candidates found to comment posted. Six couldn’t prove their story against the repo.

GitHub permissions

Read-only code

contents: read · writes only to PR conversations and checks — it cannot push to your branches.

drawn, not decorated — every number above is sourced: price catalogue, stored trace, app manifest

How we are different

Three decisions the category skipped.

01

Shows its work

The failure scenario ships inside the comment — check it in ten seconds. Verify-then-post is what everyone claims; proof-on-delivery is what you can hold us to.

find → verify → post
02

Never tells you twice

Resolved findings are fingerprinted. Rebases and force-pushes don’t resurrect them.

resolved → remembered → suppressed
03

Accuracy in public

Precision and noise rate published with the dataset and harness. Worse releases show up too.

the miss shows up in the numbers, not a ticket · method

How it works

Three steps, then it stays out of your way.

There is no dashboard to live in and no new review workflow to learn. The reviewer shows up in the pull request you were already looking at.

  1. 1

    Install the GitHub App

    Pick an organization or a single repository. superdiffs reads code and writes only to pull request conversations and checks — it cannot push to your branches.

    contents: read · pull requests: write · checks: write

  2. 2

    It reads the diff, and what the diff depends on

    The changed hunks are pulled into a disposable sandbox, with the guidance your repository already writes for reviewers (CLAUDE.md, .cursorrules, Copilot instructions) and, on paid plans, deterministic checks for committed secrets and conflict markers.

    configured in .superdiffs.yml, committed with your code

  3. 3

    It posts what survived verification

    Inline comments anchored to the right line, each with a failure scenario and a committable suggestion, plus one summary and a check run. Everything else is dropped without a word.

    typical PR: a summary, and nothing else

Steer it in the thread

Nine commands. No dashboard.

@superdiffs review@superdiffs full-review@superdiffs summary@superdiffs resolve@superdiffs pause@superdiffs resume@superdiffs ignore@superdiffs config@superdiffs help

commands are honoured from write-access identities only — never from PR descriptions or diff content trying to talk to the bot

Put it on one repository.

Install it where a noisy reviewer would annoy you most. If it talks too much, uninstall it — that removes your data too, and you can tell us exactly which comment lost you.