Skip to content

feat: support custom debugImage in Helm chart#102

Merged
jacoblee-io merged 1 commit intomainfrom
feat/debug-image-helm
Mar 13, 2026
Merged

feat: support custom debugImage in Helm chart#102
jacoblee-io merged 1 commit intomainfrom
feat/debug-image-helm

Conversation

@jacoblee-io
Copy link
Collaborator

Summary

  • Add agentbox.debugImage to Helm values.yaml for specifying a private registry image used by node_exec/node_script debug pods
  • Gateway deployment template injects SICLAW_DEBUG_IMAGE env when set
  • Gateway /api/internal/settings endpoint includes debugImage in the exported config so AgentBox picks it up via settings.json

Without this, debug pods always pull busybox:latest from Docker Hub, which fails in air-gapped or private-registry environments.

Config flow: Helm valuesGateway env/api/internal/settingsAgentBox settings.jsonloadConfig().debugImage

Usage:

agentbox:
  debugImage: "my-registry.example.com/debug-image:latest"

Test plan

  • npx tsc --noEmit passes
  • All 864 tests pass
  • Deploy with agentbox.debugImage set, verify node_script uses the configured image
  • Deploy without agentbox.debugImage, verify fallback to busybox:latest

Add agentbox.debugImage to values.yaml so operators can specify a
private registry image for node_exec/node_script debug pods.

The value flows: Helm → Gateway env SICLAW_DEBUG_IMAGE →
/api/internal/settings → AgentBox settings.json → loadConfig().debugImage.

Without this, debug pods always pull busybox:latest from Docker Hub,
which fails in air-gapped or private-registry environments.
Copy link
Collaborator

@LikiosSedo LikiosSedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Config flow is end-to-end verified:

Helm values.yaml (agentbox.debugImage)
  → Gateway env (SICLAW_DEBUG_IMAGE)
  → /api/internal/settings response
  → AgentBox settings.json → loadConfig().debugImage
  → node-exec / node-script / pod-nsenter-exec / netns-script / exec-utils

All downstream consumers already read loadConfig().debugImage with busybox:latest fallback. No code changes needed on the AgentBox side.

Minor note (non-blocking): debugImage is injected into the exportSettingsConfig() response alongside model/provider config, which is a slight mix of concerns. But metricsPort follows the same pattern, so this is consistent with the existing approach.

@jacoblee-io jacoblee-io merged commit 2e03b54 into main Mar 13, 2026
3 checks passed
@jacoblee-io jacoblee-io deleted the feat/debug-image-helm branch March 13, 2026 08:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants