Skip to content
Sync AI AgentsTwo curved arrows chasing each other in a closed loop, each tipped with a filled circle.sync ai agents

Pattern 03: event-driven choreography

Event-driven choreographyA horizontal line labelled event log with four coral agents above and below it, each with arrows to and from the log. There is no hub.event logABCD
No conductor. Agents react to what's on the log.

What is choreography for AI agents?

In orchestration, a conductor tells each player when to play. In choreography, each dancer knows the routine and reacts to the others. For agents, that means each agent subscribes to event types it cares about ("invoice.received", "draft.ready") and emits events when it finishes.

agents should “emit and listen for events autonomously”
Source: Confluent, Event-Driven Multi-Agent Systems, Sean Falconer and Andrew Sellers, Feb 2025

Confluent argues immutable logs provide reliable coordination and describes four multi-agent patterns that can run on events: orchestrator-worker, hierarchical, blackboard and market-based. The point is not that orchestration disappears; it is that the transport between agents becomes durable, replayable events instead of direct calls.

Why do teams pick choreography?

Decoupling: add an agent by subscribing it to a topic; nothing else changes. Durability: the log survives crashes, so a restarted agent resumes from its offset. Replay: you can rerun a day of events against a new agent version. Scale: brokers are built for volume that no chat-style coordination can match.

Where does choreography break?

Nobody knows the whole story. Without a lead, answering "what state is order 1182 in, and who is working on it?" means reconstructing it from the log.

Emergent loops. Agent A reacts to B's event, B reacts to A's. It is the same ping-pong as handoffs, but harder to spot because no single component sees both sides.

Duplicates. At-least-once delivery means agents must be idempotent, or the same email goes out twice.

Humans are awkward. An approval is a long-running wait in a system designed for milliseconds. Solace Agent Mesh adds "built-in human-in-the-loop approvals," which helps, but approvals are not the same as a person working alongside agents. (Solace)

Open-ended work fits badly. Events work best when you can name the event types up front.

When does event-driven choreography work, and when does it break?

When it works

  • High message volume
  • Steps are known and event types can be named
  • Teams want to add agents without coordinating releases
  • Replay and audit via logs matter

When it breaks

  • You need a live answer to “who owns this now”
  • Work is open-ended
  • Humans collaborate rather than just approve
  • Agents are not idempotent

Which tools use event-driven choreography?

ToolHow it coordinatesGood forSource
Solace Agent MeshAgents on Solace event brokers; A2A and MCP; self-hosted or managedOrganizations already on SolaceSolace
n8nTrigger-driven workflows with agent nodes; agents can delegate to other agents; MCP client and serverAutomation teams, visual buildingn8n docs
CrewAI FlowsEvent-driven control with state around crewsCrewAI usersGitHub

Solace archived its original open-source Python Agent Mesh repo on Sep 17, 2026 and the current runtime is written in Go; check the licensing of the new version. Source: SolaceLabs on GitHub

What do people ask about event-driven choreography?

Orchestration uses a central controller that tells agents what to do; choreography has agents react to shared events with no controller. Orchestration is easier to trace; choreography is easier to extend.

An event broker is transport, not coordination logic. It can carry any of the patterns on this site; you still need to design who reacts to what and how agents avoid loops.

Yes, through approval steps, but humans are easier to include in a collaboration layer where they sit in the same room as the agents.

Not sure which pattern fits?

Six questions, about a minute. You'll get a pattern, a shortlist and the tradeoffs.

Last reviewed: September 2026