For the complete documentation index, see llms.txt. Markdown versions of all docs pages are available by appending .md to any docs URL.

Helm values

Page as Markdown

Configuration values for the agentregistry Helm chart.

Every value the agentregistry Helm chart accepts, with its type and default. Override them with --set key=value on the install command, or by passing a values file with -f.

KeyTypeDefaultDescription
affinityobject{}Affinity rules for pod assignment (overrides preset if set)
argslist[]Override default container args (evaluated as a template)
automountServiceAccountTokenbooltrueMount the service account token in the pod
commandlist[]Override default container command (evaluated as a template)
commonAnnotationsobject{}Annotations to add to all deployed resources
commonLabelsobject{}Labels to add to all deployed resources
config.agentRegistryMcpPortstring"31313"Agent Registry MCP server port
config.enableRegistryValidationstring"false"Enable input validation on the registry API
config.serverAddressstring":8080"Listen address for the HTTP server
containerSecurityContext.allowPrivilegeEscalationboolfalseAllow privilege escalation
containerSecurityContext.capabilities.droplist["ALL"]Linux capabilities to drop
containerSecurityContext.enabledbooltrueEnable container-level security context
containerSecurityContext.readOnlyRootFilesystembooltrueMount root filesystem as read-only
containerSecurityContext.runAsGroupint1001Group ID to run the container as
containerSecurityContext.runAsNonRootbooltruePrevent running as root
containerSecurityContext.runAsUserint1001User ID to run the container as
containerSecurityContext.seccompProfile.typestring"RuntimeDefault"Seccomp profile type
database.postgres.bundledobject{"image":{"name":"postgres","pullPolicy":"IfNotPresent","registry":"docker.io","repository":"library","tag":"18"},"resources":{"limits":{"cpu":"1","memory":"1Gi"},"requests":{"cpu":"250m","memory":"256Mi"}},"storage":"5Gi","storageClass":""}Bundled PostgreSQL — dev/eval only. Only consumed when type: bundled.
database.postgres.bundled.image.namestring"postgres"Bundled PostgreSQL image name
database.postgres.bundled.image.pullPolicystring"IfNotPresent"Bundled PostgreSQL image pull policy
database.postgres.bundled.image.registrystring"docker.io"Bundled PostgreSQL image registry
database.postgres.bundled.image.repositorystring"library"Bundled PostgreSQL image repository (org/namespace)
database.postgres.bundled.image.tagstring"18"Bundled PostgreSQL image tag
database.postgres.bundled.resourcesobject{"limits":{"cpu":"1","memory":"1Gi"},"requests":{"cpu":"250m","memory":"256Mi"}}Resource requests/limits for the bundled PostgreSQL container
database.postgres.bundled.storagestring"5Gi"PersistentVolumeClaim size for the bundled PostgreSQL data directory
database.postgres.bundled.storageClassstring""StorageClass for the bundled PostgreSQL PersistentVolumeClaim. Leave empty ("") to use the cluster default StorageClass.
database.postgres.externalobject{"secretRef":{"key":"AGENT_REGISTRY_DATABASE_URL","name":""},"url":""}External (BYO) PostgreSQL configuration. Only consumed when type: external.
database.postgres.external.secretRefobject{"key":"AGENT_REGISTRY_DATABASE_URL","name":""}Source the connection string from an existing Secret instead of inlining it. Use this when credentials are managed by an external secret store (e.g. AWS Secrets Manager via External Secrets Operator) and synced into the cluster as a Secret. The chart does not create or manage this Secret. Mutually exclusive with external.url. On credential rotation, Kubernetes does NOT auto-restart the pod — pair with a controller such as stakater/Reloader if you need automatic restarts on Secret content changes.
database.postgres.external.secretRef.keystring"AGENT_REGISTRY_DATABASE_URL"Key within the Secret that holds the connection string.
database.postgres.external.secretRef.namestring""Name of an existing Secret in the release namespace. Leave empty to disable.
database.postgres.external.urlstring""Inline connection string. Mutually exclusive with external.secretRef.name.
database.postgres.typestring"bundled"Backend type: “bundled” (deploy the chart’s in-cluster dev/eval Postgres pod) or “external” (connect to a Postgres you bring yourself; configure under external below).
dnsConfigobject{}DNS configuration for the pod
dnsPolicystring""DNS policy for the pod
extraEnvVarslist[]Array of extra environment variables for the Agent Registry container. Additive only — cannot override env vars the chart already renders. For credentialed fields use the dedicated knobs (e.g. database.postgres.external.secretRef).
fullnameOverridestring""Override the full name of the chart
global.imagePullSecretslist[]Global Docker registry secret names
global.imageRegistrystring""Global container image registry override
hostAliaseslist[]Add custom entries to /etc/hosts
image.digeststring""Agent Registry image digest (overrides tag if set)
image.namestring"server"Agent Registry image name
image.pullPolicystring"IfNotPresent"Agent Registry image pull policy
image.pullSecretslist[]Agent Registry image pull secrets
image.registrystring"ghcr.io"Agent Registry image registry
image.repositorystring"agentregistry-dev/agentregistry"Agent Registry image repository (org/path, excluding the image name)
image.tagstring""Agent Registry image tag (immutable tags recommended). Leave empty to use .Chart.AppVersion.
lifecycleHooksobject{}Lifecycle hooks for the Agent Registry container
livenessProbe.enabledbooltrueEnable liveness probe
livenessProbe.failureThresholdint6Failure threshold for liveness check
livenessProbe.initialDelaySecondsint30Initial delay before liveness check
livenessProbe.periodSecondsint10Period between liveness checks
livenessProbe.successThresholdint1Success threshold for liveness check
livenessProbe.timeoutSecondsint5Timeout for the liveness check
nameOverridestring""Override the name of the chart
nodeAffinityPreset.keystring""Node label key for affinity
nodeAffinityPreset.typestring""Node affinity preset type (soft or hard)
nodeAffinityPreset.valueslist[]Node label values for affinity
nodeSelectorobject{}Node labels for pod assignment
podAffinityPresetstring""Pod affinity preset (soft or hard)
podAnnotationsobject{}Extra annotations for Agent Registry pods
podAntiAffinityPresetstring"soft"Pod anti-affinity preset (soft or hard)
podLabelsobject{}Extra labels for Agent Registry pods
podSecurityContext.enabledbooltrueEnable pod-level security context
podSecurityContext.fsGroupint1001Group ID for the pod filesystem
podSecurityContext.fsGroupChangePolicystring"Always"Policy for changing fsGroup ownership
priorityClassNamestring""Priority class name for the Agent Registry pods
rbac.enabledbooltrueEnable RBAC resource creation
rbac.watchedNamespaceslist[]Namespaces Agent Registry is permitted to manage resources in. Empty list grants cluster-wide access via ClusterRole (default). Set to one or more namespaces to create a Role in each and restrict access accordingly. Note: read access to the cluster scoped APIs is always granted via ClusterRole regardless of this setting.
readinessProbe.enabledbooltrueEnable readiness probe
readinessProbe.failureThresholdint3Failure threshold for readiness check
readinessProbe.initialDelaySecondsint10Initial delay before readiness check
readinessProbe.periodSecondsint5Period between readiness checks
readinessProbe.successThresholdint1Success threshold for readiness check
readinessProbe.timeoutSecondsint3Timeout for the readiness check
replicaCountint1Number of Agent Registry replicas
resourcesobject{"limits":{"cpu":"1","memory":"1Gi"},"requests":{"cpu":"250m","memory":"256Mi"}}Resource requests and limits for the Agent Registry container
revisionHistoryLimitint10Number of old ReplicaSets to retain
schedulerNamestring""Name of the scheduler to use
secretStoreobject{"encryptionKeySecretRef":{"key":"SECRET_STORE_ENCRYPTION_KEY","name":""},"type":"Kubernetes"}Backend used to persist Secret resource payloads.
secretStore.encryptionKeySecretRefobject{"key":"SECRET_STORE_ENCRYPTION_KEY","name":""}Existing Secret containing the hex-encoded 32-byte AES-256 key for Database.
secretStore.encryptionKeySecretRef.keystring"SECRET_STORE_ENCRYPTION_KEY"Key containing the encryption key.
secretStore.encryptionKeySecretRef.namestring""Name of the Secret in the install namespace.
secretStore.typestring"Kubernetes"“Kubernetes” stores core/v1.Secrets; “Database” encrypts payloads in Postgres.
service.annotationsobject{}Service annotations
service.clusterIPstring""Specific cluster IP (set to None for headless)
service.externalTrafficPolicystring"Cluster"External traffic policy
service.loadBalancerIPstring""LoadBalancer IP
service.loadBalancerSourceRangeslist[]LoadBalancer allowed source ranges
service.nodePorts.httpstring""NodePort for HTTP (when type is NodePort)
service.nodePorts.mcpstring""NodePort for MCP (when type is NodePort)
service.ports.httpint12121HTTP port
service.ports.mcpint31313MCP HTTP port
service.sessionAffinitystring"None"Session affinity (None or ClientIP)
service.sessionAffinityConfigobject{}Session affinity configuration
service.targetPorts.httpint8080HTTP container target port
service.targetPorts.mcpint31313MCP container target port
service.typestring"ClusterIP"Kubernetes Service type
serviceAccount.annotationsobject{}ServiceAccount annotations
serviceAccount.automountServiceAccountTokenbooltrueMount API token in the ServiceAccount
serviceAccount.createbooltrueCreate a dedicated ServiceAccount
serviceAccount.namestring""Override the auto-generated ServiceAccount name
startupProbe.enabledbooltrueEnable startup probe
startupProbe.failureThresholdint30Failure threshold for startup check (controls max startup time)
startupProbe.initialDelaySecondsint5Initial delay before startup check
startupProbe.periodSecondsint5Period between startup checks
startupProbe.successThresholdint1Success threshold for startup check
startupProbe.timeoutSecondsint3Timeout for the startup check
terminationGracePeriodSecondsstring""Seconds the pod needs to terminate gracefully
tolerationslist[]Tolerations for pod assignment
topologySpreadConstraintslist[]Topology spread constraints for pod assignment