Skip to content

Commit 41e2130

Browse files
author
chaodu-agent
committed
feat(chart,docs): migrate to unified image tag format openab:<tag>-<agent>
- Update _helpers.tpl agentImage to produce openab:<tag>-<agent> for non-kiro agents (kiro stays openab:<tag> as default) - Remove per-agent image overrides from values.yaml examples (chart auto-resolves now) - Rewrite docs/image-tags.md with unified tag convention and migration table - Update all agent docs to remove --set image lines (no longer needed) - Update docker pull examples to use openab:beta-<agent> format Part of #1175 follow-up. Backward-compatible: explicit image override still works for custom registries.
1 parent 0e12195 commit 41e2130

18 files changed

Lines changed: 80 additions & 47 deletions

charts/openab/templates/_helpers.tpl

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,12 @@ app.kubernetes.io/component: {{ .agent }}
5656
{{- end -}}
5757
{{- end }}
5858

59-
{{/* Resolve image: agent-level string override → global default (repository:tag, tag defaults to appVersion).
60-
Caveat: "contains :" treats registry ports (e.g. my-registry:5000/img) as tagged.
61-
Not an issue for ghcr.io / Docker Hub; revisit if custom registries with ports are needed. */}}
59+
{{/* Resolve image: agent-level string override → unified default (repository:<tag>-<agent>).
60+
When no per-agent image override is set, produces:
61+
ghcr.io/openabdev/openab:<tag>-<agent> (e.g. openab:beta-claude)
62+
ghcr.io/openabdev/openab:<tag> (for kiro, the default agent)
63+
Per-agent image override (string with ":") is used verbatim for full backward compat.
64+
Call with: dict "ctx" $ "agent" $name "cfg" $cfg */}}
6265
{{- define "openab.agentImage" -}}
6366
{{- if and .cfg.image (kindIs "string" .cfg.image) (ne .cfg.image "") }}
6467
{{- if contains ":" .cfg.image }}
@@ -68,7 +71,11 @@ app.kubernetes.io/component: {{ .agent }}
6871
{{- end }}
6972
{{- else }}
7073
{{- $tag := default .ctx.Chart.AppVersion .ctx.Values.image.tag }}
74+
{{- if eq .agent "kiro" }}
7175
{{- printf "%s:%s" .ctx.Values.image.repository $tag }}
76+
{{- else }}
77+
{{- printf "%s:%s-%s" .ctx.Values.image.repository $tag .agent }}
78+
{{- end }}
7279
{{- end }}
7380
{{- end }}
7481

charts/openab/values.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ agents:
9595
# nodeSelector: {}
9696
# tolerations: []
9797
# affinity: {}
98-
# image: "ghcr.io/openabdev/openab-claude" # tag omitted → auto-appends appVersion
98+
# image: "" # leave empty → auto-resolves to openab:<tag>-claude (unified format)
9999
# opencode:
100100
# command: opencode
101101
# args:
@@ -125,7 +125,7 @@ agents:
125125
# size: 1Gi
126126
# agentsMd: ""
127127
# resources: {}
128-
# image: "ghcr.io/openabdev/openab-opencode:latest"
128+
# image: "" # leave empty → auto-resolves to openab:<tag>-opencode
129129
# pi:
130130
# command: pi-acp
131131
# discord:
@@ -152,7 +152,7 @@ agents:
152152
# enabled: true
153153
# storageClass: ""
154154
# size: 1Gi
155-
# image: "ghcr.io/openabdev/openab-pi:latest"
155+
# image: "" # leave empty → auto-resolves to openab:<tag>-pi
156156
# cursor:
157157
# command: cursor-agent
158158
# args:
@@ -183,7 +183,7 @@ agents:
183183
# existingClaim: "" # set to reuse an existing PVC (skips PVC creation)
184184
# storageClass: ""
185185
# size: 1Gi
186-
# image: "ghcr.io/openabdev/openab-cursor:latest"
186+
# image: "" # leave empty → auto-resolves to openab:<tag>-cursor
187187
# hermes:
188188
# command: hermes-acp
189189
# discord:
@@ -204,7 +204,7 @@ agents:
204204
# enabled: true
205205
# storageClass: ""
206206
# size: 1Gi
207-
# image: "ghcr.io/openabdev/openab-hermes"
207+
# image: "" # leave empty → auto-resolves to openab:<tag>-hermes
208208
# grok:
209209
# command: grok
210210
# args:
@@ -232,7 +232,7 @@ agents:
232232
# enabled: true
233233
# storageClass: ""
234234
# size: 1Gi
235-
# image: "ghcr.io/openabdev/openab-grok"
235+
# image: "" # leave empty → auto-resolves to openab:<tag>-grok
236236
image: ""
237237
# configUrl: when set, openab uses `-c <URL>` to fetch config remotely
238238
# instead of mounting the chart-generated ConfigMap. The ConfigMap and its

docs/agentcore.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,10 +84,10 @@ args = ["agentcore-bridge", "--runtime-arn", "arn:aws:...", "--region", "us-east
8484

8585
## Docker Image
8686

87-
Use `ghcr.io/openabdev/openab-agentcore` — a minimal image (~20MB) with only the OAB binary. No Python, no coding CLI bundled.
87+
Use `ghcr.io/openabdev/openab:beta-agentcore` — a minimal image (~20MB) with only the OAB binary. No Python, no coding CLI bundled.
8888

8989
```bash
90-
docker pull ghcr.io/openabdev/openab-agentcore:latest
90+
docker pull ghcr.io/openabdev/openab:beta-agentcore
9191
```
9292

9393
## Deploying a Kiro Runtime

docs/antigravity.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ agents:
6969
args: []
7070
workingDir: "/home/agent"
7171
image:
72-
repository: ghcr.io/openabdev/openab-antigravity
72+
repository: ghcr.io/openabdev/openab:beta-antigravity
7373
tag: "latest"
7474
```
7575

docs/claude-code.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ helm install openab openab/openab \
1717
--set agents.kiro.enabled=false \
1818
--set agents.claude.discord.botToken="$DISCORD_BOT_TOKEN" \
1919
--set-string 'agents.claude.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
20-
--set agents.claude.image=ghcr.io/openabdev/openab-claude:latest \
2120
--set agents.claude.command=claude-agent-acp \
2221
--set agents.claude.workingDir=/home/node
2322
```

docs/codex.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ helm install openab openab/openab \
2121
--set agents.codex.discord.enabled=true \
2222
--set agents.codex.discord.botToken="$DISCORD_BOT_TOKEN" \
2323
--set-string 'agents.codex.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
24-
--set agents.codex.image=ghcr.io/openabdev/openab-codex:latest \
2524
--set agents.codex.command=codex-acp \
2625
--set agents.codex.workingDir=/home/node
2726
```

docs/copilot.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ helm install openab-copilot openab/openab \
5959
--set agents.copilot.discord.botToken="$DISCORD_BOT_TOKEN" \
6060
--set-string 'agents.copilot.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
6161
--set agents.copilot.discord.enabled=true \
62-
--set agents.copilot.image=ghcr.io/openabdev/openab-copilot \
6362
--set agents.copilot.command=copilot \
6463
--set 'agents.copilot.args={--acp,--stdio}' \
6564
--set agents.copilot.persistence.enabled=true \
@@ -129,7 +128,6 @@ helm install openab-copilot openab/openab \
129128
--set agents.copilot.discord.enabled=true \
130129
--set agents.copilot.discord.botToken="$DISCORD_BOT_TOKEN" \
131130
--set-string 'agents.copilot.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
132-
--set agents.copilot.image=ghcr.io/openabdev/openab-copilot \
133131
--set agents.copilot.command=copilot \
134132
--set 'agents.copilot.args={--acp,--stdio}' \
135133
--set agents.copilot.persistence.enabled=true \

docs/cursor.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ helm install openab openab/openab \
6363
--set agents.kiro.enabled=false \
6464
--set agents.cursor.discord.botToken="$DISCORD_BOT_TOKEN" \
6565
--set-string 'agents.cursor.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
66-
--set agents.cursor.image=ghcr.io/openabdev/openab-cursor:latest \
6766
--set agents.cursor.command=cursor-agent \
6867
--set 'agents.cursor.args={acp}' \
6968
--set agents.cursor.persistence.enabled=true \

docs/gemini.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ helm install openab openab/openab \
1818
--set agents.gemini.discord.enabled=true \
1919
--set agents.gemini.discord.botToken="$DISCORD_BOT_TOKEN" \
2020
--set-string 'agents.gemini.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
21-
--set agents.gemini.image=ghcr.io/openabdev/openab-gemini:latest \
2221
--set agents.gemini.command=gemini \
2322
--set agents.gemini.args='{--acp}' \
2423
--set agents.gemini.workingDir=/home/node

docs/grok.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ helm install openab openab/openab \
1818
--set agents.grok.discord.enabled=true \
1919
--set agents.grok.discord.botToken="$DISCORD_BOT_TOKEN" \
2020
--set-string 'agents.grok.discord.allowedChannels[0]=YOUR_CHANNEL_ID' \
21-
--set agents.grok.image=ghcr.io/openabdev/openab-grok:latest \
2221
--set agents.grok.command=grok \
2322
--set-string 'agents.grok.args[0]=agent' \
2423
--set-string 'agents.grok.args[1]=stdio' \

0 commit comments

Comments
 (0)