Agentflow is the orchestrator we use to run Claude agents on client work: typed handoffs between agents, retries with backoff, and traces you can actually read. This page is an interactive walkthrough of how a run behaves.
The trace below is simulated in your browser - no API calls, no live agents.
agentflow.ts
import { flow, verify } from "./agentflow";
import { planner, retriever, writer } from "./agents";
import { withCitations } from "./checks";
export const research = flow("ResearchBrief", (f) =>
f.route(planner)
.then(retriever, { retries: 3, backoff: "exponential" })
.then(writer)
.verify(withCitations)
);
trace / research briefcomplete
0 msrequestorchestrator accepts a typed job: ResearchBrief
+480 msrouterouter picks planner -> retriever -> writer from the job type