Durable handle
A session remains addressable by the samesession_id across multiple turns.
That gives clients a stable handle for:
- Sending new messages
- Checking current status
- Inspecting prior message history
- Browsing the session workspace
Session behavior
Sessions are intended to support ongoing interactions rather than one-off requests. Each session can contain:- Multiple messages
- Uploaded files
- Workspace files created over time
- Status for both the session and its messages
Session and message status
The API returnssession.status and message.status.
Session statuses include:
activeidlecompletedfailedexpired
queuedrunningcompletedfailed
message.status to track the progress of a specific turn. Use session.status to determine whether the session is still active.
Agent version behavior
Sessions use the agent version that was active when the session was created. That means:- Publishing a new version changes future sessions
- Existing sessions keep running against their original agent version
- A stable session handle does not imply a mutable runtime target