Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
66 changes: 66 additions & 0 deletions charts/openab/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# 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.<name>`.

| 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 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
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.
10 changes: 10 additions & 0 deletions charts/openab/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand All @@ -42,6 +49,7 @@ agents:
# enabled: true
# storageClass: ""
# size: 1Gi
# # Mount a custom AGENTS.md file. Useful with --set-file.
# agentsMd: ""
# resources: {}
# nodeSelector: {}
Expand All @@ -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
Expand All @@ -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: {}
Expand Down