Skip to main content
Every state change on a session is an AgentEvent. Events stream over SSE and persist to history.

Lifecycle

Terminal

Every session ends in exactly one terminal event:

Consuming

Or replay/resume:
Or fan out via webhook:

Guarantees

  • Every session reaches a terminal event. Consumers never hang.
  • seq is strictly monotonic per session. Gaps indicate missed events; reconnect with sinceSeq to replay.
  • Recent events are kept available for replay — any practical reconnect window is covered. For older history, use GET /session/<id>/history.