Self-Hosted
The repository includes separate Helm charts for the console, API, and worker. You operate the cluster and provide database, Redis, authentication, storage, ingress, and model services. The public apps/site is a separate Kyndex-hosted application.
These charts deploy application workloads only. They do not install PostgreSQL, Supabase, Redis, or an LLM provider.
Prerequisites
Deployment topology
Console
3000The customer-facing Next.js dashboard. Users log in here, upload knowledge, run queries, and approve actions.
API
8000The FastAPI application that owns auth-aware reads and writes, RAG orchestration, and governed action workflows.
Worker
backgroundTaskiq processes handle document ingestion and background jobs. The chart also defines a scheduler deployment; its dashboard is disabled by default.
Postgres + pgvector
5432Relational and vector storage. Provide a PostgreSQL deployment with pgvector that is compatible with the migrations.
Redis
6379Queue backend for Taskiq and related background processing.
Data flow and capacity
Chart requests and limits are defaults, not validated capacity recommendations. Size database, storage, Redis, and application workloads for your traffic and retention needs. Requests sent to hosted model, embedding, or parser providers leave your infrastructure; review each provider's data handling and configure egress accordingly.
Chart layout in this repo
infra/
helm/
apps/
api/
worker/
console/
_lib/
environments/
local/
common.values.yaml
api.values.yaml
worker.values.yaml
console.values.yamlShared API and worker settings are configured through their chart values and environment overlays. The console chart configures the frontend, service, and ingress. Review the values files before deploying, and provide referenced secrets and external services separately.
Install
Prepare external services, Kubernetes secrets, and environment-specific values first. Replace <env> with your own values directory. The checked-inlocal overlays are for local development, not production deployment.
helm dependency update infra/helm/apps/api
helm dependency update infra/helm/apps/worker
helm dependency update infra/helm/apps/console
helm upgrade --install api infra/helm/apps/api -n kyndex --create-namespace \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/api.values.yaml
helm upgrade --install worker infra/helm/apps/worker -n kyndex \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/worker.values.yaml
helm upgrade --install console infra/helm/apps/console -n kyndex \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/console.values.yamlThe worker chart runs Alembic migrations in an init container when a worker pod starts. Confirm the worker becomes ready before relying on the API. The console ingress routes/v2 and /health to the API by default; adjust paths and ingress settings for your environment.
Upgrading
helm upgrade --install worker infra/helm/apps/worker -n kyndex \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/worker.values.yaml
helm upgrade --install api infra/helm/apps/api -n kyndex \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/api.values.yaml
helm upgrade --install console infra/helm/apps/console -n kyndex \
-f infra/environments/<env>/common.values.yaml \
-f infra/environments/<env>/console.values.yaml
Restricted or disconnected environments
The repository does not provide a turnkey air-gapped deployment. You would need to mirror and validate application images and model/parser artifacts, configure internal endpoints, and supply all dependencies and credentials. Hosted providers require outbound connectivity.
Need the exact console chart keys?
The Helm Reference page covers commonly used values from infra/helm/apps/console/values.yaml.