Solution · Early access

    Coding agents can introduce business-logic vulnerabilities

    They know common security patterns, but not the private rules protecting your tenants, permissions, entitlements, and workflows. Guardrails supplies that context and checks relevant changes before review or merge.

    Agents do not know your security model

    Codex, Claude Code, Cursor, and other coding tools see the code. They do not know which security rules must never change.

    Business logic flaws look like valid code

    A change can compile, pass tests, and still expose another customer's data or bypass an approval.

    The rules are scattered

    They live across code, docs, threat models, past findings, and people's heads. Generic checks cannot reconstruct them.

    Review comes too late

    More code reaches review faster. Security teams need the relevant rule checked before the change is merged.

    In coding agents

    Give agents the context they are missing

    Guardrails sends Codex, Claude Code, Cursor, and other coding tools the relevant invariants through MCP or the CLI. The agent sees what must stay true before it edits the code.

    agent session · pre-commit
    ▸ agent: git commit -m "add bulk report export"
      konvu ✗ finding: org-scoped-reads
        api/reports/export.py:42 queries Report without org scope
    
    ▸ agent: reading invariant org-scoped-reads…
        derived from KONVU-2331 · exploit reproduced · fixed in a41c2ef
    ▸ agent: scoping export query to session organization
    
    ▸ agent: git commit -m "add bulk report export"
      konvu ✓ 14/14 invariants hold
    Security Context Graph

    Turn private context into security invariants

    Konvu maps your code, configuration, docs, threat models, and past findings. It derives invariants for tenant isolation, permissions, approvals, state changes, and money movement.

    security context graph · org-scoped-reads
    # Derived by Konvu Guardrails. Do not edit rationale by hand.
    invariant: org-scoped-reads
    class: broken-access-control
    condition: >
      Every read on Report must be scoped by the
      organization_id of the session principal,
      never by an identifier from request input.
    binds:
      - api/reports/handlers.py (get_report, list_reports)
      - api/middleware/auth.py (require_org_scope)
    derived_from:
      boundary: org-isolation # threat model
      finding: KONVU-2331
      status: reproduced # exploit confirmed 2026-06-14
      fixed_in: a41c2ef
    check_in: [coding-agent, ci]
    In CI

    Check each relevant change before merge

    Guardrails selects the invariants affected by a change and checks them in CI. Start in report-only mode, then block violations where needed.

    Pull request #482 · checks

    konvu / invariants · 1 finding

    Finding: org-scoped-reads

    PATCH /api/reports/:id reads Report without org scope · introduced in 2f8d1c3 · derived from KONVU-2331 (reproduced)

    konvu / invariants · 14 invariants hold

    Verdict recorded on the pull request.

    CI mode: report-only · finding added for review

    Keep the next change inside your security boundaries

    Bring your application-specific security rules into coding agents and CI. Konvu Guardrails is in early access.

    Frequently asked questions