← Schema index / Config Reference

messaging schema

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.

Messaging policy and scoped Mustache-style live-injection templates. The canonical section is messaging (messages is a deserialize-only alias); messaging.nodes / messaging.projects select node/project overlays; resolution is global < node < project < matching agent override.

Field pathTypeRequiredDefaultCanonical description
messagingsectionoptionalMessaging policy and scoped Mustache-style live-injection templates. The canonical section is messaging (messages is a deserialize-only alias); messaging.nodes / messaging.projects select node/project overlays; resolution is global < node < project < matching agent override.
└ messaging.directmapoptionalDirect-message live-injection wrapper.
└ messaging.direct.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.broadcastmapoptionalBroadcast delivery policy and live-injection wrapper.
└ messaging.broadcast.live_inject_max_age_secsi64optional600Max age in seconds for LIVE tmux re-injection of a peer-replicated broadcast on node reconnect. Older broadcasts remain in inbox history. 0 disables the gate. CACO_MSG_BROADCAST_LIVE_INJECT_MAX_AGE_SECS wins.
└ messaging.broadcast.templatestringoptionalMustache-style broadcast live-injection wrapper; {{message}} is the original body and {{message_id}} is its durable delivery identity.
└ messaging.speakmapoptionalSpeak-message wrapper for injection-capable consumers.
└ messaging.speak.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.systemmapoptionalSystem-message wrapper for injection-capable consumers.
└ messaging.system.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.nodesmap[string, map]optionalNode-scoped sparse wrappers keyed by static or dynamic node name.
└ messaging.nodes.<node>.directmapoptionalNode-scoped direct-message wrapper.
└ messaging.nodes.<node>.direct.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.nodes.<node>.broadcastmapoptionalNode-scoped broadcast wrapper.
└ messaging.nodes.<node>.broadcast.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.nodes.<node>.speakmapoptionalNode-scoped speak wrapper.
└ messaging.nodes.<node>.speak.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.nodes.<node>.systemmapoptionalNode-scoped system wrapper.
└ messaging.nodes.<node>.system.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.projectsmap[string, map]optionalProject-scoped sparse wrappers keyed by project name.
└ messaging.projects.<project>.directmapoptionalProject-scoped direct-message wrapper.
└ messaging.projects.<project>.direct.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.projects.<project>.broadcastmapoptionalProject-scoped broadcast wrapper.
└ messaging.projects.<project>.broadcast.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.projects.<project>.speakmapoptionalProject-scoped speak wrapper.
└ messaging.projects.<project>.speak.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.projects.<project>.systemmapoptionalProject-scoped system wrapper.
└ messaging.projects.<project>.system.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.overridesmap[string, map]optionalPer-agent sparse template overrides keyed by persistent declaration name, profile, or concrete agent id.
└ messaging.overrides.<agent>.directmapoptionalPer-agent direct-message wrapper.
└ messaging.overrides.<agent>.direct.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.overrides.<agent>.broadcastmapoptionalPer-agent broadcast wrapper.
└ messaging.overrides.<agent>.broadcast.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.overrides.<agent>.speakmapoptionalPer-agent speak wrapper.
└ messaging.overrides.<agent>.speak.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.
└ messaging.overrides.<agent>.systemmapoptionalPer-agent system wrapper.
└ messaging.overrides.<agent>.system.templatestringoptionalMustache-style live-injection wrapper. {{message}} expands to the original body; optional variables are {{message_id}}, {{sender}}, {{timestamp}}, {{kind}}, {{node}}, {{project}}, and {{agent}}.