Sessions outlive the harness

Persist agent events in remote streamsand resume execution for long-running agents.

How it works

Connect

Point Durable Sessions at your agent. One command or API call.

Stream

Every tool call, message, and error flows in automatically.

Resume

Pick up where you left off, even when the sandbox dies.

Search

Find any event across any session.

Ingestion and stream

Ingest coding agent sessions from

any harness

Durable in your S3

Session data lives in its own isolated bucket. Export your data or migrate at any time.

Open protocol

Built on open HTTP.

POST to append, GET to read, SSE to subscribe. No SDK required.

POST /v1/sessions/{session_id}/events HTTP/1.1Content-Type: application/json {"type": "tool_call", "name": "edit_file", "data": {...}} HTTP/1.1 204 No ContentStream-Next-Offset: 00000145
Searchable history

BM25-ranked search across session history

Build context from relevant events, not just the last N.

stripe webhook handler

4 events · 2 sessions · 18,402 indexed

SESSION

backend-agent-a1b2

5h ago

# 847tool_call

create webhook endpoint

# 851message

"using raw body for verify"

SESSION

debug-agent-c3d4

3m ago

# 112tool_call

create webhook endpoint

# 115error

"signature verification failed"

Start with Durable Sessions

[ Book demo ]

The easiest way to keep sessions outside the harness.