AI code review
The code review that knows what AI gets wrong
Most AI code review tools read your pull request and comment on style and logic. Prbl reviews it for the security mistakes AI coding tools make on repeat: the pasted key, the route with no auth check, the query built from user input. Inline on the PR, reproducible, optionally blocking, and with the fix attached.
Why AI-written code needs its own reviewer
When a person writes a hardcoded key into a file, a reviewer catches it because it looks wrong. When an AI tool writes it, the whole file looks right: clean, typed, commented, tested. The mistake is not sloppiness, it is the tool optimising for code that runs, and insecure code runs. So the same small set of flaws ships in polished pull requests, over and over, past reviewers who are reading for logic.
We measured the set. Across 2,148 AI-built repositories, a hardcoded credential was the top high-severity finding in every group. Live, 1 in 18 of 4,740 deployed apps served something private to a logged-out visitor. Those are the things this reviewer looks for.
How it works
The free GitHub Action runs on every push and PR. Two lines in a workflow file plus an API key stored as a secret.
Each issue is an inline comment on the exact line: what it is, why it matters, and the fix. Comments update on every push, so a fixed finding disappears and a new one shows up.
Turn on fail-on-high and a high-severity finding fails the check, so the exposed key or the unauthenticated route cannot merge. Leave it off and it is advisory.
Copy the fix prompt into Cursor or Claude, or let the rewriter open the change, prove the app still behaves the same, and re-scan to confirm.
# .github/workflows/prbl.yml
name: Prbl security review
on: [push, pull_request]
permissions:
contents: read
pull-requests: write
jobs:
prbl:
runs-on: ubuntu-latest
steps:
- uses: Get-Prbl/prbl-action@v1
with:
api-key: ${{ secrets.PRBL_API_KEY }}
# fail-on-high: trueWhat it catches in a pull request
The most common serious finding in AI-generated code by a wide margin. Flagged before it reaches main, where it would be in the history forever.
The tool built the endpoint and the login page and skipped the check between them. This is the top flaw class in AI-built apps in the wild.
SQL by string concatenation, a shell command with request data in it, eval on a parameter, a MongoDB query built from the body.
jwt.decode where jwt.verify was needed. Any token is accepted.
process.env.SECRET || 'changeme' looks like configuration and is a hardcoded secret in production.
rejectUnauthorized: false, verify=False. The fastest way to make an HTTPS error go away and a permanent man-in-the-middle.
Password reset codes and session IDs from a non-cryptographic generator.
The model invented an import. Someone will register that name on the registry, and your install will pull whatever they publish.
The full rule list, mapped to OWASP, is on the SAST page. Each rule links to a fix guide.
Prbl vs general AI code reviewers
CodeRabbit, GitHub Copilot code review, Qodo, Graphite and Greptile are good at what they do. This is the difference, and why teams run both.
| Prbl | LLM code reviewers | |
|---|---|---|
| Reviews for | Security flaws specific to AI-written code | Logic, style, readability, tests, general bugs |
| How it decides | Deterministic rules, manually tuned on real AI-built repos; the same input always gives the same finding | An LLM reads the diff; useful, but opinions vary run to run |
| False positives | Rules carry exclusions for placeholders, fixtures and public-by-design keys | Depends on the model and the prompt; can be chatty |
| Blocking | Optional fail on high severity | Usually advisory |
| After the comment | A fix prompt per finding; the rewriter applies and verifies | Suggestions in the thread |
| Also scans | The live deployed app, and the full repo on demand | The diff |
| Cost | Free Action; paid plans for the rewriter and private repos | Usually per seat |
Frequently asked questions
What is AI code review?
Automated review of a pull request by a tool rather than a person. Most AI code review products point a language model at the diff and let it comment on logic, style and possible bugs. Prbl is the security half of that job: it reviews the diff for the specific vulnerabilities AI coding tools introduce, using rules rather than a model's opinion, and it can block the merge.
Why do you use rules instead of an LLM to review the code?
Because a security finding has to be reproducible. If a reviewer flags an exposed key on Monday and not on Tuesday, nobody trusts it, and a blocked merge has to be defensible. Prbl's rules were built by scanning 2,148 AI-built repositories and manually reviewing what they flagged, so every rule has known exclusions. Where an LLM is genuinely better, applying the fix and checking the app still works, the rewriter uses one.
Does this replace CodeRabbit, Copilot code review or a human reviewer?
No. Those review for whether the code is good; Prbl reviews for whether it is safe in the ways AI-written code tends not to be. Run them together. A human reviewer who no longer has to hunt for pasted keys and missing auth checks can spend the review on design.
Is it free?
The GitHub Action is free for any repo and comments findings on every PR. The free scan on the website needs no account. Paid plans add the rewriter that applies and verifies fixes, private repos on the dashboard, and team features.
What languages does it review?
Python, JavaScript and TypeScript, which is what AI coding tools overwhelmingly generate. Files in other languages are skipped, not marked clean.
What is the rewriter?
For each finding, the rewriter makes the fix in your repo, runs the app against a behavioral baseline captured before the change to prove nothing user-visible broke, and re-scans to confirm the finding is gone. You review the result as a normal diff. It is the part other reviewers stop short of.
Add the Action and the next pull request gets reviewed for the mistakes AI makes. Free, two lines of YAML.
Get the Action →Guides: how to review AI code for security before merge · secure coding rules for AI tools · insecure defaults in AI coding tools · what the rewriter fixed 11 times · secret scanner · website vulnerability scanner