Get started
Five ways to use Veridu. Same reconciled reviewer panel underneath. Pick the one that fits your workflow.
Command line
The everyday-dev path. Install once, sign in once, run a review on any GitHub PR.
npm install -g veridu
veridu init
Prompts for your email → emails a 6-digit code → stores a token at ~/.veridu/config.json. Same account you'd use on the web.
veridu review https://github.com/owner/repo/pull/123
Runs a hosted review. ~60-90s. Prints the reconciled result - agreements, disputes, per-reviewer findings. Free tier: 5 review attempts (lifetime). Re-running against a force-pushed PR counts as another attempt.
--models codex,claude-opus-5- pick a reviewer panel (paid tier)--json- raw result JSON for tooling--local- BYOA fallback using your own OpenAI + Anthropic keys
MCP · inside your agent
Add Veridu as a hosted MCP server. Works with Claude Code, Cursor, Windsurf, Codex CLI, and any MCP-capable agent. Your agent gets a veridu_review tool it can call directly.
Paste into your agent's MCP config (Claude Code: ~/.claude.json). Get a token from signin or the CLI's veridu init.
{
"mcpServers": {
"veridu": {
"url": "https://api.veridu.io/mcp",
"headers": {
"Authorization": "Bearer <YOUR_VERIDU_TOKEN>"
}
}
}
} After adding the config, your agent will list a tool called veridu_review(pr_url, models?, github_token?). Ask it to review a PR - it'll call the tool automatically.
Once configured, ask your agent something like "Have Veridu review my most recent PR." Your agent finds the PR from your git history, calls the tool, and shows you the reconciled result inline.
Web · paste a URL
For one-off reviews or when you're between machines. Sign in, head to Reviews → Run a review, paste a PR URL.
Renders in the browser with live status while the review runs. Same result view as the CLI, plus inline adjudication (👍 / 👎 on individual findings - coming soon).
GitHub App · auto-review on every PR
For teams. Install the Veridu GitHub App on your org or specific repos. Opened and updated pull requests get reviewed automatically; findings post as an inline PR review comment, updated in place as the PR moves.
Two things Veridu deliberately does not do. Draft pull requests are not reviewed — they change constantly while you work, and a review of a half-finished branch is noise. Mark the PR ready for review and Veridu picks it up. And when several commits land in quick succession, they are reviewed together rather than once each, so the review reflects where the branch actually ended up.
API · in your CI / pipeline
For scripted flows — a GitHub Actions job, a GitLab CI stage, an internal review bot. Two endpoints do the whole flow.
curl -X POST https://api.veridu.io/reviews \
-H "Authorization: Bearer $VERIDU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"pr_url":"https://github.com/OWNER/REPO/pull/N"}'
# → 201 {"review_id":"<uuid>","status":"queued","models":["codex","claude-sonnet-5"]} Register a webhook target once at /webhooks. We POST a signed body when the review completes — replaces polling GET /reviews/<uuid> every N seconds.
POST https://your-app/webhooks/veridu (from us to you)
X-Veridu-Signature: t=<unix>,v1=<hmac-sha256(t + '.' + body)>
Content-Type: application/json
{
"event_type": "review.completed",
"delivered_at": "2026-08-25T20:41:00Z",
"review_id": "<uuid>",
"verdict": "PASS" | "REVIEW_OPTIONAL" | "HUMAN_REVIEW_REQUIRED" | "CONTEXT",
"agreements": [...],
"disputes": [...]
}curl https://api.veridu.io/reviews/<uuid> \ -H "Authorization: Bearer $VERIDU_TOKEN"
- Scoped tokens — from /tokens pick
reviews_onlyfor CI — can hit/reviewsbut not billing/team/etc. Limits blast radius on a leaked CI secret. - OpenAPI spec — the machine-readable version of this page lives at api.veridu.io/openapi.json.
- Rate limits — no hard rate limits today (early access). Fair-use kicks in at ~50 review-starts/min sustained; we email first.
Point Claude Code at it
Skip reading this page. Paste this into Claude Code and it handles install + setup + first review:
Install Veridu from https://veridu.io/install and run it against my most recent PR.