A Pull Request is opened or updated. GitHub sends a webhook to your ReviewBot server.
The event is validated and a review job is queued via BullMQ.
Claude reads diffs, full file contents, commit history, and past review patterns via MCP tools.
Inline comments appear on the PR with severity tags.
Comments land directly on the specific file and line, exactly like a human reviewer would.
Unhandled exception if token is malformed. Wrap jwt.verify in a try/catch or validate first.
Every comment is tagged CRITICAL, SUGGESTION, or NITPICK. Low-confidence comments are suppressed entirely.
The agent reads files, diffs, commit history, and past reviews.
Past review comments are embedded and stored with pgvector. The bot surfaces historically relevant patterns on every PR.
Resolving a thread increases that pattern's weight. Dismissing lowers it. Review quality improves over 20–30 PRs.
Installs as a GitHub App, works on any org or repo, no personal tokens, no elevated permissions.
Line-level feedback posted directly on the diff. Each comment includes a severity tag and a clear explanation.

A high-level overview posted at the end of the PR. Covers critical issues, suggestions, and an overall assessment.
