Kyndex
/Docs
Request a Demo
Deployment

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

Kubernetes and Helm: Use versions supported by your cluster and chart tooling.
PostgreSQL with pgvector: Configure database credentials and persistent storage.
Redis: Provide a reachable Redis endpoint for the worker.
Authentication: Configure Supabase or the supported OIDC provider.
Model and parsing services: Configure the providers selected for generation, embeddings, and document parsing.
Ingress or direct service access: The console chart defaults to nginx ingress; adapt it to your cluster.

Deployment topology

Console

3000

The customer-facing Next.js dashboard. Users log in here, upload knowledge, run queries, and approve actions.

API

8000

The FastAPI application that owns auth-aware reads and writes, RAG orchestration, and governed action workflows.

Worker

background

Taskiq processes handle document ingestion and background jobs. The chart also defines a scheduler deployment; its dashboard is disabled by default.

Postgres + pgvector

5432

Relational and vector storage. Provide a PostgreSQL deployment with pgvector that is compatible with the migrations.

Redis

6379

Queue 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.yaml

Shared 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.yaml

The 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.