Now reviewing pull requests in production

Every pull request,
reviewed before
it becomes a problem.

Gitvora reads every diff the moment it lands — bugs, security holes, missing tests, risk score — and posts the verdict before a human reviewer even opens the tab. Runs on your own hardware, or ours.

$0 cloud spend on local mode · <90s review on a typical PR · 6 review types out of the box
checkout.js— Gitvora review
41 function total(items) {
42- return items.reduce(sum);
42+ return items.reduce(sum, 0);
43 }
🛡️Gitvora · critical — reduce() had no initial value, throws on an empty cart. Risk score 6.8 → 2.1.

review-types.json

One reviewer, six jobs it never skips.

Every review type ships with its own prompt, its own output schema, and its own escalation rule.

Standard review

Runs on every PR open and update. Bugs, performance, and style — scoped strictly to what's in the diff.

automatic
🔬

Deep review

Full files, not just diffs. Cross-file impact and architecture-pattern checks for the PRs that deserve a slower, harder look.

@gitvora deep review
🛡️

Security scan

Injection, auth gaps, hardcoded secrets, SSRF, XSS — checked against a fixed checklist. Always cloud-tier.

@gitvora security
💬

Explain

Plain-English summary of what a PR does and why it matters, calibrated to junior, senior, or non-technical readers.

@gitvora explain
📊

Risk score

A weighted 0–10 score from lines changed, file sensitivity, security findings, coverage delta, and complexity.

automatic
🧪

Test coverage

Finds the functions nobody tested and writes the missing test in your existing framework's actual style.

@gitvora test coverage

hardware-profile.detect()

Runs on whatever you've already got.

CPU-only, GPU-only, or a hybrid mix — auto-detected on startup, with a manual override if you'd rather decide yourself.

Mode A

Cloud only

No local hardware needed. Every review routes straight to the cloud model.

zero setup
Mode B

CPU-only

Quantized 3B–7B models on commodity hardware. Fast first-pass review, cloud only when it has to escalate.

lowest cost
Mode D · recommended

CPU + GPU hybrid

Partial GPU offload sized to your actual VRAM. The sweet spot between local speed and model quality.

auto-detectedbest balance
Mode D · high-end

GPU-only

Full model offload to a dedicated GPU. Local speed at near-cloud review depth.

fastest local

router.decide(pr)

It only spends cloud money when the diff earns it.

Small, ordinary changes stay on your own hardware. Anything touching payments, auth, or secrets escalates automatically.

Stays local< 200 lines, no sensitive pathsFast model, your hardware, zero marginal cost.
Escalation checkpayment* · auth* · *secret* · *.envPattern match against the sensitive-file list, every time.
Routes to cloud> 400 lines, or any match aboveFrontier model, deeper context, no compromise on the reviews that matter most.
Slack
WhatsApp
Email
Custom webhook

dashboard.render()

Configure it like infrastructure, not a black box.

Routing rules, channel bindings, hardware overrides, and prompt behavior — all editable, versioned, and rollback-able from one screen.

app.gitvora.ai/overview
214
PRs reviewed this week
3.2
avg. risk score
38
findings caught pre-merge
Pull requestRepoRiskVerdict
#412 Refactor checkout flowstorefront6.8warnings
#409 Add retry to webhook handlerpayments-api2.1pass
#405 New invoice export jobbilling8.9blocked

pricing.modes()

Pay for the model you actually need.

Four deployment modes, same six review types. Move between them as your team or your hardware changes.

Mode A

Cloud only

Simplest setup. Every review on the frontier model, billed per use.

Mode B

Mostly local

CPU-only hardware handles routine reviews; cloud only for escalations.

Mode C

CPU-only, full local

Lowest cost ceiling. Best for teams who can tolerate the fast-model tradeoffs.

Mode D

GPU / hybrid

Local speed close to cloud quality. The mode most teams land on.

install.sh

Put a reviewer on every repo that needs one.

Free to self-host on your own hardware. No credit card for local-only mode.