Every AI action, governed.

A policy enforcement proxy that sits between your AI agents and every tool they touch. Write deterministic rules in a human-readable DSL, hold high-risk actions for M-of-N human approval, and get a tamper-evident audit trail anyone can verify — no SDK required.

procurement_botcallsweb_search
Role match
Injection scan
Sequence check
context_deny
Velocity check
Deny check
Allow check
Escrow check
Masking
ALLOW

Forensic ledger — BLAKE3 chained

Works with any agent framework — keyless mode needs no SDK

See it in 30 seconds

An agent tries a risky action. Clausgap holds it for approval, records the decision in a chain anyone can verify, and takes four steps to set up.

The ungoverned AI problem

$4M+

average cost of a data breach — IBM Cost of a Data Breach Report 2024

Everything you need to govern AI

Policy-as-Code

Write rules, not code

Write governance rules in a human-readable DSL. Version-controlled and reviewable — and with approval required, no change reaches your agents until a second person approves that exact version.

policy.clausgap
policy "support_bot" {
  allow  call tool "web_search"
  deny   call tool "delete_records"
  context_deny time_of_day outside "09:00-17:00"
}
Discovery Mode

Skip the blank policy page

Turn on Discovery Mode and nothing is blocked — Clausgap just watches what each agent role actually calls, then drafts a policy from what it saw. Review the draft, edit it like any other policy, and turn enforcement on when you're ready. No DSL to learn before you get your first policy.

Discovery Mode is on

2h left
invoice_bot3 tools observed
Generate draft →
support_bot1 tool observed
POLICY EXISTS
M-of-N Escrow

Hold high-risk actions for human approval

When an action is too risky, the proxy holds it and notifies your approvers — in Slack, Microsoft Teams, or email — with Approve and Deny buttons that open the request in your dashboard. Require M-of-N votes before release — any rejection immediately cancels. The approved action then runs once, exactly as approved, and only for the agent that asked. No polling, no SDK, no custom webhooks to build.

⏸

Action held for escrow

submit_order · $48,200 · procurement_bot

Notified:SlackTeamsfinance@acme.com
Approvals1 / 2 required
Forensic Audit Trail

Prove every decision

Every decision is hashed and chained. Export a signed evidence package and your auditor can check it offline with clausgap-verify — no access to your Clausgap needed. Tamper-evident.

14:32:01web_searchALLOW#a3f8c2…
14:32:04file_writeDENY#9d1e47…
14:32:09submit_orderHOLD#c52ab1…

BLAKE3-chained · Ed25519-signed · exportable

Multi-Protocol

One proxy, every protocol

HTTP, PostgreSQL, and MCP — one binary, one config, one policy engine. Multi-agent systems touching multiple data stores deploy a single container instead of three.

HTTP:8443REST / tools
PG:5433Postgres / Redshift
MCP:3000LLM tool calls

clausgap-proxy · single binary · shared policy engine

Keyless Mode

No SDK required

Deploy the proxy in front of any existing agent framework — LangChain, AutoGen, CrewAI, custom tool loops — with zero code changes. Clausgap resolves identity from JWT Bearer tokens, API keys, or source IP. Add the SDK later only if you need verified confidence scores.

proxy.yaml
keyless:
  enabled: true
  mode: "strict"
  api_key_sources:
    - header: "Authorization"
      prefix: "Bearer "
  static_roles:
    - source_ip: "10.0.0.0/8"
      agent_role: "internal-agent"
JWT / OIDCAPI keyIP / CIDR
Injection Defense

Stop prompt injection at the gate

Detect and block prompt injection before it reaches your tools. Pattern scanning, session sequencing, and velocity spike detection run inline, inside the proxy.

policy.clausgap
injection_scan action = "deny"
# flag calls triggered by env, not user
allow call tool "send_email" when
  trigger_source = "user"
sequence_deny tools ["exfil"]
  after ["read_db"] within 60
Injection blockedSequence deniedSource verified

Up and running in minutes

1

Deploy the proxy — no agent changes needed

Sign up, open the Deploy Proxy wizard, and pick your protocols. The wizard generates routes.yaml, proxy.yaml, Docker Compose, and Helm values pre-filled. Enable keyless mode to drop in front of an existing agent with zero code changes.

2

Write a policy

Declare allow, deny, and escrow rules in the human-readable DSL. The inline linter flags errors as you type.

3

Monitor decisions

Watch every agent action in the dashboard. Export signed evidence packages that anyone can verify offline.

Start with the setup wizard →

Free plan · No credit card

Governance without the tax

Route matching, identity resolution, policy evaluation and forwarding through the HTTP proxy, measured against a direct call to the same upstream.

0.06ms

p50 overhead

median added per request

0.20ms

p95 overhead

added per request

0.34ms

p99 overhead

added per request

10,000 sequential requests · loopback, no TLS · Apple M4, darwin/arm64 · slowest of three runs
PercentileDirectThrough ClausgapOverhead
p500.05ms0.11ms+0.06ms
p950.06ms0.26ms+0.20ms
p990.10ms0.44ms+0.34ms

Policy evaluation alone takes under 2 µs at p99, including a 20-policy bundle. Audit records are written off the request path and are not part of these figures. Measured October 2026 with the benchmark tool in the Clausgap source.

Start governing your AI agents today

No credit card. Policy engine, M-of-N approvals, and evidence anyone can verify offline — free to get started.