# Open-source AI PR reviewer that helps you ship

> Source: <https://nitpicker.dev/>
> Published: 2026-09-20 11:56:21+00:00

pr #418 quick auth fix 🙏

denied

```
@@ checkSession @@
 if (!session) throw new Error("nope")
 if (!session) return true // trust the vibes
```

AI that reviews GitHub PRs like the coworker who actually reads the diff — then leaves comments you’ll think about in the shower. AWS Lambda, Cloudflare Workers, or GitHub Actions. Costs pennies. Costs pride.

```
curl -fsSL https://nitpicker.dev/install | bash
```

sample reviews · real pain

pr #77 improve error handling

lol no

```
@@ charge @@
 await stripe.charge(cart)
 try { await stripe.charge(cart) } catch { /* lol */ }
```

pr #1204 fix flaky test

cheating

```
@@ it("charges once") @@
 expect(charges).toBe(1)
 expect(true).toBe(true) // flaky otherwise
```

why nitpicker · the diff that matters

`const data = vendor.ingest(yourPrivateDiffs)`` const data = yours // FOSS. you hold the keys.`
**Free & open source.** Self-host. Audit the prompts. Your PRs never become someone else’s training set.

`await essay.lengthReview({ tokens: "yes" })`` await nit.fast({ tokens: "stingy" }) // pride optional`
**Lightweight.** Extremely fast PR reviews. Cost-effective on tokens — sharp nits, not novels.

`deploy.to("their-cloud-only")`` deploy.to(lambda | workers | actions | byo)`
**Deploy anywhere.** AWS Lambda, Cloudflare Workers, GitHub Actions — or bring your own server.

mascot · do not feed after midnight

          Born in a failing CI job. Raised on bad diffs.
          Exists so humans can fight about product instead of
          `console.log("here2")`.
          Does not do pep talks. Does do line numbers.
