Skip to content
Pre-1.0 · evidence-assured MVP

Enforce AI policy in the request path. Prove every decision.

AssuranceOps is the self-hosted governance control plane for AI agents, MCP, and model traffic — enforcing policy inline and producing durable, independently verifiable evidence.

Apache-2.0Evidence-required modeSigned exportsSCIM 2.0
ASSURANCEOPS / CONTROL PLANELive proof
01
Sign inOIDC · PKCE · signed state + nonce
verified
02
Scopeorganization + platform RBAC
tenant bound
03
EnforceAI · MCP · cloud-app policy
fail closed
04
Proveverified snapshot · Ed25519 signature
signed

One identity, one governed decision, one independently verifiable evidence bundle.

Why this exists

Every AI request should have an owner, a policy, and a record.

Shadow AI usage

Any team can call any model provider, enable any tool, or connect any MCP server — with no central record.

No audit trail

When compliance asks who used AI, for what, and at what cost, there is no answer to give them.

Policy without enforcement

Approved-model lists live in a wiki. Nothing in the request path actually stops a violation.

New in AssuranceOps

Govern the agent. Verify the evidence. Reduce the remit.

The latest release tightens the full governance loop: identity lifecycle, least-privilege review, MCP supply-chain and runtime threats, policy-safe resilience, and evidence that can fail closed and verify offline. New skill-execution and storage foundations are published with their production gates visible.

Abstract rings and sealed capsules representing a signed execution boundary.
Authority stays bounded.Exact readiness material, capability profiles, short-lived grants, and canonical receipts remain tied to the current assignment before execution can advance.
01 Assurance

Evidence-required mode

Fail closed before new AI or MCP work when durable evidence is unavailable, with health-aware recovery when the sink returns.

02 Evidence

Signed evidence export

Export one consistent snapshot with chain verification, read-model checks, canonical bytes, and optional Ed25519 attestation.

03 MCP

MCP threat boundary

Scan tool arguments before execution and tool results before they re-enter agent context; result findings remain alert-only.

04 Identity

SCIM lifecycle control

Provision, deactivate, reactivate, or delete users through SCIM 2.0 and suspend every matching gateway principal in one action.

05 Supply chain

Supply-chain advisory view

Match declared MCP packages to a reviewed local OSV artifact with conservative handling for unknown versions.

06 Least privilege

Remit conformance

Compare policy-declared access with observed behavior to expose unused privilege, denied attempts, and current-policy drift.

07 Resilience

Policy-safe failover

Retry once through a configured backup only when the same policy and sensitive-data approvals authorize it.

08 Data

Agent data guardrails

Detect machine secrets deterministically and add opt-in model-based NER for unstructured sensitive narratives.

09 Skill safety

Governed skill authority

Tenant-owned publisher and approval evidence binds exact readiness material, short-lived grants, and canonical hash-chained run receipts. The boundary remains fail closed until endpoint execution proof is complete.

10 Endpoint

Deny-by-default sandbox

The endpoint executor accepts only grant-derived capability profiles with closed filesystem, network, process, and environment modes plus bounded resources — never caller-supplied commands or paths.

11 Portability

Storage adapter expansion

MySQL now covers 27 of 29 store contracts with live conformance on the skill-execution slices; SQL Server has an explicit adapter gate. Complete runtime parity and provider certification remain open.

12 Evidence

Streaming audit verification

JSONL and database verification use fixed-size readers and per-row streams with a one-row lookahead, so peak memory no longer scales with chain length.

IdentityOIDC + SCIM
RemitDeclared vs observed
EnforcementPolicy + threat gates
EvidenceVerified + signed
Endpoint assurance

A signed control loop for every managed endpoint.

Governance does not stop at the gateway. AssuranceOps brings the same fail-closed discipline to pilot endpoint releases: exact signed artifacts, bounded delivery, anti-rollback checks, health-gated rollout, and evidence that follows the update.

Abstract managed endpoints moving through controlled rollout rings with health and rollback signals.
Signed artifacts move through bounded rollout rings; health earns promotion, while rollback remains an explicit evidence-bearing outcome.
  1. 01

    Sign and pin the release

    A closed release manifest binds the exact version, payload, and updater identity. Endpoints verify it against a locally pinned Ed25519 key.

  2. 02

    Verify, stream, and stage

    The agent accepts only a fixed HTTPS origin, with redirects disabled, strict size bounds, streamed SHA-256 checks, and no-clobber local staging.

  3. 03

    Reject rollback

    Monotonic release sequence and semantic-version checks refuse stale or replayed artifacts before an update can advance.

  4. 04

    Promote by ring

    Target rollout rings and scheduled health gates keep a release scoped until observed fleet health earns the next promotion.

  5. 05

    Recover by design

    The updater is fixed-purpose: sealed product profiles, fixed service adapters, no arbitrary shell execution, and rollback after a failed health confirmation.

  6. 06

    Return lifecycle evidence

    Content-minimized, predecessor-linked receipts preserve staged-to-committed or rollback history for the operator evidence plane.

Desired statesigned Release payloadbound Rollout healthgated Applied statechained
How it works

One gateway, in front of every provider.

Your apps & agents
MCP-based agents
AssuranceOps Gateway
01 Authenticate 02 Enforce policy 03 Route 04 Audit
reads policy from config / YAML writes to the audit trail — JSONL · Postgres
Allowed
forwarded unmodified
Denied
blocked before a token is spent
allowed requests continue to
OpenAI · Anthropic · MCP servers
01

Authenticate

Clients hold virtual keys. Real provider credentials never leave the gateway.

02

Enforce policy

Providers, models, tools, MCP servers, input size, and budgets are evaluated per request.

03

Forward or block

Allowed requests pass through unmodified. Denied requests fail before a token is spent.

04

Audit

Every request is written to an immutable trail, priced, and attributed by activity.

Adopting the gateway

Three steps stand between a pilot and production — none of them is an application rewrite.

01

Deploy in your infrastructure

The gateway is a single static binary with a Docker Compose quick start. For production, the shipped Helm chart runs it highly available on Kubernetes — budget and rate-limit counters are shared across replicas through Postgres, and separate liveness and readiness probes keep rolling updates safe.

02

Point your applications at it

Clients keep calling the standard OpenAI and Anthropic API paths. Adoption is a base-URL change plus a virtual key — no SDK swap, no application rewrite, and streaming responses pass straight through.

03

Bind teams to policy

Each client key or directory group maps to a named policy — or starts from a shipped compliance pack. Policy is plain YAML with secrets referenced by environment variable, so it is reviewable, versionable, and safe to commit.

The guarantees behind the diagram

The properties security and platform leaders ask about first — each one is architectural, not a configuration flag someone can forget.

Credentials never reach clients

Real provider keys are referenced by environment variable, resolved at startup, and injected only at the moment a request is forwarded. The config file never contains a secret, and clients only ever hold revocable virtual keys.

Access is managed in your directory

Users authenticate with JWTs from Entra ID, Okta, Google Workspace, or ADFS. Directory groups map to policies — fail closed — and every audit record carries the actual user, not just a key. Service accounts keep virtual keys.

Fail closed is the architecture

Anything the gateway cannot authenticate, parse, route, or that policy does not explicitly permit is rejected before a token is spent. An unknown policy is a deny, not an error.

The record is complete, wherever a request stops

Allowed, denied, over budget, or rejected at the front door — every terminal path writes exactly one audit record. There is no code path that skips the trail.

What's in the gateway today

Governance, built into the request path.

Policy engine

Allow/deny rules over providers, models, tools, and MCP servers — per team. Deny always wins; default-deny allow-lists.

Evidence-required assurance

Regulated deployments can refuse new AI and MCP work when the durable evidence sink is unhealthy, then recover automatically when the store is available again.

Usage, cost & budgets

Cache-aware provider pricing, reasoning-token visibility, proactive budget warnings, and hard daily or monthly caps enforced inline.

Two-sided MCP threat scanning

Tool arguments are scanned before execution; untrusted tool results are scanned before they re-enter agent context, with content-free findings written to evidence.

Secrets, PII & model-based NER

Deterministic credential and identifier detection combines with an optional model tier for names, addresses, dates of birth, medical narratives, and other unstructured data.

Prompt registry & quality

Versioned, policy-gated templates with typed variables, static lint scores, and runtime quality metrics.

Policy-safe provider failover

A pre-authorized backup can handle an unreachable, 5xx, or rate-limited primary only when the same policy and data-protection checks approve it.

Signed evidence bundles

One repeatable database snapshot is cross-checked against its read model, canonically serialized, and optionally signed with Ed25519 for offline verification.

Identity lifecycle with SCIM

Entra ID, Okta, Google Workspace, and ADFS identities map to policy; SCIM 2.0 deactivation suspends every principal key derived for that user.

Cloud-app governance (CASB)

An approved-app catalog enforced by an inline forward proxy and decision API, with a shadow-IT discovery feed for what is not yet catalogued.

Proactive alerting

Webhook notifications to Slack, Teams, or a generic endpoint on budget breaches, denial spikes, and sensitive-data blocks — with per-rule cooldowns.

Per-user budgets & rate limits

An optional cap per key or user on top of the policy budget, plus token-bucket rate limits — over-limit requests get 429 before any upstream call.

Endpoint & device governance

Managed machines enroll once through the aops-agent binary and heartbeat on a scoped, one-time device credential — rotate or retire any endpoint from the operator UI without touching the team's virtual key.

Control-plane approvals

MCP servers and skills are cataloged and reviewed through a transactional approval workflow before they're discoverable; a caller still only sees skills its own policy explicitly allows.

MCP supply-chain advisories

Each declared MCP implementation package can be checked against a reviewed local OSV artifact without live dependency resolution or runtime package installation.

Least-privilege remit report

Compare policy-declared models, providers, tools, and MCP servers with observed use to surface unused access, denied attempts, and policy drift.

Bring your own database

The audit trail, budgets, and approvals persist to PostgreSQL you control — AWS RDS, Azure, Google Cloud SQL, on-prem, or Kubernetes — with engine-neutral configuration and versioned migrations.

Endpoint release assurance (pilot)

Stage only pinned, signed, hash-verified endpoint artifacts; reject rollback before a fixed-purpose updater can act, and retain content-minimized lifecycle evidence.

Governed skill execution (gated)

Tenant-owned publisher, approval, readiness, and capability evidence can issue exact short-lived grants and canonical run receipts; native capability evaluation and production execution proof still gate activation.

Bounded-memory audit verification

Verify JSONL and database chains through fixed-size readers and row streams so peak memory stays bounded as evidence grows, without changing verification results.

Governance operations

Move from traffic control to an operating system for AI governance.

The gateway supplies the enforcement and evidence. The operations layer turns that evidence into posture, investigation, response, and reporting workflows your security and compliance teams can use.

AI Governance Score

Turn policy, provider, and platform checks into a 0-1000 posture score with prioritized remediation and framework references.

Alert center & response automation

Coalesce governance events into an operational queue, then approve or pre-authorize playbooks that notify, suspend a key, or change policy.

Shadow AI & threat intelligence

Detect provider traffic that bypasses the gateway, import existing proxy logs, and correlate new host or model indicators against prior activity.

Executive reporting

Produce scheduled governance reports, top-offender views, and a single pass/warn/fail sweep for leadership, auditors, or CI.

Multi-tenant administration

Scope usage, alerts, reports, identities, and governance views by organization for business units, regulated subsidiaries, or managed services.

Guardrail observability

Track posture drift, review sampled AI usage for nuanced policy evasion, and flag risky configuration changes before they merge.

Agent memory governance

Apply policy to durable agent memory operations, preserve attribution, and keep memory-related threat findings in the same evidence and response workflows.

Inside the gateway

Enforcement you can trace — on infrastructure you control.

How a request is judged

Every request runs the same ordered gates. Deny always wins, and each allow-list is default-deny — anything not explicitly permitted is rejected.

Authenticated request
pass
01 Provider On the approved provider allow-list? deny → 403
pass
02 Model Permitted for this caller and route? deny → 403
pass
03 Tools & MCP Requested tools and MCP servers allowed? deny → 403
pass
04 Limits Within input-size and budget caps? deny → 403
pass
05 Data PII / PHI policy satisfied for this route? deny → 403
all gates pass
Allowed — forwarded unmodified, then written to the audit trail.

Self-hosted by design

The gateway, policy, and audit trail run inside your infrastructure. Provider credentials never reach clients, and request content is sent only to the provider or MCP server that policy approved.

Your infrastructure
AssuranceOps Gateway
Policy
config · YAML
Audit trail
JSONL · Postgres
only approved traffic leaves · credentials never do
Model providers · MCP servers
See it in action

Every governed request, visible in one place.

AssuranceOps — Governance Dashboard
localhost:8080/admin
AssuranceOps governance dashboard
Last 7 days
Requests
12,406
11,980 allowed · 14 upstream errors
Denied by policy
212
1.7% of requests
Total tokens
3.2M
2.1M in · 1.1M out
Spend
$184.32
priced models only
Requests per bucket
Top models by tokens
claude-3-5-sonnet
1.4M
gpt-4o-mini
980K
gpt-4o
612K

The built-in dashboard at /admin — shown with sample data.

Compliance

Fail-closed policy packs for regulated environments.

Three starter packs pre-wire policy controls to named regulatory requirements. Every allow-list ships empty or as a placeholder — your team names the approved providers, models, and prompt templates before it goes live.

HIPAA

Restrictive-by-default baseline for protected health information — provider and model allow-lists scoped to your BAA, PHI detection that blocks on match, and minimum-necessary limits on prompt templates and input size.

§164.312(a) Access control §164.312(b) Audit controls §164.502(b) Minimum necessary

GDPR

Baseline for personal data of EU/EEA subjects — provider and model allow-lists pinned to adequacy- or SCC-covered endpoints, with detection set to flag rather than block so lawful-basis processing isn't rejected outright.

Art. 5(1)(c) Minimisation Art. 30 Records Art. 44+ Transfers

FINRA / GLBA / PCI-DSS

Baseline for nonpublic personal information and cardholder data — Luhn-validated card detection, vendor-scoped provider allow-lists, and an optional full-transcript mode for books-and-records retention.

PCI-DSS Req 3/4 PCI-DSS Req 10 FINRA 4511 / SEC 17a-4

Also mapped: SOC 2

SOC 2 is a control mapping rather than a policy pack. Virtual keys and policy scoping support logical access; the audit trail and denial reason codes support monitoring; and config-as-code — reviewable YAML with every secret referenced by environment variable, never written in the file — supports change management.

CC6.1 Logical access CC7.2 Monitoring CC8.1 Change management

Data protection scanning

Pattern-based detection on request input, reported by kind and count only — the matched value itself is never logged or stored anywhere.

Secrets SSN Credit card · Luhn Email Phone IP address NPI DEA Optional NER
Block Reject before it reaches a provider — 403, before a token is spent.
Flag Allow the request; record the detected kinds on the audit trail as evidence.
Require approved Allow only to providers explicitly approved for every kind detected; reject the rest.

Evidence, on demand

Every request — allowed or denied — writes one audit record: who made it, which policy applied, the disposition and matched rule, PII flags, and latency.

Append-only JSONL
No update or delete path from the gateway — hand it to an auditor as-is.
Queryable Postgres
Same records in SQL form, plus a summary analytics API by org and date range.
Optional full transcripts
Opt-in per policy for books-and-records — request/response bodies, PII-redacted by default, size-capped and retention-windowed.

Scanning the response, too

Input scanning stops sensitive data going to a provider. Response scanning catches it coming back — PHI the model was given elsewhere and echoed, or a generated value that looks real.

Buffered responses Withheld on detection — the client receives a 403 and the audit record notes the request was forwarded and why the body was held back.
Live streams Bytes already relayed cannot be unsent, so a block degrades to a recorded flag and the reconstructed stream is scanned when it ends. Inline stream redaction is on the roadmap.
Separate evidence Response detections are recorded apart from input detections, so an assessor can distinguish what was sent from what came back — kinds only, never values.

Tamper evidence you can prove

Every record is SHA-256 hash-chained to its predecessor, so inserting, deleting, reordering, or editing a committed record forces recomputing every hash after it — and is detectable.

Require Evidence-required mode refuses new governed work while the durable sink is unhealthy, so regulated traffic cannot silently outrun its record.
Verify Verification walks the hash chain and cross-checks the denormalized analytics columns against each canonical record to catch a clean-looking but misleading read model.
Sign A consistent transactional snapshot can be canonically serialized and signed with Ed25519 for independent offline verification.
Anchor Like any hash chain, external tamper evidence comes from anchoring the head outside the store — archive the attestation to WORM storage or a witness on a schedule.
append-only · audit.jsonl one record per request
{
"ts": "2026-07-06T14:22:08Z",
"request_id": "req_9f3ac21b",
"subject": { "user": "a.rivera", "org": "acme-clinical" },
"provider": "anthropic", "model": "claude-3-5-sonnet",
"activity": "chat_completion",
"disposition": "denied", "matched_rule": "deny:*-vision*",
"pii": ["ssn"],
"tokens": { "in": 0, "out": 0 }, "cost_usd": 0.0, "latency_ms": 3
}

One line in the append-only audit trail — attributed, priced, and policy-tagged. Denied here before a token was spent.

Compliance packs and detection accelerate the work — they are scaffolding, not legal advice or a certification. Pattern-based detection has real gaps: unformatted identifiers, names, and free-text narratives are not caught, so layer a dedicated DLP or NER service where your obligations demand it. Full control mapping in docs/COMPLIANCE.md ↗.

Roadmap

Built incrementally, in the open.

01 Live

Substantial functional MVP

Provider and MCP proxying, streaming, policy, identity, budgets, scanning, transcripts, and tamper-evident audit evidence are implemented and under active pre-1.0 validation.

02 Live

Governance operations

Posture scoring, alerts, response automation, threat intelligence, executive reports, multi-tenancy, and guardrail observability are implemented.

03 Live

Prompt governance

Versioned templates, quality metrics, LLM-as-judge review, content-hash-bound approvals, and approval-gated rendering are implemented.

04 Live

Hosted administration

OIDC authorization-code sign-in with PKCE, tenant-scoped RBAC, and short-lived Postgres-backed browser sessions are implemented.

05 Live

Deployment baseline

Docker Compose, Kubernetes and Helm, shared Postgres counters, health/readiness probes, concurrent migration safety, and a Coolify staging profile are available.

06 In progress

Execution & portability hardening

The skill-execution control plane and sandbox substrate are delivered as a fail-closed boundary; native capability evaluation, complete adapter parity, provider certification, end-user apps, external anchoring, and broader production proof remain.

Evaluate AssuranceOps in your own environment.

Request access for deployment guidance and roadmap conversations, or run the open-source demo now to see policy enforcement and verifiable evidence end to end.

By joining, you agree to our Privacy Policy and Terms.

or run the 2-minute demo on GitHub ↗