multi-agent PR review Β· LangGraph + Groq

Every pull request,
reviewed before your coffee cools.

Two AI agents read your diff at the same time: one for bugs and code quality, one hunting vulnerabilities and leaked secrets. Then one clear comment lands on the PR, updated in place on every push.

↳ dry run Β· nothing is posted to GitHub Β· any public repo

// how it works

A graph, not a chain.

Built as a stateful LangGraph. The review and security agents run in the same superstep, so you wait for the slower one, not both added together.

01Abort early. PR can't be fetched? The graph routes straight to the end: zero tokens burned on an empty diff.
02Fan out. Quality review and vulnerability hunting run concurrently, plus a regex sweep for leaked keys the LLM might miss.
03Code decides. The LLM finds problems; deterministic rules set the verdict. A critical finding always means changes requested.
04One comment. A hidden marker lets the bot edit its previous review, so 20 pushes leave exactly one review, always current.
// features

Built like infrastructure, not a demo.

⚑

Parallel agents

Review and security scanning share one superstep. Roughly half the wall-clock of a sequential chain.

πŸ›‘οΈ

Defence in depth

A deterministic secret scanner runs alongside the LLM. An obvious leaked key is caught even if the model misses it.

βš–οΈ

Deterministic verdicts

The model reports findings; code decides approve vs. request changes. No verdicts by vibes.

🩹

Fail-soft

Lose a node and you still get a review, flagged partial with the error disclosed. Never a silent crash.

πŸ”

Idempotent comments

Ten commits, one comment, edited in place. Your PR timeline stays readable.

🎯

Smart diff budgeting

Lockfiles, bundles and binaries are stripped, and what's omitted is named, so the model knows what it didn't see.

πŸ”’

Verified webhooks

HMAC-SHA256 signatures, draft filtering and background execution. GitHub never waits on an LLM.

πŸ”Œ

Three entry points

GitHub webhook, REST API or CLI. Same graph behind all of them.

// install

On your repos in three steps.

Self-hosted, your keys, your infrastructure. Runs anywhere a container runs.

1

Deploy

One click on Render, or run the container yourself.

Deploy to Render β†—
docker run -p 8000:8000 \
  -e GROQ_API_KEY=gsk_… \
  -e GITHUB_TOKEN=ghp_… \
  codeinspector-ai
2

Add a webhook

Repo β†’ Settings β†’ Webhooks. Send Pull requests events.

Payload URL   https://<host>/webhook
Content type  application/json
Secret        $GITHUB_WEBHOOK_SECRET
Events        Pull requests
3

Open a PR

A review lands in about a minute, and every push updates the same comment.

git checkout -b feature/thing
git push -u origin HEAD
# πŸ” CodeInspectorAI is on it

Stop reviewing the same eval() twice.

Paste a PR and watch the agents work.

Try it on a PR β†’