Multi-Agent Handoff
AI-awareChain several agents into one observable run — and watch the baton pass along a living handoff timeline.
How it works
Runner.StartSequential chains agents into a single DrylMultiAgentRun
— each agent receives the previous one's answer as its input. DrylHandoffTrace
renders the chain as a timeline: the active lane wears the shared aura, the connector fills
as the baton is handed on, and every lane streams its own answer. StartConcurrent
fans the same prompt out to every agent instead.
Where the innovation lies: multi-agent orchestration is normally invisible plumbing. Here the whole pipeline is one observable object with a UI that makes the handoff legible — you can literally see which agent holds the work right now.
// Each step's agent receives the previous agent's answer. StartConcurrent fans out instead.
var flow = Runner.StartSequential(steps, "Write a short article about glass surfaces.");<DrylHandoffTrace Run="flow">
<StepContent>
@if (context.Run is { Text.Length: > 0 } lane)
{
<DrylMarkdown Content="@lane.Text" />
}
</StepContent>
</DrylHandoffTrace>Multi-agent handoff
StartSequential chains agents into one observable DrylMultiAgentRun — each agent receives the previous answer. DrylHandoffTrace renders the chain as a living timeline: the active lane wears the shared aura, the connector fills as the baton is handed on, and each lane streams its own answer.