Reads your code.Flags the risk.Shows the line.
Bishop reads every pull request on the repository you pick and comments with possible security holes and lawsuit risks, each with the file and line. During this beta, findings are unproven candidates for you to check, and Bishop doesn't open pull requests. Log and live-site monitoring are coming next.
Free for one repo during the beta.
- security precision · 6 of 7 on Juice Shop
- ~86%security precision · 6 of 7 on Juice Shop
- files we didn't write
- 1,300files we didn't write
Measured on OWASP Juice Shop — real code neither of us wrote, including its flagship login SQL injection.
- const STRIPE_SECRET_KEY = "sk_live_****3f2a";+ const STRIPE_SECRET_KEY = process.env.STRIPE_SECRET_KEY;
Benchmark on third-party code
Run on OWASP Juice Shop — 1,300 files neither of us wrote.
The full breakdown behind the number in the hero: Bishop run on a real app neither of us wrote, every finding hand-adjudicated, reported by category and never blended into one score.
Security detection
~86%
precision · R2 / R3 / R5 / R7
Caught the flagship login SQL injection, plus search SQLi, CSRF, and insecure auth cookies.
6 of 7 flagged were real; the one false positive was a route that already presence-checks its input.
Repeatability
100%
identical · R2, R3, R5, R7 · 3 fresh runs
In three fresh runs on the same commit, the rules reported here (R2, R3, R5, R7) returned identical findings.
Rules and parsers decide most findings; a language model makes the call for some possible SQL injection and unescaped HTML. Key candidates (R4) varied between those runs; they have since moved to fixed rules but haven't been re-measured.
Accessibility labels
38% → 88%
precision · L5
Label detection started at ~38%. Teaching it Angular Material's mat-label took it to ~88%.
We tune for the frameworks real apps use — and we tell you what we don't cover yet.
models.sequelize.query(`SELECT * FROM Users WHERE email = '${req.body.email}' ...`, { model: UserModel })
What we don't catch yet: Angular [innerHTML] template bindings, and a headless-Angular exploit harness — until it exists, an Angular XSS finding is reported as an advisory.
Every finding comes with the file and line. You decide what to fix.
What each finding gives you
Evidence on every finding
Each finding names the file and line and explains in plain language why it was flagged.
What to check
Each finding says what to check by hand. During the beta, findings are unproven candidates.
Past push protection
It reads git history and high-entropy strings, catches the key push protection missed, and always says rotate.
Nothing pushed
Bishop reads your code and comments on pull requests. During the beta it doesn't open pull requests or push to your repository.
From install to first comment in three steps
- 01
Connect a repo
Install the GitHub App and pick a repository in Bishop. It reads your code and git history.
- 02
It reads each pull request
Rules and parsers look for possible security holes and lawsuit-risk patterns. For some candidates, a language model makes the call.
- 03
It comments with what it found
A comment on the pull request with the file and line for each finding. You decide what to fix.
From the demo repo
Everything below is real, from Bishop's public demo repo — masked exactly as Bishop posted it. Fix pull requests like the one below are off during the beta.
Exposed Stripe secret key
server/config.js:2
-export const STRIPE_SECRET_KEY = "sk_live_****yqDv";+export const STRIPE_SECRET_KEY = process.env.STRIPE_SECRET_KEY;
Regression test
✗ before — not ok 1 - server/config.js reads STRIPE_SECRET_KEY from the environment, not a literal
✓ after — the app still boots {"booted":true,"status":200}
Rotate the key. This key already leaked — rotate it in the Stripe dashboard. Moving it to env does not un-leak it.
Exposed Resend API key
server/mailer.js:2
no verified patch after 2 attempt(s): env → the app's own tests fail on the patched code; env-fail-fast → the app's own tests fail on the patched code
Caught the key push protection missed
GitHub blocked the Stripe key on push. The openai project key (sk-proj-****8FW6) slipped through and stayed in history — Bishop read the history and flagged it, with a rotate warning.
Plus the advisories it could not turn into a fix, reported without a PR. See the demo repo
What Bishop does during the beta
- Reads every pull request on the repository you pick.
- Flags possible security holes and lawsuit-risk patterns — each with the file and line.
- Explains each one in plain language — with what to check by hand.
- Findings are unproven candidates — during the beta Bishop runs no exploits and opens no pull requests.
One free repository during the beta.
Free
Free
One repository during the beta.
- 1 repository per GitHub installation
- Findings on each pull request, with the file and line
- A plain-language reason and what to check by hand
- Reads git history for leaked keys and says to rotate them
Paid plans are not available yet, and none can be bought during the beta.
The honest answers
Does Bishop merge code for me?
No. During this beta Bishop doesn't open pull requests, merge or push to your repository. It reads your code and comments on your pull requests.
Does Bishop fix the problems it finds?
Not during this beta. It reports each finding with the file and line, a plain-language reason and what to check by hand. Findings are unproven candidates, and automatic fixes are off.
Does an AI decide what counts as a finding?
Partly. Rules and parsers decide most findings. For some possible SQL injection and unescaped HTML, a language model makes the call on a short excerpt of the code, with detected keys masked, as described on the Privacy page.
What access does it need?
Read code and git history, write pull request comments, and create branches under sentinel/fix-* (not used during the beta). It cannot push to your default branch, merge, or touch issues, settings, secrets, or Actions.
A secret leaked. Does moving it to an environment variable un-leak it?
No. Moving a key to an environment variable stops it being in the code, but a committed key is already public in history. Bishop always tells you to rotate it.
Is the lawsuit-risk check legal advice?
No. It flags known risk patterns, such as personal data sent to a third party your privacy policy does not name. It is not legal advice and never says your app is safe.
How is my code handled?
Each scan uses a GitHub token limited to that one repository, and the token isn't stored. Keys Bishop detects are masked before anything is posted or sent to the language model. The Privacy page lists what is kept and who processes it.
What does it cost?
Bishop is free for one repository during the beta. Paid plans are not available yet, and none can be bought during the beta.
When can I use runtime monitoring?
Not during this beta. Log and live-site monitoring aren't part of it yet.
Put a second reader
on your repo.
Bishop reads your pull requests and comments with possible security holes and lawsuit risks, each with the file and line. You decide what to fix.
Free for one repo. During this beta Bishop doesn't open pull requests or push to your repository.