Skip to main content
This page is a reference for configuring the bud Helm chart — the platform application. It is the chart published at oci://registry.bud.studio/charts/bud and sourced in this repo at infra/charts/bud/.
The chart does NOT bundle the databases. Postgres, ClickHouse, Kafka, MongoDB, Valkey and S3 (SeaweedFS) are deployed separately — as in-cluster addon charts (see the Installation Guide) or as managed services you already run (see the Deployment Guide). The bud chart only holds connection settings for them, under externalServices (below). There are no postgresql.* / seaweedfs.* / kafka.* / clickhouse.* subchart values.
Source of truth. Defaults drift between releases. For the authoritative, version-exact list, dump the values from the chart you are installing:
The tables below describe the most commonly-set keys; they are not exhaustive.

How values are supplied

The chart is installed from the OCI registry, with your configuration layered on top. Two files, merged in order (later overrides earlier):
Under ArgoCD (Installation Guide) the same two files are delivered to the chart via a $values config-repo source instead of -f flags.
The chart ships two reference secret files, secrets.bud.yaml and secrets.demo.yaml (helm pull oci://registry.bud.studio/charts/bud --version 0.14.5 --untar to get them). Both are SOPS-encrypted — values show as ENC[...] — so they are not drop-in templates. Use secrets.bud.yaml to see the full set of required key paths, then author your own secrets.yaml with plaintext values (see the Deployment Guide).

Global Configuration


Ingress Configuration

Ingresses are pinned to ingressClassName: traefik. With https: internal the chart annotates them kubernetes.io/tls-acme: "true", resolved by cert-manager’s default ClusterIssuer (letsencrypt-http01, the HTTP-01 challenge — hosts must be publicly reachable on :80).

Storage Configuration


External Services

Connection settings for the databases and object storage the platform consumes. The in-cluster defaults point at the addon charts deployed by the Installation Guide; override the hosts (and put passwords in secrets.yaml) for managed services.

PostgreSQL (externalServices.postgresql)

Databases (one per service): budapp, budcluster, budmetrics, budmodel, budsim, budeval, buddoc, budprompt, budask, budcodeinterpreter, mcpgateway, budpipeline, onyx.

ClickHouse (externalServices.clickhouse)

Valkey / Redis (externalServices.valkey)

S3 / object storage (externalServices.s3)

Works with SeaweedFS (default), AWS S3, Azure Blob via an S3 gateway, or any other S3-compatible store.

MongoDB (externalServices.mongodb)

Kafka (externalServices.kafka)

OIDC (externalServices.oidc)

budapp validates ID tokens via OIDC discovery and stores authorization in its own Postgres PDP; the IdP only issues tokens.
The bundled Keycloak admin credentials live under the top-level keycloak.auth block (adminUser / adminPassword), consulted only when you run the sibling keycloak chart. They are not budapp’s issuer config — that is externalServices.oidc.url.

Microservices

Every backend/frontend service lives under microservices.<name> with at least enabled, image, and (for backends) daprid. Images default to registry.bud.studio/runtime/<service>:<appVersion>, where <appVersion> is the chart’s appVersion (0.14.5 at the time of writing) — except where noted (mcpgateway and budsentinel track different tags). Backend pods run a Dapr sidecar (expect 2/2 READY).
Image tags above are the chart’s published defaults; per-environment overlays (e.g. dev) pin services to :nightly and may toggle enabled. Always confirm against helm show values for the exact release.

OpenTelemetry Collector


Onyx (optional)

AI knowledge assistant; disabled by default. Onyx reuses the platform’s Postgres/Valkey/S3 via externalServices — its own bundled datastores and web-server subcharts stay disabled.

Dapr

Dapr is not bundled; install it cluster-wide before deploying Bud-Stack.
daprExtra.crypto.symmetricKey / .asymmetricKey hold the Dapr crypto-component keys used for cluster-credential encryption — generate your own (see the Deployment Guide).

Secrets Management (SOPS)

For GitOps, keep secrets.yaml encrypted with SOPS + age.

Installation Guide

Full in-cluster install with bundled dependency charts (ArgoCD).

Deployment Guide

Install against managed/external databases; per-service secret reference.