Problem it solves

When agents hand off to each other, the content of the handoff is invisible to users. What context passed, what instructions were included, and what scope was granted are all opaque.

When to use

Whenever an agent explicitly transfers execution, context, or authority to another agent during a run.

When not to use

For internal state updates within a single agent. This pattern covers inter-agent transfers.

Governing principle

The handoff receipt is a first-class record. What passed between agents must be inspectable on demand, not reconstructed after the fact.

Required Components

Interaction Flow

1

Agent initiates handoff

Agent A completes its portion of the task and prepares to transfer to Agent B.

2

Handoff package assembled

The system captures what will be transferred: context, instructions, scope granted, constraints attached.

3

Handoff event logged

The transfer is written to the Agent Activity Timeline as a named, typed event.

4

Handoff receipt available

The user can inspect the full handoff receipt: what passed, what was excluded, and what scope Agent B received.

5

Agent B begins with known context

Agent B starts with the transferred context. Its scope is limited to what was explicitly granted in the handoff.

Governance requirements

Every handoff must create an inspectable receipt. The receipt must include: context transferred, instructions included, scope granted, constraints on the receiving agent, and timestamp.

Accessibility notes

Handoff events in the timeline must be keyboard-navigable. Handoff receipts expanded on demand must use aria-expanded to communicate state. Receipt content must be structured with appropriate headings.