AppScan
Product · Fix with AI

From finding to draft pull request.

The scanner does not need a model to find your problem. You might want one to fix it - so that is exactly where the model is used, with the price shown before it runs.

01The fix

Written against your file.

The patch is generated from the file in your repository - its imports, its helpers, its conventions - and opened as a draft pull request on a branch of its own. A person reads it, runs it and merges it. Nothing is pushed to your default branch.

  • Draft by default

    It arrives as a draft, because a machine-written change deserves a review.

  • Scoped

    One finding, or a group that shares a root cause. Not an unrelated refactor.

  • Explained

    The pull request body says what was wrong and why the change fixes it.

  • Verified next scan

    The rule that raised the finding re-runs on the merge and resolves it.

api/orders/route.ts Fix with AI
 export async function GET(req: Request) {
+ const session = await requireSession(req);
+ if (!session) return unauthorized();
- const orders = await db.$queryRawUnsafe(`SELECT * FROM orders WHERE status = '${status}'`);
+ const orders = await db.order.findMany({
+ where: { status, organizationId: session.orgId },
+ });
 return Response.json(orders);
 }
Draft pull request opened: fix/unguarded-orders-route
58 credits · two findings addressed · re-scanned on your next push
02What AI is used for

11 tasks. Nothing else.

This is the full list. Detection is not on it, because detection is deterministic.

Classify a signal

Sorting a detection into a bucket.

Free
Explain a finding

What it means in your application, not in the abstract.

8
Authorization analysis

Who is allowed to call this route, judged from the code.

14
Ask about a route

One route, one question, answered from the facts on the page.

9
Write llms.txt

A guide to the site for language models, written from the pages the scan read.

11
Plan a refactor

One code improvement, every copy in hand: refactor it, leave it, or decide first.

12
Fix with AI

A plan for the change, written against your file.

16
Fix as a draft pull request

The file rewritten and opened as a draft pull request.

58
Verify a change

A risky push read by a model, over the changed files only.

22
Critical escalation

A second, better model re-judges anything critical.

47
Deep review

The whole application read at once, on the premium tier.

80
03The guards

Six rules between a model and your bill.

An AI feature that cannot be budgeted is a liability, not a feature. These are the controls the gateway applies to every single call.

  • Estimated before it runs

    Each task has a worst-case input and output budget and a per-call money cap. The estimate is reserved from your credits before the first token is generated.

  • Routed by difficulty

    A classification goes to the cheap model. An explanation of a low-severity finding does too. A critical judgement is escalated to a better one - that is the whole rule.

  • Refunded when it fails

    A task that errors or returns nothing usable releases its reservation. You are never charged for an answer you did not get.

  • Capped per site and per organization

    A hard money ceiling stops a runaway regardless of credits, and a reserve is held back so a critical finding can always be escalated.

  • Never on dismissed work

    A finding you marked as accepted risk or false positive does not get explained, judged or fixed again.

  • Never in the background

    There is no ambient AI pass. Every task on your bill was started by a person clicking something.

what a task costscredits
  • Classify a signal
    Sorting a detection into a bucket. The cheap model has never lost this one.
    Free
  • Explain a finding
    What it means in your application, not in the abstract.
    8
  • Authorization analysis
    Who is allowed to call this route, judged from the code.
    14
  • Ask about a route
    One route, one question, answered from the facts on the page.
    9
  • Write llms.txt
    A guide to the site for language models, written from the pages the scan read.
    11
  • Fix with AI
    A plan for the change, written against your file.
    16
  • Fix as a draft pull request
    The file rewritten and opened as a draft pull request.
    58
  • Verify a change
    A risky push read by a model, over the changed files only.
    22
  • Critical escalation
    A second, better model re-judges anything critical.
    47
  • Deep review
    The whole application read at once, on the premium tier.
    80
Scanning the live site is free. Pro includes 1,000 credits per usage window for AI work.
Deep review

Once in a while, read the whole thing.

A deep review takes the facts the scans established - stack, routes, guards, tenancy, data, dependencies - and judges the application as a whole on the premium tier. It costs 80 credits, it is paid for once, and it is kept afterwards so you can read it again without paying twice.

Try it on a finding you already have.

Run the free scan first. If something comes back, connect the repository and let it open the fix as a pull request.