feat: teammates flag enabling peer messaging between concurrent graph agent nodes

Agent nodes marked teammates: true whose sub-agents run concurrently (map fan-out branches or multiple flagged agent nodes in one super-step) now form a team: each member gets a pre-provisioned inbox in a messaging-only PeerRegistry before any branch starts, a teammate roster injected into its prompt, peer resolution in agent__send_message, and a peers section in agent__list_running. Registries are scoped to a single fan-out and carry no lifecycle semantics: outputs still flow exclusively through collect_into/state reducers, finished peers reject new messages, and nothing registers in a supervisor. Also hardens the agent-recursion depth guard to work without a supervisor and adds validator warnings for zero-valued orchestration limits.
This commit is contained in:
Dark-Alex-17 committed 2026-09-09 16:44:23 -06:00
1 parent 7e84804ed1
commit 47edaa35ff
11 files changed
+975 -45

No files matched your search

+10
View File
@@ -334,6 +334,16 @@ nodes:
Research {{topic}} in depth. Existing context:
{{context}}
timeout: 600 # Optional wall-clock cap, seconds. Default 300.
teammates: false # Optional. When true and this node runs concurrently
# with other flagged agent nodes (map fan-out branches
# or the same super-step), the siblings can message
# each other via agent__send_message / agent__check_inbox.
# Each fan-out gets its OWN registry: a `teammates` map
# fan-out and a `teammates` agent node in the same
# super-step frontier form two separate teams and cannot
# message each other. Peers only span a single map
# node's branches or a single super-step's flagged
# agent nodes.
output_schema: # Optional. Same extraction as llm nodes
type: object
properties: