Skip to content

AI security scans for your repositories

Find the weak spots in your code before an attacker does.

Kelrova reads your whole project the way a security reviewer does, proves every finding with evidence and opens the fix as a pull request.

A drawing of the Kelrova app on a sample project, northwind/payments-api. A Standard scan has reported five new findings; the Findings list shows them by severity, with the critical one, “Refund endpoint trusts the client's amount” in src/routes/refunds.ts, open in the preview pane beside the list: what is happening, an example attack scenario, how to fix it, and Go Fix.

A scan on a sample project, from start to schedule.

Why it finds more

Rules check files: attackers chain them.

Pattern matching flags what looks familiar in one file. The flaws that cost money sit between files: a check in one place, a gap in another. Kelrova's AI security scans follow each request from where it comes in to where its data ends up, and report only what they can back with evidence.

File by file

  1. src/routes/invoices.ts:18Passes alone
    router.get("/invoices/:id/pdf", requireUser, download);

    Behind requireUser, so it looks protected.

  2. src/auth/require-user.ts:12Passes alone
    if (!req.session.userId) return res.sendStatus(401);

    Turns away anyone who is not signed in. Correct.

  3. src/services/invoices.ts:30Passes alone
    return db.invoice.findUnique({ where: { id } });

    A plain lookup by id. Nothing unusual.

Read together

Critical

Any signed-in customer can download another customer's invoices

The route trusts requireUser, which only checks that someone is signed in, and the lookup never asks whose invoice it is. Change the id in the URL and any invoice downloads.

src/routes/invoices.ts:43

Reported with the file, the line and the code that proves it.

The scan

It starts with the whole project: read like an attacker.

Kelrova is an AI security scanner that reads your code the way a security reviewer does. Pick how much it reviews, from the files that changed to the whole project. On Pro and above, Adversary scans take an attacker's point of view and report every step an attack would take.

A drawing of the New scan dialog's levels: Quick, Focused, Standard (the default, selected), Extended and Full with their depth meters, then Adversary, Pro and above.

Choose the depth

Quick for changed files. Full for the whole project. Adversary for attack paths.

A drawing of an Adversary scan running on a sample project: 38 attack paths reviewed, 4 deferred, 6 candidates, 2 confirmed findings.

Read like an attacker

The paths an attacker would try, checked one by one.

A drawing of an Adversary finding: “Any signed-in user can trigger refunds for another tenant”, critical, affects all users, with its attack path in three steps: src/routes/refunds.ts:142, refund request accepts any amount from the client; src/auth/tenant.ts:57, tenant check reads the tenant id from the request header; src/jobs/payouts.ts:88, payout job pays the refund without a second check.

Every step on record

Where it starts, what it passes through and who it reaches.

See the scan levels

Findings

Every finding comes with proof: the file, the line and the code.

Findings arrive riskiest first. Each one, from broken access control or an injection to a leaked secret, names the file and line, shows the code behind it and keeps its status on record.

A drawing of a project's findings, most severe first: Any signed-in customer can download another customer's invoices; Live payment API key committed in config/prod.ts; Avatar import fetches any URL, internal hosts included; Search filter concatenated into SQL; Session cookie set without Secure in production.

Severity first

Critical to low, the riskiest on top. Filter by severity or kind.

A drawing of the evidence for “Any signed-in customer can download another customer's invoices”: five lines of src/routes/invoices.ts with line 43 marked, where the invoice is loaded by the id in the URL; entry point GET /invoices/:id/pdf, high confidence.

Evidence included

The file, the line and the code behind every finding.

A drawing of three closed findings: Webhook signature compared with ==, fixed (Re-check confirmed on main); Verbose error body leaks stack traces, accepted risk (Internal admin API, behind the VPN); Unbounded page size on /invoices, false positive (The gateway caps page size at 100).

Status on record

Fixed, accepted risk or false positive, with who decided and why.

See a finding

Fixes

Fix it your way: a pull request or your own agent.

Go Fix, the button on every finding, opens an AI-assisted fix as a draft pull request on GitHub, GitLab or Bitbucket, and your merge gates can review it. Or connect your AI coding agent, such as Claude Code, Cursor, Codex or VS Code, to Kelrova's MCP server and fix findings in your own checkout.

A drawing of Go Fix's draft pull request #418, “Refund at most the captured amount”: three lines added and one removed in src/routes/refunds.ts, linked back to the finding.

Fix it now

A draft pull request with the fix, linked to its finding.

A drawing of a Claude Code session using Kelrova's MCP tools (list_projects, get_finding, report_finding_action, request_recheck) to fix the refund finding, report it fixed and ask for a re-check.

Your agent, your checkout

List, read, fix and report back over MCP. Kelrova then checks the fix again.

A drawing of the finding's Activity: draft PR #418 opened, merge gates 2 of 2 passed, then a re-check: fixed, confirmed on main.

Checked twice

Your merge gates review the fix, then a re-check confirms it on the code that shipped.

See how fixes work

Schedule

Then it keeps watching: every run compared with the last.

Scan daily, weekly or every two weeks. Each run is compared with the one before, so what is new stands out, and a finding is checked again once its fix is merged.

A drawing of a schedule for northwind/payments-api: Standard, weekly, first run Mon 09:00, switched on.

Set it once

Daily, weekly or every two weeks, from a first run you pick.

A drawing of four weekly scans, newest first: no new findings, one new high finding, then no new findings twice.

Quiet weeks

Most runs bring nothing new, and the one that does stands out.

A drawing of this week's run compared with last week's: 1 new, 4 known, 2 resolved.

Known, not new

Each run keeps count of what is new, what is known and what was resolved.

Start with a scan

Your code

Your code: read for the scan, not for training.

An AI security scan has to read your code. Here is what it reads, what it can change and what is left when it is done.

  • Only what you link

    Scans read only the repositories a member links, on the branch and folder you pick. Paths you exclude stay out.

  • Read-only unless you ask

    Kelrova changes code only through a pull request that a member asks it to open.

  • Deleted when the scan ends

    Each scan works on a copy of the code in an isolated environment, removed when it finishes. Findings keep only the lines they cite.

  • Not used to train models

    The model providers that run the analysis receive code under API terms that rule out training, and keep it at most 30 days to monitor abuse.

Where your code goesPrivacy policy

Plans: one flat price a month, no seat fees.

Each plan includes its price in usage. Upgrades are prorated and downgrades apply at renewal.

  • Basic

    14-day trial

    $20per month

    Includes $20 of usage

    For one person or a team of up to three.

    Members
    3
    Model tiers
    Fast, Balanced
    Adversary scans
    Unlocks with Pro
  • Go

    $100per month

    Includes $100 of usage

    For a whole team, with no limit on members.

    Members
    Unlimited
    Model tiers
    Fast, Balanced
    Adversary scans
    Unlocks with Pro
  • Pro

    $300per month

    Includes $300 of usage

    Adds Best, the most careful review, and Adversary attack-path scans.

    Members
    Unlimited
    Model tiers
    Fast, Balanced, Best
    Adversary scans
    Included
  • Max

    $1,000per month

    Includes $1,000 of usage

    For teams that run many scans a month.

    Members
    Unlimited
    Model tiers
    Fast, Balanced, Best
    Adversary scans
    Included

Every plan includes the five scan levels, scheduled scans, Go Fix pull requests and the MCP server.

Compare plans

Kelrova Studio

Also from Kelrova: a free app for your coding agents.

Run agents from different providers as one Orchestra, on your Mac or your own server, and let your chats work together.

  • Claude Code
  • Codex
  • Grok
  • Devin
  • Cursor
See Studio

Start with a scan: a 14-day Basic trial on your first organization.