From f1a33110710d9c558a00f3ed397d9e821c40ae2e Mon Sep 17 00:00:00 2001 From: Chih-Kang Lin <8790142+chihkang@users.noreply.github.com> Date: Mon, 13 Apr 2026 07:29:14 +0000 Subject: [PATCH 1/2] docs(helm): document supported chart values --- README.md | 2 ++ charts/openab/README.md | 64 +++++++++++++++++++++++++++++++++++++++ charts/openab/values.yaml | 10 ++++++ 3 files changed, 76 insertions(+) create mode 100644 charts/openab/README.md diff --git a/README.md b/README.md index 6ad1dbcd..76684d4e 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,8 @@ helm install openab openab/openab \ --set-string 'agents.kiro.discord.allowedChannels[0]=YOUR_CHANNEL_ID' ``` +For additional Helm values such as `fullnameOverride`, `nameOverride`, `envFrom`, and `agentsMd`, see [charts/openab/README.md](charts/openab/README.md). + ### 3. Authenticate (first time only) ```bash diff --git a/charts/openab/README.md b/charts/openab/README.md new file mode 100644 index 00000000..9c40abe8 --- /dev/null +++ b/charts/openab/README.md @@ -0,0 +1,64 @@ +# openab Helm Chart + +This chart deploys one or more OpenAB agents on Kubernetes. + +## Values Reference + +### Release naming + +| Value | Description | Default | +|-------|-------------|---------| +| `nameOverride` | Override the chart name portion used in generated resource names. | `""` | +| `fullnameOverride` | Override the full generated release name for chart resources. Useful when deploying multiple instances with predictable names. | `""` | + +### Agent values + +Each agent lives under `agents.`. + +| Value | Description | Default | +|-------|-------------|---------| +| `discord.botToken` | Discord bot token for the agent. | `""` | +| `discord.allowedChannels` | Channel allowlist. Use `--set-string` for Discord IDs. | `["YOUR_CHANNEL_ID"]` | +| `discord.allowedUsers` | User allowlist. Empty means allow all users. Use `--set-string` for Discord IDs. | `[]` | +| `workingDir` | Working directory and HOME inside the container. | `"/home/agent"` | +| `env` | Inline environment variables passed to the agent process. | `{}` | +| `envFrom` | Additional environment sources from existing Secrets or ConfigMaps. | `[]` | +| `agentsMd` | Contents of `AGENTS.md` mounted into the working directory. | `""` | + +## Examples + +### Override generated names + +```bash +helm install my-openab openab/openab \ + --set fullnameOverride=my-openab \ + --set agents.kiro.discord.botToken="$DISCORD_BOT_TOKEN" \ + --set-string 'agents.kiro.discord.allowedChannels[0]=YOUR_CHANNEL_ID' +``` + +### Load credentials with `envFrom` + +```yaml +agents: + kiro: + envFrom: + - secretRef: + name: openab-agent-secrets + - configMapRef: + name: openab-agent-config +``` + +This is useful for credentials such as `GH_TOKEN` without storing them directly in Helm values. + +### Provide `AGENTS.md` with `--set-file` + +```bash +helm install openab openab/openab \ + --set agents.kiro.discord.botToken="$DISCORD_BOT_TOKEN" \ + --set-string 'agents.kiro.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \ + --set-file agents.kiro.agentsMd=./AGENTS.md +``` + +### Discord ID precision warning + +Discord IDs must be set with `--set-string`, not `--set`. Otherwise Helm may coerce them into numbers and lose precision. diff --git a/charts/openab/values.yaml b/charts/openab/values.yaml index 956374cb..ee75bf9a 100644 --- a/charts/openab/values.yaml +++ b/charts/openab/values.yaml @@ -4,6 +4,12 @@ image: tag: "" pullPolicy: IfNotPresent +# Override the chart name used in generated resource names. +nameOverride: "" + +# Override the full release name used in generated resource names. +fullnameOverride: "" + podSecurityContext: runAsNonRoot: true runAsUser: 1000 @@ -31,6 +37,7 @@ agents: # allowedUsers: [] # workingDir: /home/agent # env: {} + # # Load env vars from existing Secrets or ConfigMaps, e.g. GH_TOKEN. # envFrom: [] # pool: # maxSessions: 10 @@ -42,6 +49,7 @@ agents: # enabled: true # storageClass: "" # size: 1Gi + # # Mount a custom AGENTS.md file. Useful with --set-file. # agentsMd: "" # resources: {} # nodeSelector: {} @@ -62,6 +70,7 @@ agents: allowedUsers: [] # empty = allow all users (default) workingDir: /home/agent env: {} + # Load env vars from existing Secrets or ConfigMaps, e.g. GH_TOKEN. envFrom: [] pool: maxSessions: 10 @@ -78,6 +87,7 @@ agents: enabled: true storageClass: "" size: 1Gi # defaults to 1Gi if not set + # Mount a custom AGENTS.md file. Useful with --set-file. agentsMd: "" resources: {} nodeSelector: {} From adbfd50205b6110848c60d017a07dc9a3e31d027 Mon Sep 17 00:00:00 2001 From: Chih-Kang Lin <8790142+chihkang@users.noreply.github.com> Date: Mon, 13 Apr 2026 08:50:23 +0000 Subject: [PATCH 2/2] docs(helm): clarify fullnameOverride example --- charts/openab/README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/charts/openab/README.md b/charts/openab/README.md index 9c40abe8..0cb90903 100644 --- a/charts/openab/README.md +++ b/charts/openab/README.md @@ -30,12 +30,14 @@ Each agent lives under `agents.`. ### Override generated names ```bash -helm install my-openab openab/openab \ +helm install prod openab/openab \ --set fullnameOverride=my-openab \ --set agents.kiro.discord.botToken="$DISCORD_BOT_TOKEN" \ --set-string 'agents.kiro.discord.allowedChannels[0]=YOUR_CHANNEL_ID' ``` +This makes generated resource names use `my-openab` (for example `my-openab-kiro`) instead of the default `prod-openab`. + ### Load credentials with `envFrom` ```yaml