Creating a thread
Every deployment is created with a default thread — for most products, that’s the customer’s ongoing conversation with their agent, and you never need another. Create additional threads for parallel or scoped conversations:Starting work
Creating a thread doesn’t start any work. Send a message to begin a run:Run lifecycle
A run starts when a message arrives or an automation fires, and moves through these statuses (delivered asrun_status events):
| Status | Meaning |
|---|---|
running | The agent is actively reasoning and calling tools |
waiting_on_human | The run paused on a steering request and is waiting for input |
completed | The agent finished the task and went idle |
error | The run failed — details arrive on the event stream |
Durability
Runs survive the failures that kill naive agent loops:- Crashes and deploys. An interrupted run resumes from where it stopped — it doesn’t replay from zero or lose the tool calls it already paid for.
- Long waits. A run waiting on steering input genuinely sleeps. It can wait minutes or days without holding a worker or a connection, then continues as if no time passed.

