Overview
Omnia
The Kubernetes platform for deploying AI agents
Omnia is a Kubernetes operator that deploys, scales, and manages AI agents as Kubernetes resources. Deploy intelligent assistants that can safely access private, proprietary information — all within your existing infrastructure.
Open core: the core platform is free and open source under Apache 2.0. Advanced production and scale features ship in the Enterprise edition under the Functional Source License in ee/. See Licensing & Features for what’s included in each edition.
Features
- Kubernetes-Native: Deploy AI agents as custom resources with full GitOps support
- Multiple LLM Providers: Support for Claude, OpenAI, and Gemini with per-agent provider selection
- Autoscaling: Scale-to-zero with KEDA or standard HPA based on active connections
- Tool Integration: HTTP, gRPC, and MCP tool adapters for extending agent capabilities
- Session Management: Redis or in-memory session stores for conversation persistence
- Observability: Integrated Prometheus metrics, Grafana dashboards, Loki logs, and Tempo traces
- Production-Ready: Health checks, graceful shutdown, and RBAC
Quick Start
Prerequisites
- Kubernetes 1.28+
- Helm 3.x
- kubectl configured for your cluster
Install the Operator
helm install omnia oci://ghcr.io/altairalabs/charts/omnia \ --devel \ --namespace omnia-system \ --create-namespace \ --set dashboard.auth.mode=builtin \ --set dashboard.auth.sessionSecret="$(openssl rand -base64 32)"
--develis required while Omnia ships pre-release (beta) charts. The dashboard uses builtin auth — after install, open it and register the first user. See Dashboard Auth.
Deploy Your First Agent
- Create a PromptPack with compiled prompts:
apiVersion: v1kind: ConfigMapmetadata: name: my-promptsdata: # Compiled PromptPack JSON (use `packc` to compile from YAML source) pack.json: | { "$schema": "https://promptpack.org/schema/latest/promptpack.schema.json", "id": "my-assistant", "name": "My Assistant", "version": "1.0.0", "template_engine": {"version": "v1", "syntax": "{{variable}}"}, "prompts": { "main": { "id": "main", "name": "Main Assistant", "version": "1.0.0", "system_template": "You are a helpful AI assistant. Be concise and accurate.", "parameters": {"temperature": 0.7, "max_tokens": 4096} } } }---apiVersion: omnia.altairalabs.ai/v1alpha1kind: PromptPackmetadata: name: my-packspec: packName: my-pack version: "1.0.0" source: type: configmap configMapRef: name: my-promptsTip: Use packc to compile PromptPacks from YAML source files with validation.
- Create a Provider for LLM credentials:
apiVersion: v1kind: Secretmetadata: name: llm-credentialsstringData: ANTHROPIC_API_KEY: "sk-ant-..."---apiVersion: omnia.altairalabs.ai/v1alpha1kind: Providermetadata: name: claude-providerspec: type: claude model: claude-sonnet-4-20250514 secretRef: name: llm-credentials- Deploy an AgentRuntime:
apiVersion: omnia.altairalabs.ai/v1alpha1kind: AgentRuntimemetadata: name: my-agentspec: promptPackRef: name: my-pack providerRef: name: claude-provider facades: - type: websocket port: 8080- Connect to your agent:
kubectl port-forward svc/my-agent 8080:8080websocat ws://localhost:8080/wsCustom Resources
| CRD | Description |
|---|---|
| AgentRuntime | Deploys and manages an AI agent with its facade, sessions, and scaling |
| PromptPack | Defines agent prompts and system instructions |
| ToolRegistry | Configures tools available to agents (HTTP, gRPC, MCP) |
| Provider | Reusable LLM provider configuration with credentials |
Architecture
┌──────────────────────────────────────────────────────────────┐│ Omnia Operator ││ ││ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ││ │ AgentRuntime│ │ PromptPack │ │ToolRegistry │ ││ │ Controller │ │ Controller │ │ Controller │ ││ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │└─────────┼────────────────┼────────────────┼──────────────────┘ │ │ │ ▼ ▼ ▼┌──────────────────────────────────────────────────────────────┐│ Agent Pod ││ ┌────────────┐ ┌────────────┐ ┌────────────┐ ││ │ Facade │ │ Runtime │ │ Tools │ ││ │ (WebSocket)│◄─┤ (gRPC) │──┤ Adapter │ ││ └────────────┘ └────────────┘ └────────────┘ │└──────────────────────────────────────────────────────────────┘Documentation
Full documentation is available at omnia.altairalabs.ai.
Ecosystem
Omnia is part of the AltairaLabs open-source ecosystem:
| Project | Description |
|---|---|
| PromptKit | Go SDK for building AI agents with tool use and streaming |
| PromptPack | Specification for portable, testable AI agent definitions |
| Omnia | Kubernetes platform for deploying PromptKit agents at scale |
Security
To report a vulnerability, see our Security Policy (please use private disclosure — not a public issue).
Vulnerabilities are scanned continuously and triaged in the
Security tab:
govulncheck (reachability-based Go stdlib + module CVEs, gating CI),
Trivy (container images), CodeQL (SAST), Dependabot +
dependency-review (dependencies), and OpenSSF Scorecard (supply-chain
posture). All service images build statically onto distroless/static:nonroot,
keeping the base-layer CVE surface minimal.
Contributing
Contributions are welcome. Please read our Contributing Guide for details.
License
Omnia is open core:
- The core platform is licensed under Apache 2.0 — see LICENSE.
- Enterprise features under
ee/are licensed under the Functional Source License 1.1 (FSL-1.1) — see ee/LICENSE.
See Licensing & Features for the Open Core vs Enterprise comparison.
Built with care by AltairaLabs