Download AIControls · Self-hosted
Run AIControls in your own cluster.
Govern coding agents and Kubernetes agents from infrastructure you control.
- Kubernetes ≥ 1.27
- Helm ≥ 3.12
$ helm install aicontrols \ oci://ghcr.io/nirmata/charts/aicontrols \ -n aicontrols --create-namespace \ -f values.yaml NAME: aicontrols STATUS: deployed $ kubectl logs -n aicontrols deploy/aicontrols started proxy
Why teams self-host AIControls
Control cost, keep teams fast, stop risky calls.
Cost
Set budgets that actually hold.
- Spend limits per org, team or developer
- Enforced at request time
- Cut token waste with context optimization
Productivity
One endpoint, every tool.
- No agents or SDKs to install
- Shared MCP servers for everyone
- Any provider: Anthropic, OpenAI, Bedrock, Vertex, Ollama
Security
Stop risky calls before they run.
- Detect PII, secrets and prompt injection
- Policy on every model and tool call
- Every call recorded for audit
Install
Up and running in five steps.
Step 0
What do you want to govern?
Pick one and the steps below adapt. One install can govern both.
Create a values file
Deployment settings only. You'll connect LLM providers and policies in the Admin UI.
values.yamladmin: email: "you@company.com" # required storage: persistentVolume: enabled: true size: 10Gi ui: publicURL: "https://aicontrols.example.com"
Install with Helm
terminalhelm install aicontrols \ oci://ghcr.io/nirmata/charts/aicontrols \ -n aicontrols --create-namespace \ -f values.yaml
get the bootstrap admin passwordkubectl get secret aicontrols-admin-bootstrap -n aicontrols \ -o jsonpath='{.data.password}' | base64 -dOpen the Admin UI and run setup
Log in as
admin. The wizard connects an LLM provider, adds MCP servers and creates your first policy.for testing · use Gateway API or Ingress in productionkubectl port-forward -n aicontrols svc/aicontrols 8080:8080 8081:8081 # Admin UI: http://localhost:8081/ui/Activate your license
AIControls needs a signed license before it processes AI traffic. Licenses are tied to one cluster, identified by the UID of its
kube-systemnamespace.cluster ID · kube-system namespace UIDkubectl get namespace kube-system -o jsonpath='{.metadata.uid}'Connect your coding agents Desktop
Each developer creates an access token in AIControls, then points their tool at your endpoint.
~/.claude/settings.json{ "env": { "ANTHROPIC_BASE_URL": "https://aicontrols.example.com", "ANTHROPIC_AUTH_TOKEN": "YOUR_ACCESS_TOKEN" } }Cursor · Settings → Models# Override OpenAI Base URL https://aicontrols.example.com/proxy/v1 # API key YOUR_ACCESS_TOKEN
shellexport OPENAI_BASE_URL=https://aicontrols.example.com/proxy/v1 export OPENAI_API_KEY=YOUR_ACCESS_TOKEN
VS Code · install the AIControls extensioncode --install-extension nirmata.aicontrols
- Click AIControls in the VS Code status bar.
- Set the Server URL to your AIControls hostname, e.g.
https://aicontrols.example.com. - Choose Connect with GitHub account, or paste your AIControls access token.
- Send a Copilot Chat message. It shows up in Security Events under your GitHub identity.
Covers inline completions, Copilot Chat and Copilot edits in VS Code.
Tool calls are covered too. MCP traffic goes through the same endpoint, with no extra setup.
Connect your agent pods Kubernetes
Point agents at the in-cluster service. Or label them and let Kyverno inject the settings.
agent Deployment · envenv: - name: MCP_SERVER_URL value: "http://aicontrols.aicontrols.svc.cluster.local:8080" - name: OPENAI_BASE_URL value: "http://aicontrols.aicontrols.svc.cluster.local:8080/v1"
or: label the pod for Kyverno injectionmetadata: labels: nirmata.io/ai-agent: "true"
Add identity. Mount a projected ServiceAccount token with audience
aicontrolsso each agent is verified. Agent identity guide
Next steps
Put your first controls in place.
- Write a policyAllow, deny or require approval
- Set a budgetToken and cost limits
- Review the audit logEvery call, attributed
- Full install guideTLS, Gateway API, upgrades
Rather not run it yourself?Use AIControls Cloud. Same controls, nothing to install.
Start on AIControls Cloud