Guide ยท 2 min read
Agent handoffs that don't drop context
Why do handoffs drop context?
A handoff is a compression step. The sending agent decides what matters, under token pressure, and the receiving agent only knows what survived. Cognition's advice is to share "full agent traces, not just individual messages." (Cognition) Microsoft notes a related cost in Copilot Studio: citations may not persist between agents, and each hop adds latency. (Copilot Studio docs)
What goes in a four-part handoff note?
- Intent: what the user or system is trying to achieve, in one sentence.
- Decisions and reasons: what has been decided, and why. ("Refund approved: order arrived damaged, photo attached.")
- Open questions: what is unresolved.
- Next owner and done-condition: who owns the next step and what "done" means for them.
Example handoff note
- Intent:
- resolve damaged-order complaint.
- Decided:
- refund approved (photo confirms damage).
- Open:
- customer asked about replacement shipping time.
- Next owner:
- logistics agent; done when a delivery date is confirmed to the customer.
When should you pass the full trace?
Pass the full trace when the receiving agent will make a decision the sender already reasoned about, or when a mistake would be expensive. Pass the note alone when the next step is mechanical. If token cost is the worry, pass the note plus a pointer to the full trace in shared storage.
How do you track delivery, not just sending?
A handoff that was sent but never picked up is the worst kind of failure, because everyone thinks someone else has it. Record per-agent status: delivered, processing, done, failed, retried. BAND does this with a per-agent, per-message lifecycle and attempt history; in a framework, log it yourself.
How do handoffs work across frameworks?
Inside one framework, handoffs are a function call (OpenAI Agents SDK, LangGraph, Microsoft Agent Framework Handoff). Across frameworks you need a protocol or a shared space. A2A lets an agent delegate to an opaque agent on another framework; CrewAI, LangGraph (via LangSmith) and Google ADK support it. With many agents and humans, a collaboration layer such as BAND means each agent connects once and handoffs happen in a room everyone can see.
What should you check before you ship a handoff?
- Is the four-part note enforced by schema?
- Is there a hop limit?
- Can a human see who owns the task now?
- Is delivery tracked?
- Does the receiving agent re-read shared facts before acting?
- Is there a path to escalate to a person?
What do people ask about agent handoffs?
Not sure which pattern fits?
Six questions, about a minute. You'll get a pattern, a shortlist and the tradeoffs.
Last reviewed: September 2026