Download CodeVetter
Local code verification for AI-written changes
Desktop, not a PR bot
CodeVetter is a desktop application, not a pull-request bot. It installs on your machine and verifies what a coding agent changed by running it locally, before you push. The repo, diff, notes and review history stay in a local database — CodeVetter has no hosted review server. Your configured LLM provider receives code and prompt content only when you start a review, and it is a provider you choose and contract with directly. Cloud tools invert this: you push first, a vendor service analyses a copy, comments come back. The difference is which vendors sit in the path.
What runs where
Wording taken verbatim from/privacy(last updated 2026-09-01), re-pulled and checked 2026-09-05.
Stays on your machine:
"CodeVetter is a native macOS app. Reviews run on your machine. The repo you point it at, the diff being reviewed, your notes, and the review history all live in a local SQLite database in the app data directory. None of that goes to a CodeVetter-owned server — there isn't one."
Leaves your machine:
"The LLM provider you configure. When you run a review, CodeVetter sends your code + the review prompt to whichever provider (Anthropic, OpenAI, OpenRouter, your own gateway) you've picked. Their privacy policy applies."
Also per/privacy: the updater checks GitHub Releases and that request carries your platform string and current version (disableable in settings); provider keys live in your OS keychain; there is no default crash or usage telemetry, and the first launch does not phone home.
Say this plainly: your code does reach a model provider. What CodeVetter removes from the path is the vendor — there is no CodeVetter server holding your repository — and it leaves you choosing and contracting with the provider directly.
Install
- 1. Download
CodeVetter-1.14.0-arm64.dmgfrom thev1.14.0 release— the newest release that actually carries a build. - 2. Open the
.dmgand drag CodeVetter to Applications. - 3. Launch it. The app is Developer ID signed and notarized, so Gatekeeper will not block it.
Requirements
| Architecture | Apple silicon (aarch64) only |
| macOS | 14 or newer |
| CodeVetter account | None — there is no CodeVetter service to sign in to |
| Model provider | Yours to choose and pay for, governed separately |
| License | ISC |
Not published
Intel macOS, Windows, Linux, and Homebrew installers arenot currently published. There is no beta channel for them and no announced date. If you need another platform, the repository is public and the build path is inspectable — native SwiftUI/AppKit plus Rust, in pnpm workspaces.
Saying this near the top is deliberate. A download page that makes an Intel Mac user read to the bottom to learn there is nothing for them has wasted their time and earned a bounce.
Updates
A signed Sparkle update feed is available. In-app installation and relaunch are still being verified. To update manually, quit CodeVetter, download the latest DMG, and replace CodeVetter.app in Applications; keep your existing application data./privacydescribes the updater as checking GitHub Releases for new versions.
What it does after install
CodeVetter verifies whether a coding agent's change actually did the requested job. It binds the task and the exact diff to declared checks, runs them in a bounded environment, separates agent regressions from pre-existing failures, and emits pass, fail, or unverified — it does not convert missing evidence into confidence.
How verification works →How it compares to cloud review
Cloud pull-request bots review every PR in a repository with no per-developer install, and they review against the whole codebase after you push. CodeVetter reviews one change set, on your machine, before you push. Those are different jobs and a team can reasonably run both.
The full three-way comparison →Next
- The public benchmark — cases, scorer, outputs, limitations
- Privacy · Evidence documentation · FAQ · Changelog
Building from source? See therepo README — native SwiftUI/AppKit + Rust, pnpm workspaces.