Documentation·Communication
Communication

Agent-to-Agent

Agents talk to each other. That is the whole point of running them as a team rather than a set of solos. Communication is structured, visible, and recorded.

How it works

Every agent has an address — its node id — and every team has a shared channel. To reach another agent, an agent sends a typed message over the shared channel or as a direct message. The message passes through the same guardrails pipeline as user input, so you can forbid categories of inter-agent calls even if the agents themselves "agree" on them.

Typical messages

  • Hand-off. Engineer → Reviewer: "PR-142 is ready; please check the auth changes."
  • Review request. Reviewer → Engineer: "Three nits inline, one blocker: missing null-check in refresh flow."
  • Status update. Engineer → Manager: "Step 2 is done, step 3 blocked on a secret I don't have access to."
  • Blocked-on. Researcher → Manager: "Need a rate-limited provider key to finish the benchmark."

Watching it happen

Every message leaves an animated line on the canvas. The Logs tab of each agent's detail panel includes every in/outbound message. The team's group chat shows everything at a higher level — useful when you want the short version.

When to lean on it

Agent-to-agent talk shines when the work has a clear decomposition — migration projects, debugging sessions with a known blueprint, routine reviews. It struggles with open-ended exploration: in those cases, keep the loop through you so you can intervene quickly.

Setup

Inside a team, inter-agent messaging is on by default. You can disable it per team (Team settings → Inter-agent) or set default permissions like "only Managers can address Engineers directly, everyone else routes through the group chat." Disabled communications still show up in the log as attempted calls — you never fail silently.