Documentation
Zelkor is a self-hosted runtime for AI agents on Kubernetes. You set a model, a tool, and an agent; those same objects run from the laptop Community Edition install to a shared cluster. Bring the agent you already wrote; it is sandboxed — it can't break out, reach unauthorized data or networks, its prompts are verified, budget controlled, and it is under observation; tenants stay isolated (the agent cannot pick another tenant, see the tenant hop).
Editions
| Edition | What you get |
|---|---|
| Community Edition | Self-hosted runtime in this repository (gateway, tools, sandbox, traces) |
| Pro | SSO, team controls (budgets and approvals), production HA / GitOps |
| Enterprise | Isolation and compliance on Pro (hardware sandbox, mTLS, retained audit, BAA) |
Start with Community Edition. Pro and Enterprise layers sit on the same platform shape.
Get started
| Page | Job |
|---|---|
| Local Quickstart | Install CE on kind, call a model, open a trace |
| Root README | Product overview and three-command install |
Install
| Page | Job |
|---|---|
| Install on an Existing Cluster | Evaluate CE via Helm on a shared cluster |
| Production Install | Deploy the highly available shape of CE with HA operators |
| Uninstall | Remove the platform from your cluster |
| Upgrade | Upgrade the platform chart safely |
| Customize Guardrails | Add custom NeMo safety policies |
| Gateway Topologies | How Envoy Gateway integrates with your cluster |
Agents and examples
| Page | Job |
|---|---|
| Install the Platform (Agent Guide) | How coding agents install/uninstall the platform |
| Deploy an Agent (Agent Guide) | How coding agents deploy/remove customer agents |
| Use the zelkor CLI | Env targets, deploy, run, logs, doctor |
| Register extra MCP backends | BYO ClusterIP MCP on the unified gateway |
| FinServe example | Optional reference agents (not required to learn the platform) |
Reference
| Page | Job |
|---|---|
| Add LLM providers and models | Helm overlays for AI Gateway backends and model ids |
| Helm values reference | platform / workspace / workload namespaces and schema |
| Hosts and Routing | gateway.hosts.* vs internal ClusterIP names |
| Worker Environment | Injected env vars (OPENAI_BASE_URL, MCP_URL, OTEL) |
| MCP Tools Reference | Tool prefixes, extraBackends fields, and list mechanics |
| Agent Protocol | Front-door paths, graph ID matching, and fallbacks |
| Tenants | Claims, org map, filters vs forwarded, zelkor token mint fields |
| Platform Logging | Stdout JSON structure, levels, and environment variables |
Architecture
| Page | Job |
|---|---|
| Architecture Hub | Map of all hops, components, and trust boundaries |
| Request Path | How a client call reaches the model |
| Network Boundaries | Who may talk to whom inside the cluster |
| Sandbox Isolation | Where generated code executes |
| MCP Governance | How a tool call is isolated and authenticated |
| Run Trace | What one run looks like in Langfuse |
| Drop-In Agent Contract | How Zelkor sandboxes and governs your agent (Intercept, Wrap, MCP) |
| Envoy Graph Routing | How Envoy routes incoming calls to the correct agent deployment |
| North-South Exposure | What Zelkor publishes to the internet versus what stays inside the cluster |
| Tenant Isolation | How one tenant identity is applied on a run |
| Agent Datastores | Stateful infrastructure (Postgres, Qdrant) and BYO options |
Troubleshooting (KB)
| Page | Job |
|---|---|
| Knowledge Base | Index of known issues and fixes |
Vertex gemini-* unknown backend | Fix AI Gateway 500 when Vertex auth rotation skips the backend |
| JWT rejected (401) | Token iss vs Helm issuer and JWKS fetch |
POST /runs/wait 422 | Body must include assistant_id |
AI Gateway route_not_found | Empty provider apiKey deleted the route |
Read Install on an Existing Cluster and Production Install when you are ready to move off kind.