Control Your AI
Unpredictable AI agents need deterministic control. Automate guardrails with an AI governance loop to enforce trusted Kyverno policies across every model call and tool execution.
Switching high-cost model sessions to a lighter model could save ~$1,850/wk
apiVersion: policies.kyverno.io/v1
kind: ValidatingPolicy
metadata:
name: block-destructive-ops-production
namespace: nirmata
annotations:
proxy.nirmata.io/enforcement-mode: deny
proxy.nirmata.io/category: Destructive Ops
proxy.nirmata.io/description: "Blocks irreversible destructive operations (delete, drop, destroy) in production namespaces."
proxy.nirmata.io/frameworks: "owasp:LLM08,mitre:AML.T0048,nist:MP-2.3,eu-ai-act:Art.9"
spec:
evaluation:
mode: JSON
matchConditions:
- name: is-destructive-tool
expression: >
object.tool.name in [
"kubectl_delete", "kubectl delete",
"helm_uninstall", "helm uninstall",
"terraform_destroy", "terraform destroy",
"delete_resource", "drop_table", "truncate_table"
]
validations:
- expression: >
object.agent.namespace != "production" &&
object.agent.namespace != "prod" &&
!object.agent.namespace.startsWith("prod-")
# The action wording follows object.policy.enforcementMode, so the
# message never claims an action the gateway does not take in this mode.
messageExpression: >
object.policy.enforcementMode == "deny"
? "Destructive operations are blocked in production namespaces."
: (object.policy.enforcementMode in ["warn-approve", "warn-ask"]
? "Destructive operations targeting production namespaces require human approval."
: "Destructive operation in a production namespace.")
- expression: >
!object.tool.arguments.exists(k, k == "namespace") ||
(!string(object.tool.arguments.namespace).startsWith("prod") &&
string(object.tool.arguments.namespace) != "production")
messageExpression: >
object.policy.enforcementMode in ["warn-approve", "warn-ask"]
? "Destructive operations targeting production namespaces require human approval."
: (object.policy.enforcementMode == "deny"
? "Destructive operations targeting production namespaces are blocked."
: "Destructive operation targeting a production namespace.")Securing workloads at
AI proposes.
Policy enforces.
AI agents analyze traffic across every control point to draft policies and explain risks. Agents recommend. Humans approve. The Kyverno CEL policy engine enforces. Every decision logs to a unified audit report.
One policy engine. Multiple Control Points.
- Control point 02Enterprise Kyverno
Admission
Control what enters the cluster. Enforce rules at the API server before resources run.
Reuse the validate, mutate, and generate rules you run today—extended to agents with no second engine.
- Control point 03Container sandboxing
Sandbox
Contain what agents can touch. File and exec policy with granular network restrictions.
Container sandboxing keeps each agent inside the files, commands, and network destinations its policy allows.
- Control point 05Nirmata Runtime
Runtime
Kernel-level detection and behavioral enforcement for active workloads.
eBPF-powered sensors monitor running workloads to enforce policies and detect shadow AI.
Agentic layer
Judge
Fallback onlyFires only when no policy matches on a call. Returns a bounded verdict — never blocks on its own.
Checked against your policies first — Judge only sees calls with no matching rule. One bounded, logged verdict; it can’t override a policy or block by itself.
Analyst
Standing reviewReviews every decision across the fleet. Drafts policy and config changes — a human always promotes them.
Runs across every decision in the fleet, not just Judge’s fallback cases. Drafts the fix — nothing takes effect until a human promotes it.
↑ hover or tap a card for more detail ↑
Start where your problem is.
Govern your clusters, your AI agents, or both — one engine, one syntax, one audit log, no matter where you start.
Governing your clusters
Every cluster. Every deployment.
- Policy-as-code across every cluster and namespace
- Standard open-source engine — no proprietary syntax
- Start in audit mode, then switch to active blocking
Fleet-wide governance from day one — on the engine you already run.
Explore cluster governanceGoverning your agents
Every AI call. Every agent action.
- Identity, authorization, and limits on every call
- Centralized policy definition enforced at the gateway
- Complete audit log for every tool an agent touches
Extends your existing Kyverno policies to the AI stack — not a new system to learn.
Explore agent governanceYour Kyverno investment compounds in the AI era.
The skills, policy pipelines, and compliance rules your team built for Kubernetes carry directly over to AI workloads.
- Project Status
- CNCF Graduated
- Monthly Downloads
- 7M+
- Open Source, No Lock-In
- Apache 2.0
Customer testimonial
“We found agents in our clusters nobody had told us about. That’s the part that kept me up. Now nothing reaches a model without an identity attached and a policy decision behind it.”
Field performance
We now have identity-based authorization in front of every AI call — enforced with the same Kyverno policies already enforced across our clusters.
Unify your governance from clusters to AI.
Talk to us about governing your clusters, your agents, or both — one engine, one audit log, no matter where you start.












