# AX-SYS-19: Define roles and handoff contracts for multi-agent flows

> Orchestration and handoff · advanced · AX-SYS-19

When agents collaborate, specify each one's responsibility and boundaries, and the exact contract for passing work between them.

## Why

Clear roles and handoff contracts prevent multi-agent chaos. The Google A2A protocol formalises this at the protocol level: a planner agent decomposes a goal, delegates sub-tasks via A2A, and each sub-agent executes using its own tool connections. Microsoft's agent governance research identifies undefined role boundaries as the primary cause of enterprise multi-agent failures. The 12-Factor Agents framework is direct: one agent, one job — compose rather than build monoliths. Without an explicit handoff contract (who does what, with what scope, and what they return), agents improvise coordination and produce unpredictable outcomes.

## Do

Name roles and define the handoff payload.

## Don't

Let agents improvise coordination.

## Artifact

```json
{
  "from_agent": "planner",
  "to_agent": "executor",
  "role": "executor",
  "task": "Issue refund for order ord_123",
  "scope": ["refunds:write"],
  "context": { "order_id": "ord_123", "reason": "duplicate charge" },
  "constraints": { "max_spend_usd": 50, "requires_dry_run": true },
  "return_to": "planner"
}
```

## Citations

1. [Google A2A Protocol — Task Lifecycle and Orchestration](https://developers.googleblog.com/en/a2a-a-new-era-of-agent-interoperability/) — A planning agent decomposes objectives into sub-tasks and delegates each to a specialised agent via A2A; clear role definitions and handoff payloads are required for reliable multi-agent coordination
2. [Microsoft — agent-governance-toolkit](https://github.com/microsoft/agent-governance-toolkit) — Multi-agent orchestration patterns require explicit role definitions and handoff contracts — undefined boundaries are the primary cause of agent coordination failures in enterprise deployments
3. [12-Factor Agents — Single Responsibility](https://github.com/humanlayer/12-factor-agents) — Build small, focused agents with one clear job and compose them into workflows; each agent should have a named role and explicit input/output contract

---
Source: Agent Experience Principles (axprinciples.com)