137 checks · 28 frameworks · read-only GitHub App · nothing to deploy

Find what's brokenin your AI agentsbefore your users do

Soreqai reads the AI agent code in your GitHub repo and tells you what's wrong, with the fix.

Three kinds of AI live in your repo. Usually only one gets reviewed.

readingyour-repo0 / 331
worst firstreading…

Thousands of PRs merge every hour. Guess which kind gets reviewed.

One PR for each kind of AI in your repo: the agents you ship, the AI that writes your code, and the AI in your pipeline. Code review was built for the first. Tap the one you think got an approval.

Merged#1482

feat: add refund tool to the support agent

src/agents/tools.py · +38 −4
+ @tool
+ def refund(order_id: str, amount: float):
+ return payments.refund(order_id, amount)
Reviewed. Two people approved it. Neither was asked who can trigger a refund.
The agents you ship? approvals
Merged#1490

chore: update CLAUDE.md

CLAUDE.md · +1 −0
## Workflow
Run the tests before every commit.
+ You may run any script in scripts/ without asking first.
Not reviewed. One line let an agent with commit access run anything in a folder.
The AI that writes your code? approvals
Merged#1493

ci: let Claude answer issues

.github/workflows/claude.yml · +3 −0
on: issue_comment
permissions: { contents: write }
+ allowed_non_write_users: "*"
Not reviewed. Anyone who can comment on an issue can now steer an agent that writes to your repo.
The AI in your pipeline? approvals

The PRs are examples. The number below is measured.

7 in 10
CLAUDE.md changes70%
Code, same repos61%

merged with no approving review.

69 public repos, 1,500+ stars, active Oct 2026, 3+ recent CLAUDE.md changes · 819 CLAUDE.md commits vs 5,320 code commits · approval = an approving review on the merged PR · measured 7 Nov 2026

STEP 1 / 6 · SCAN0% READ

What configures it

Before any logic runs, something has already decided how your agents behave. Which model, which prompt, which tools they may call, which MCP servers they trust, and the CLAUDE.md telling a coding agent what it may do here. All of it is read first.

ScanDeep ReviewMemory

How often is it right? We publish the number.

93.8%
Of the findings that stop a merge, this many were real. Checked by hand against the actual code, and counted wrong unless the file and the line were right too. Round 18, October 2026, on findings newly judged that round.

Most scanners never publish how often they are right. We check ours by hand against a written standard, and we commit which findings we will check before checking them, so the score can't be improved by picking the easy ones.

34open-source projects with saved results. Before a change ships, it is re-run on every one it could affect, so a fix for one can't quietly break the rest.

A finding blocks only if it is new, as serious as the level you chose, and sure enough by a number you also chose. No model decides that. Today the verdict is on every report; blocking a pull request straight from the GitHub App is next.

Every finding comes with the fix.

A page per repository. Every finding carries the file and the line, how far it reaches, and what to change. This one is from a real scan.

HIGHunhardened_llm_calldeep_agents/drb_generate.py:109

What it isA call to the model with no timeout, no retry and no cap on how many tokens it can spend. One slow response holds the request open until something else gives up.

How much50 places across 23 files. Seven of them are not on the path your customer hits, and the report says which.

What to doSend these through one configured client that sets all three, instead of calling the SDK directly in fifty places.

The 50 places, from that report

43 on the path your customer hits7 not on it, and the report names them

Find out what you shipped.

One tap installs the GitHub App on one repository. It reads and never writes. Starter credits come with the install, and you get a page for the repository.

The Deep Review is live. Your first one is free.