← Schema index / Config Reference

nodes schema (451-498)

Canonical generated docsThis section is generated from caco config schema --json. The table below preserves the runtime field path, type, required/default markers, and canonical description for every value in this slice.

Node definitions — machines in the cluster.

Field pathTypeRequiredDefaultCanonical description
└ nodes.services.caco-git-daemon.transport.kindstringoptionalautoLocal transport: auto, unix, named_pipe, or loopback.
└ nodes.services.caco-git-daemon.transport.endpointstringoptionalExplicit socket, pipe, or loopback endpoint.
└ nodes.services.caco-daemon-extra-envmap[string, string]optionalNode-scoped overlay of services.caco-daemon-extra-env, merged per-key over the global map at daemon launch (node wins) so a node can set daemon process env without a fleet-wide change.
└ nodes.actionsmap[string, map]optionalNode-scoped actions keyed by action name.
└ nodes.actions.<action-name>mapoptionalNode action entry.
└ nodes.actions.<action-name>.typestringrequiredAction type (currently only 'command').
└ nodes.actions.<action-name>.commandstringrequiredShell command to execute.
└ nodes.actions.<action-name>.descriptionstringoptionalHuman-readable description.
└ nodes.actions.<action-name>.roles_permittedlist[string]optionalRoles/profiles allowed to invoke (e.g. 'operator', 'profile:<name>').
└ nodes.actions.<action-name>.cwdstringoptionalWorking directory for command execution.
└ nodes.actions.<action-name>.timeout_secsu64optional300Timeout in seconds for command execution.
└ nodes.actions.<action-name>.idempotentbooloptionalfalseWhether exact replay is safe after restart.
└ nodes.actions.<action-name>.checkstringoptionalSide-effect-free shell command that exercises the action's prerequisites; run by 'caco action check'.
└ nodes.updatesmapoptionalSparse node-scoped update overrides; omitted fields inherit the top-level updates policy.
└ nodes.updates.auto_updatebooloptionalinherit updates.auto_updateOverride automatic release downloads for this node.
└ nodes.updates.channelstringoptionalinherit updates.channelRelease channel override.
└ nodes.updates.github_repostringoptionalinherit updates.github_repoGitHub repository override in owner/repo form.
└ nodes.updates.identitystringoptionalinherit updates.identityIdentity override for gh auth token resolution.
└ nodes.updates.restart_on_updatebooloptionalinherit updates.restart_on_updateOverride automatic daemon restart after update.
└ nodes.updates.restart_grace_period_secsu64optionalinherit updates.restart_grace_period_secsOverride the grace period before restart.
└ nodes.updates.force_restart_on_updatebooloptionalinherit updates.force_restart_on_updateOverride forced restart while transient agents run.
└ nodes.updates.launcher_archive_countusizeoptionalinherit updates.launcher_archive_countOverride previous launcher retention for rollback.
└ nodes.updates.stabilize_timeout_secsu64optionalinherit updates.stabilize_timeout_secsOverride restart/update health stabilization timeout.
└ nodes.updates.androidmapoptionalinherit updates.androidOverride configured Android companion APK update targets.
└ nodes.updates.android.autobooloptionalfalseEnable configured Android companion APK updates during update orchestration.
└ nodes.updates.android.packagestringoptionalcom.cacophony.companionAndroid package name to inspect/install.
└ nodes.updates.android.artifactstringoptionalcacophony-companion.apkGitHub release APK asset name.
└ nodes.updates.android.targetslist[map]optionalExplicit adb update targets.
└ nodes.updates.android.targets.namestringoptionalOptional target name.
└ nodes.updates.android.targets.host_nodestringoptionalNode that owns adb connectivity; omitted means local node.
└ nodes.updates.android.targets.serialstringrequiredadb serial such as sgu24:5555.
└ nodes.updates.android.targets.enabledbooloptionaltrueWhether this target participates in update checks/installs.
└ nodes.health_expectationsmapoptionalExpected node-health deviations for operator-facing peer summaries.
└ nodes.health_expectations.expected_unreachablebooloptionalfalseTreat unreachable peer status as expected/non-actionable for this node.
└ nodes.health_expectations.expected_mismatchbooloptionalfalseTreat mismatch peer status as expected/non-actionable for this node.
└ nodes.health_expectations.expected_degradedbooloptionalfalseTreat degraded peer status as expected/non-actionable for this node.
└ nodes.health_expectations.notestringoptionalOptional operator-facing note explaining the expected health deviation.
└ nodes.interactive_defaultsmap[string, map]optionalNode-level interactive agent defaults keyed by runtime type.
└ nodes.interactive_defaults.<runtime-type>mapoptionalDefaults for a specific runtime type.
└ nodes.interactive_defaults.<runtime-type>.projectstringoptionalDefault project for interactive sessions when --project is not provided.
└ nodes.interactive_defaults.<runtime-type>.profilestring | list[string]optionalDefault profile or profile composition list.
└ nodes.interactive_defaults.<runtime-type>.goalstringoptionalDefault goal / task description. Supports {{project}}, {{node}} template expressions.
└ nodes.interactive_defaults.<runtime-type>.modelstringoptionalDefault model override.
└ nodes.interactive_defaults.<runtime-type>.providerstringoptionalDefault provider override.
└ nodes.interactive_defaults.<runtime-type>.envmap[string, string]optionalAdditional environment variables to inject.
└ nodes.interactive_defaults.<runtime-type>.mcp_serverslist[string]optionalAdditional MCP server names to attach.
└ nodes.spawn_defaultsmapoptionalNode-level spawn defaults overlaid on the global spawn_defaults.
└ nodes.spawn_defaults.nodestringoptionalDefault placement node for spawns originating from this node; used when a spawn does not name an explicit target.