PRGuard

Code governance for the AI era

You can’t standardise every developer’s AI. You can govern what ships.

Write your standards in plain language. PRGuard enforces them on every code change — with a complete audit trail of every decision.

Code changes arrive

From your developers — and their AI agents.

agent/refactor-auth +128 −41
j.tan/hotfix-cache +22 −6
dependabot/bump-stripe-sdk +302 −287

PRGuard enforces your standards

Written by your team, in plain language.

PRGuard · standards check
“No secrets or credentials in diffs” ✓ pass
“New endpoints require rate limiting” ✓ pass
“Migrations must be reversible” ✕ fail

AI fix drafted — merge held until your team approves

- ALTER TABLE user_sessions DROP COLUMN legacy_token;+ ALTER TABLE user_sessions RENAME COLUMN legacy_token    TO legacy_token_deprecated;

Merged with confidence

Every decision recorded in the audit trail.

agent/refactor-auth

fix approved by your team, merged

j.tan/hotfix-cache

fix approved by your team, merged

dependabot/bump-stripe-sdk

merged

audit trail

9 rules checked · 2 fixes approved · 3 merges

Seamless GitHub Workflow

PRGuard runs silently in the background — on pull requests, pushes, or both — posting inline comments and fixes directly where your team already works.

AI-Native Security

PRGuard catches the AI-era threats traditional scanners can’t — hidden prompt injections and semantic flaws that pattern-matching alone won’t catch. Every change is screened for hidden instructions before the AI reviewer reads it. How the screen works →

Tailored to Your Codebase

Reviews and proposed fixes aren’t generic — they are grounded in your code and your custom governance rules.

End Code Review Debates

Your standards are applied uniformly and objectively to every change — set them organisation-wide for everyone, or per repository where a team needs its own.

Effortless Compliance

Every flagged issue, fix, and approval is logged in records that can’t be altered after the fact — evidence you can hand straight to SOC 2 and security auditors. See the compliance view →

Hotfix: cache session store #483

Open

j.tan/hotfix-cache wants to merge 2 commits into main

j.tan pushed a3f92c1 · updated session store
PRGuard / audit — 1 error found Required
PRGuard bot reviewed 2 min ago
Session tokens are written to the debug log on line 214 — this violates “Never log secrets or session tokens”. I’ve drafted a fix that hashes the token before logging — review and approve it here, or open it in the audit trail.
Approve fix View in audit trail
m.keller approved the fix · ✓ re-audited, all standards passing

Recorded for this pull request

Audit trail — every finding, fix and approval
AI transcript — every step the model took
Rule trace — which of your rules ran, at which version
See what’s recorded →

See it run

One Vision. Every Commit.

Stop relying on memory and manual reviews. Unite engineering, security, and product around a single set of rules — enforced at the gate, on every PR and push.

Scenario: A developer opens a PR to add Stripe payments — and PRGuard checks it against the team’s standards, line by line. Each role’s rules run in turn below — or click any role to jump to what it catches.

PRGuard

Add Stripe Webhook Handler

25
Verdict
Fail
Type
Pull Request
Repository
payments
Author
j.doe
Analysis Provider
Gemini

Summary

This pull request introduces five error-level violations across security, compliance, architecture, and reliability — including unverified webhook input, card data written to logs, and a missing idempotency guard — plus two warnings on customer notification and test coverage. It should not merge until the error-level findings are resolved.

Findings

7 First finding shown expanded — click any to open
Service layer violation Architect

Direct database write bypasses the service layer. All mutations must go through PaymentService.

Webhook signature not verified Security

Stripe payload processed without verifying the Stripe-Signature header. Any caller can trigger payment events.

Full PAN written to logs Compliance

Full card number (PAN) written to logs in plain text. PCI-DSS v4.0 requires the PAN to be unreadable anywhere it is stored — including application logs.

Raw exception in 400 response AppSec

Exception message returned verbatim in the HTTP 400 body — leaks internal stack details to potential attackers.

No idempotency key SRE

No duplicate event check. Stripe retries on timeout — without idempotency this will double-charge customers.

Payment confirmation not sent Product

Charge recorded but no receipt email dispatched. Per spec, every successful payment must trigger a confirmation.

No test coverage QA

0% test coverage on this file. Team standard requires tests for all payment code paths before merge.

Language-agnostic

Works With Every Language in Your Stack.

You shouldn’t need a different tool for every language in your codebase. PRGuard reviews the change itself — the diff, judged against your written standards, not a language-specific grammar. One rule written in plain language covers your modern Python services, your legacy PHP monolith, and everything in between.

Ten public demo repositories with real PRGuard findings — the same rules work in any language.

Why a governance layer

More Than a Reviewer.

As AI writes more of your code, leaving automated comments isn’t enough. You need a way to govern what actually ships.

A reviewer offers an opinion. A governance layer enforces your standards, keeps a person in the decision, and leaves evidence behind.

Compare

Where PRGuard Fits.

PRGuard is designed to sit alongside your existing tools, not replace them. It enforces your team’s unique business logic, security rules, and house style — all written in plain language.

Here’s the honest comparison with the tools you may already run.

Capability comparison: PRGuard vs SonarQube, Semgrep, and CodeRabbit
Capability PRGuard Deterministic pre-scan + your written standards, enforced SonarQube Rule catalog & quality gates Semgrep Code patterns authored in YAML CodeRabbit AI feedback on each PR
Enforces standards you write in plain language
Judges the diff semantically, in any language
Verdict that can block a merge
Drafts fixes your team reviews & approves partial partial partial
Coverage & duplication metrics
Screens the diff for prompt injection first
Audit trail of every decision, with the AI’s reasoning

Compiled from each vendor’s public documentation, last reviewed September 2026. These tools ship continuously, so capabilities may have changed since — if anything here is out of date, tell us and we’ll fix it.

vs SonarQube

SonarQube is the spell-checker.

PRGuard is the editor.

Rules you write in plain language, not rules you pick from a catalog. Sonar’s analysis is deterministic where an LLM isn’t — a real trade-off, and why its coverage and duplication metrics are worth keeping. What a catalog can’t do is judge whether a change fits the way your team decided to build things.

Better together

Sonar keeps the deterministic floor; PRGuard enforces the standards only your team could write.

Read the full comparison →

vs Semgrep

Semgrep is grep with a grammar.

PRGuard is a reviewer with your rulebook.

Patterns require configuration. PRGuard just requires a sentence. Semgrep is fast and precise where a rule genuinely is a pattern, and it drafts fixes of its own now. But each pattern is authored per language — one PRGuard sentence covers your whole stack, including the standards no pattern can express.

Better together

Patterns for the checks that truly are patterns; sentences for the standards that aren’t.

Read the full comparison →

vs CodeRabbit

CodeRabbit gives you a review.

PRGuard gives you the record.

Both can block a merge. Only PRGuard screens the diff for injection first and keeps the model’s own reasoning on the record. CodeRabbit clones your repository to build its index; PRGuard never does — it reads the diff, and only the files your rules point at, from the branch you’re merging into. It also bills per developer seat where PRGuard bills usage, so adding reviewers costs nothing.

Better together

Let the assistant polish the code; PRGuard proves the standard was enforced.

Read the full comparison →

For open source

A security checkpoint for inbound contributions.

AI-generated PRs can look plausible while carrying hidden prompt injection. PRGuard screens every diff for manipulation, then audits it against your contribution standards — comment-only or full merge gating, chosen per repository.

See how it works →

For compliance

Turn every code review into audit-ready evidence.

Every finding, fix, and approval lands in an append-only record — the trail you hand to a security or SOC 2 review.

Read more →

Governance

Govern Every PR and Push.

Maintain complete control over your codebase without slowing down development. PRGuard automatically reviews, drafts fixes on request, and logs every action — keeping your team moving fast and your auditors happy.

Every approved fix is re-audited — and every step is logged.

01

The Scan

A developer or an AI agent submits code. PRGuard runs its deterministic pre-scan, then checks the change against your custom plain-language rules.

02

The Fix

If a standard is broken, you get more than an error. Ask PRGuard to fix it and, where the solution is clear, it drafts a patch to approve. Where judgement is needed, you get the rule, the reason, and a ready-to-paste prompt for your own AI assistant.

03

The Human Verdict

A human on your team reviews and approves the fix. Findings can also be assigned — to a teammate or to PRGuard’s AI — and tracked from open to fixed, or recorded as won’t-fix with the reason. You always retain final control; PRGuard never merges on its own.

AI cost optimisation

The same gate, a smaller AI bill.

The status check that gates your merges can gate your spending too. Already paying for premium AI reviewers or coding agents? Make PRGuard a required check and they only run on changes that already meet your standards — so you stop paying a premium model to review code that was never going to merge.

Your own engineering standards decide what passes.

GitHub pull request or push
PRGuard audits the code changes Fast first pass · Your rules

Premium AI

Your existing reviewer or agent

Blocked

Your premium AI never runs · No tokens spent

AI-Assisted Remediation

Where the AI Can Fix It, PRGuard Drafts the Patch.

Not every finding can be auto-fixed — and PRGuard never pretends otherwise.
But when the solution is clear, PRGuard drafts the exact code patch for your team to approve.

01

Spot the Issue

PRGuard pinpoints the exact file and line of code breaking your rules.

Webhook signature not verified

billing/webhooks.py · line 14 · Security

02

Draft the Patch

Ask PRGuard to fix it and it drafts the patch. On a pull request the fix lands on that PR’s own branch; on a direct push it opens a fix PR of its own. A human always has the final say before anything merges — and admins can make that mandatory across the whole org.

fix: verify webhook signature before processing

Pushed · j.doe/add-stripe-webhook · prguard-dev-app[bot]

+8 -2 billing/webhooks.py
03

Verify the Fix

PRGuard automatically re-audits the fix branch to confirm the finding is resolved, so you can merge with confidence.

PRGuard / audit — passing

0 errors · 0 warnings · All findings resolved

billing/webhooks.py
@csrf_exemptdef stripe_webhook(request):    # Stripe POSTs a signed event on every billing change    payload = request.body    # no signature check — anyone can POST a forged event    event = json.loads(payload)    # Hand the event to the right service    if event["type"] == "invoice.paid":        handle_payment(event["data"]["object"])    return HttpResponse(status=200)
Exact patch generated from your unique rules — not a generic suggestion.

Batch remediation

Many fixes, one clean PR.

Don’t overwhelm your team with notifications. Select multiple findings at once and PRGuard bundles them into a single, clean pull request. It tries one combined rewrite first — far fewer model calls than fixing them one at a time — and falls back to applying each fix in sequence if that doesn’t hold the file’s score. Either way the batch is re-audited before the PR opens, to confirm the score improved rather than regressed.

Findings · billing/webhooks.py

3 selected

Webhook signature not verified
Raw exception in 400 response
No idempotency key
one combined rewrite, re-audited as a batch

fix: resolve 3 governance findings

Open · prguard/batch-fixes · prguard-dev-app[bot]

+21 -6 ✓ score improved

Automatic escalation

Escalation, on your terms.

Your primary model gets three attempts to land a patch that holds the file’s score. If it can’t, PRGuard makes one rescue pass with an escalation model you nominate — even one from a different provider — then reports back instead of forcing anything. Security fixes are the exception: they are never dropped just to protect a score.

Checks · fix-webhook-signature

Attempts 1–3 · primary model

Score gate not met

38s

Rescue pass · escalation model your pick

Clean patch · all findings resolved

41s

One rescue pass only — then PRGuard reports back instead of forcing anything.

Context Studio

Your Standards, Your Language.

Write your team’s rules in plain language. No special syntax, no complicated configuration files. Start from our industry-standard templates or write your own.

Context Studio

Manage the context files that define how your AI agents think and behave.

Context Files 9 files
Payments

Architect

service-layer.md

Security

owasp-top10.md

Compliance

pci-dss.md

AppSec

error-handling.md

SRE

idempotency.md

Product

payment-flows.md

QA

test-standards.md
change-validation.md

SysAdmin

network-addressing.md
security/owasp-top10.md v1

OWASP Top 10 Security Review

You MUST review every pull request for the following OWASP Top 10 risks:

Injection

Flag SQL, NoSQL, OS, or LDAP injection. Require parameterised queries.

Broken Authentication

Reject hardcoded credentials, weak session management, or missing MFA enforcement.

Sensitive Data Exposure

Ensure secrets, tokens, and PII are never committed. Require encryption at rest and in transit.

Broken Access Control

Verify authorisation checks on every endpoint. No direct object references without ownership validation.

Cross-Site Scripting (XSS)

Require output encoding. Flag innerHTML or dangerouslySetInnerHTML without sanitisation.

Insecure Deserialisation

Flag pickle.loads, yaml.load, or unserialize on untrusted input.

You NEVER approve a PR that introduces any of these risks without a documented mitigation plan.

Details

File Info

Version v1
Source Manual
Scan Scan passed
Scope Payments
Size 2.4k / 50k chars
Updated 4 Apr 2026
Edited by J. Doe

Recent Activity

Last edited 4 Apr 2026
Version v1

Deep-Context Retrieval

Tailored to Your Real Code.

PRGuard doesn’t make generic guesses. When a rule points at a file with @ref:, PRGuard fetches it from the PR’s target branch — so a pull request can never author the context it’s judged against — and condenses it to a compact skeleton: its public API, types, and key patterns, not the whole file.

The audit reasons against your actual interfaces, and the fixes it proposes call them correctly — for a fraction of the tokens the whole file would have cost.

finance/discounts.md

Discounts over 20% must go through the approval workflow — @ref:billing/discount_policy.py

fetched & condensed to a skeleton
discount_policy.py · skeleton
# condensed to its public surfaceclass DiscountPolicy:    APPROVAL_THRESHOLD = Decimal("0.20")    def requires_approval(pct: Decimal) -> bool    def approve(discount: Discount, approver: User)

Insights

Ask Your Audit History.

Stop digging through commit logs or interrupting your developers. Ask “What changed in the payments module this month?” and get a plain-language answer — with citations that link to the exact audit records.

Insights

What changed in the payments module in the last 30 days?

PRGuard Insights Searching audit history Searched 31 audits · 4 tool calls

Three pull requests touched payments/ in the query window. The retry handler was rewritten and passed its audit [1]; a webhook change shipped with one warning about missing idempotency checks, fixed two days later by an auto-fix PR [2]; a refund-flow change is still carrying an open error-severity finding [3].

Sources: [1] PR #142 · [2] PR #147 · [3] PR #151 — each links to its full audit record.

Illustrative example — answers draw only on what PRGuard has audited, and every citation links to a real audit record.

Skip the Digging

Every audited change records the files it touched and who shipped it — so “who has been changing our auth code?” is a question, not an afternoon of git archaeology.

Clear Launch Decisions

Every finding carries its fix status, so answers cleanly separate “already fixed” from “still open” — exactly what a product or engineering manager needs to call a release.

Evidence, Not Vibes

Every claim traces back to an audit record. If the history doesn't cover something, the answer says so instead of guessing.

Included with the Pro, Pro Team and Enterprise plans — and included in the $10 trial, so you can try it before choosing a plan.
Answers cover what PRGuard has audited on your connected repositories, from the day you install it — your history builds as it runs.

Evidence

The AI Review You Can Actually Verify.

When an AI blocks a code change, the first question is “says who?” Most AI review answers with “trust us”. PRGuard answers with the record: the full conversation behind every audit, and a rule-by-rule account of what was enforced.

The transcript 5 steps recorded
1 Gatekeeper ✓ The screen found no injection attempts.
2 Detect round 1 of 2 ✓ Flagged 2 potential violations to verify.
3 Detect round 2 of 2 ✓ Nothing new found — the loop is done.
4 Evidence Check ✓ Each finding grounded in an explicit rule.
5 Summary ✓ Wrote the audit’s overall summary.

Illustrative excerpt

Stop arguing with a robot. Every step the AI took is on the record, in order, in plain language — each with its outcome stated, and the model’s own reasoning wherever it produced any. The one exception is the prompt-injection screen: it reports its verdict but not its reasoning, because publishing how it decides would be a guide to evading it.

The rule trace 5 of 7 shown
service-layer.md · v1 In force
owasp-top10.md · v1 In force
pci-dss.md · v1 In force
error-handling.md · v1 In force
network-addressing.md · v1 Set aside

Illustrative excerpt

Proof the standards you wrote are the standards being enforced. Which of your rules were in force — at the exact version that ran, one click away — which were set aside and why, and what PRGuard’s deterministic checks flagged. Every violation the AI claims is cross-checked against the findings actually raised, so you always know which statements are record and which are the model’s word.

Your code is never kept.

PRGuard never keeps your source code. The record holds only names, sizes and fingerprints, and links back to GitHub for the content — where your own repository permissions decide who may read it.

The AI’s reasoning is shown for what it is: the model’s own narration, labelled as such — never presented as proof of how an answer was reached.

Explore the evidence record →

Roles

Built for Every Role.

Whether you're shipping code, securing it, or accountable for it — PRGuard fits your workflow.

Workflow

From Finding to Fix.

PRGuard doesn’t just dump a list of errors on your team. Every finding is a structured record — and everything your team sees is a view of it.

01

Pinpoint the Problem

The exact file, line, and broken rule — file, line, severity in the record.

02

Delegate with Context

Assign it to a teammate or to PRGuard’s AI — the suggestion travels with the assignment, tracked from open to fixed.

03

Instant Fix Instructions

The ai_prompt is a copy-paste instruction for Copilot or Cursor — no interpretation, no guessing.

The same bundle PRGuard’s auto-fix runs on.

remediation.prguard.json
{
  "schema": "prguard.remediation/v1",
  "verdict": "FAIL",
  "findings": [
    {
      "file": "billing/webhooks.py",  ← 01
      "line": 14,
      "severity": "ERROR",
      "rule": "signature-verification",
      "suggestion": "Verify the Stripe-Signature before processing",  ← 02
      "ai_prompt": "Edit billing/webhooks.py line 14: verify the
Stripe-Signature header with
stripe.Webhook.construct_event() before processing"
, ← 03 "fix_kind": "patch" } ] }
ai_prompt · ready for your assistant

Safety & Control

You Stay in Control. Always.

AI-assisted fixes are a tool and not a takeover. The AI is screened for manipulation, a person triggers every change, and nothing lands without your say-so — these guardrails are baked in, not optional settings.

01

Prompt-injection screening

Before the AI reviews a single line, a gatekeeper pass screens every change for prompt-injection attempts — so malicious instructions hidden in a diff can’t hijack the audit. How the screen works →

02

A person triggers every fix

PRGuard doesn’t run wild fixing things on its own. A developer assigns each finding to the AI by hand — it only acts when a human on your team explicitly asks it to.

03

On by default, yours to switch off

Auto-fix is enabled on every repository out of the box. An owner or admin can switch it off per repo at any time — your cost control. While it’s on, any developer can hand a finding to the AI, since they’re the one reviewing the result.

04

You decide what merges

Fixes land as a reviewable pull request by default — you read the diff and merge on your terms. Org admins can make PR-only delivery a hard rule, so “a human approves every fix” is policy, not preference.

05

Conflicts skipped, never forced

If a patch can’t apply cleanly — the file moved, a conflict exists, or the diff is ambiguous — PRGuard skips that finding and reports it for human review. No force-push, no guesswork.

06

Every decision logged

Every finding, decision, and fix is permanently recorded and attributable. No software alone makes you SOC 2 compliant — but this is the audit trail you hand your assessor to show your standards were enforced.

Pricing

Simple, Transparent Pricing.

No hidden fees, no surprise API bills. Pick your plan and your model, and spending stops at your credit allowance unless you choose to top up. Every token and credit is logged — just the price you signed up for.

Unused top-up credits always roll over Choose your LLM model to control cost per audit Track every credit and AI action directly in your dashboard

Prices in US dollars, billed by Stripe. Built in North Wales by Unifi Software Development Ltd, a UK-registered company. Prefer a 15-minute walkthrough first? Email us →

Trial

$10 activation

2,000 AI credits included

Platform access

  • Up to 3 repositories
  • Up to 5 seats
  • Standard processing
  • Context Studio
  • Insights — ask your audit history
  • GitHub integration
Get started

Starter

$30 / month

2,250 AI credits / month

Platform access

  • Up to 3 repositories
  • Up to 5 seats
  • Priority processing
  • Context Studio
  • GitHub integration
Get started

Pro Team

$150 / month

11,250 AI credits / month

Platform access

  • Up to 50 repositories
  • Up to 30 seats
  • High-priority processing
  • Context Studio
  • Insights — ask your audit history
  • GitHub integration
Get started
Enterprise

Enterprise Governance

Custom deployment and migration support for large-scale engineering orgs.

  • Unlimited repositories & seats No caps on repos, members, or reviewers.
  • Custom credit allocation & volume discounts A credit bucket sized to your usage.
  • Dedicated onboarding & Context Studio setup Our team joins as an admin and sets it up with you.
  • Priority support & Enterprise SLA Response-time commitments in writing.

FAQ

Frequently Asked Questions.

Everything you need to know before connecting your first repo.

Does PRGuard review every push, or just pull requests?
Both, by default. Each repository has an audit trigger you control — review pull requests only, pushes (commits) only, or both. PRGuard runs the same audit pipeline either way, so you can guard your default branch against direct pushes as well as PR-based workflows.
How long does an audit take?

Audits run in the background the moment a pull request or push lands — nothing in your workflow waits on PRGuard. Most reviews post back within a few minutes; small diffs are usually quicker, and very large changes, deep-context audits, or slower models take longer. In comment-only mode a running audit never holds anything up; in Full review mode the PR simply shows a pending status until the verdict arrives. Higher plan tiers run on priority processing queues.

Does PRGuard read or store my source code?
PRGuard never clones your repository and never keeps your codebase. It works from the file diffs it fetches from GitHub via the API and forwards the relevant changes to your chosen LLM provider for analysis. To run its deterministic security pre-scan, PRGuard also fetches the current contents of the files your change touches and scans them on our own workers — only the resulting findings, not the files, are added to the prompt. Everything the audit fetches is processed in memory for the audit’s duration — the diff, and any fetched file contents in a RAM-backed working area that is released as soon as the audit finishes, never on persistent disk — and is never written to our database — once the audit completes, the underlying code is discarded. We keep a record of each audit’s findings — including any suggested patch, which quotes only the lines it changes — plus the verdict and metadata (such as PR number, author, and file count), so you have a complete, reviewable audit trail without retaining your code. Everything is scoped to your organisation. If Deep Context is enabled, PRGuard fetches referenced source files from GitHub to sharpen the analysis; only compact skeletons of those files are added to the prompt.
Is my code used to train AI models?

No — not by PRGuard. We don’t build or train models of our own, and we never use your code or governance rules to train anything.

Your data stays scoped to your organisation, and diffs are processed in memory for the audit — never written to our database.

The audit runs through the major AI providers’ commercial APIs, whose current terms exclude data submitted this way from training their models, and we choose those channels deliberately for that reason. Those providers are third parties under their own terms, which are outside our control, so our privacy policy spells out exactly what is sent and to whom.

Can a malicious diff trick PRGuard with hidden instructions?
This is exactly what the gatekeeper is for. Before the main audit runs, every change passes through a separate prompt-injection screen that looks for instructions hidden in the diff — in comments, strings, or filenames — trying to manipulate the reviewer. If it detects an injection attempt, the audit is stopped before the main model ever sees the payload. Read more about how the prompt-injection screen works.
Doesn’t GitHub already scan for leaked secrets?
It does — for strings that match a known provider’s pattern, after they’re already in your history. When both systems flag the same key, that’s independent confirmation, not redundancy. But pattern-matching is one narrow tripwire: it won’t recognise an internal password or token with no famous format, and it will never see a SQL injection, a race condition, a money-handling bug, or a violation of your team’s own standards. PRGuard reads every change like a reviewer — it flags the exact line during review, applies the policies you set in Context Studio (a committed key is rotated, not just moved to an environment variable), and offers the fix. Secret scanning is a smoke alarm; PRGuard aims to stop the fire being merged in the first place.
What GitHub permissions does PRGuard need?
PRGuard installs as a GitHub App on only the repositories you select. It reads your code changes and pull requests to run audits, uses pull-request write access to post its reviews, and commit-status write to report each audit’s pass/fail on the commit. If you use auto-remediation, it also needs contents write access to open a fix branch or commit a patch you’ve approved. You can review its access on the GitHub App page and remove it from any repo at any time.
Which LLM providers can I use?
Anthropic and Google Gemini are both supported. You pick the model for your organisation from a curated list — each one verified to work with PRGuard’s audit pipeline — and can tune review depth against cost on every audit.
Will PRGuard block my PR from merging?
Not unless you ask it to. By default PRGuard runs in comment-only mode — it posts its findings as a review but never requests changes or blocks a merge. If you want it to gate merges, switch the repo to Full review mode and it will request changes on a FAIL, so the PR can’t merge until the issue is addressed. The choice is per repository.
How does pricing work? What does the $10 trial cover?
The $10 trial gives you full platform access and a block of credits to run real audits and explore every feature. After that, each plan includes a monthly credit allowance — larger on higher tiers. Every audit draws down credits based on the LLM tokens it uses, so you only pay for what you run. Need more before your next cycle? Top-up credits are available and roll over. There are no per-seat charges or hidden automation fees, and choosing a more efficient model stretches your credits further.
How many audits does a plan cover?

As a rule of thumb from our live runs, a typical pull-request audit charges on the order of 15–40 credits — small diffs at the low end; large changes, deeper context, or a premium model above it. A developer typically opens a handful of PRs a week, and the plans are cut to that shape: Starter comfortably covers a small team of up to 5, Pro a team of around 15, and Pro Team around 30 — matching each plan’s seat limit. If you audit pushes as well, budget more.

You don’t have to guess, though: the dashboard shows the exact credit cost of every audit from your first trial run, so a week of real usage tells you your own average.

What happens if I run out of credits mid-cycle?
Nothing breaks. Before contacting any LLM, PRGuard runs a pre-flight credit check — if your balance is too low, it skips the audit cleanly rather than running up a charge or failing your pipeline. Top-up credits are available anytime and roll over, and your plan allowance refreshes at the start of each cycle.
Can I cancel anytime? What happens to my credits?
Yes. You manage your subscription through the billing portal — upgrade, downgrade, or cancel whenever you like, with no lock-in. Cancel at the end of your billing period and your remaining plan and top-up credits stay usable until then. Once the subscription ends, no further credits are allocated and any unused credits — plan or top-up — are non-refundable, as set out in our Terms.
Can I suppress findings on code I don't own or intentionally left in?
Yes — if the repo has skip markers enabled. Add [skip prguard] (or [skip ci]) to your PR title or commit message and PRGuard will bypass the audit entirely for that event.
Will PRGuard push commits to my main branch?
Only if you explicitly choose to. Auto-remediation never runs on its own — a developer assigns the finding first. On a pull request the fix lands on that PR’s own branch, so you review it in the PR you already have open; when the change came from a direct push, PRGuard opens a fix pull request from a new prguard/… branch. You can opt in — via a confirmation step — to have a fix committed straight to your default branch instead, but that’s a deliberate choice you make each time; the default is always something you review first.
PRGuard flagged something I disagree with — can I tune it?
Yes — that’s what Context Studio is for. You can write custom rules and instructions — organised by category (roles, system facts, boundaries, and engineering standards) and scoped to your whole organisation or a single repository — that tell PRGuard what to care about and what’s acceptable in your codebase. The next audit picks up your changes automatically.
Where are my Context Studio rules stored?
Context rules (custom instructions, organised by category and scope) are stored in PRGuard's database, scoped to your organisation. They are never written back to your repository. You can edit them anytime in Context Studio, or download the full set with the PRGuard CLI (prguard pull <org-slug>).

Start Governing Your Code Today.

Set up in under 5 minutes.

Built and operated by Unifi Software Development Ltd, a software company registered in England & Wales, number 11054002. Security-first by design — every change is screened for prompt injection, your data stays scoped to your organisation, and every decision is captured in a complete audit trail.