session:active
// an emerging AI infrastructure category

The missing layer
between agents & users

Agents stream tokens. Networks break. Sessions die.

There is no infrastructure layer that keeps agent-to-user sessions alive across disconnects, devices, and crashes.

The session has no home

Every boundary where a connection can break is a boundary where the session dies. Today, there is no infrastructure layer that owns these boundaries.

//

Disconnects

Mobile networks drop. WebSocket connections die. Users lose context mid-conversation.

[]

Devices

Start on phone, continue on laptop. The session should follow, but it does not.

{}

Tabs

Multiple tabs, one user, one session. Browsers make this surprisingly hard.

<>

Agents

Agent crashes, restarts, or hands off. The user should never notice.

&&

Time

Sessions that survive minutes, hours, days. Not just the current connection.

~~

Modalities

Text, voice, video, tool calls. One session spanning every interaction type.

Industry consensus

“The incumbent approach has been considered inadequate”

The current transport mechanisms available for AI chat applications are inadequate for production use cases.

Vercel ChatTransport proposal

A pluggable transport layer is needed to abstract away the complexity of maintaining persistent connections.

TanStack ConnectionAdapter RFC

Real-time streaming and session management remain the most requested features from production users.

CrewAI Issue #3259

What is a Durable Session?

A session that survives everything the network, the device, and the infrastructure can throw at it.

Think of a phone call that never drops. You walk through a tunnel, switch from WiFi to cellular, hand your phone to someone else. The call continues. That is a durable session, but for agent-to-user communication.

Reliable Streaming

Ordered, resumable, exactly-once delivery across any transport. Never lose a token.

stream.resume(lastEventId)

Session Continuity

Survive disconnects, device switches, tab changes. The session outlives the socket.

session.attach(newDevice)

Agent Visibility

Agents see connection state. They know when users disconnect and when they return.

agent.onPresenceChange(cb)
Agent Layer(LLMs, tools, workflows)
Durable Sessions(streaming, continuity, presence)
Client Layer(browsers, apps, devices)

37-vendor analysis

0%

lack reliable streaming recovery

0%

have no session continuity

0%

offer no agent-side visibility

Not a feature. A layer.

Durable Execution and Durable Sessions solve different problems at different layers of the stack. Both are necessary.

Durable Execution

  • Backend workflow orchestration
  • Survives server crashes
  • Replays deterministic functions
  • Temporal, Restate, Inngest

Durable Sessions

  • Client-to-agent transport
  • Survives network failures
  • Resumes streams, maintains presence
  • Ably, ElectricSQL (emerging)

Developer voices

The same pain, reported independently across the ecosystem.

We need a way to resume streams after disconnection without replaying the entire conversation.

Mastra

The transport layer is the most underinvested part of the AI stack. Everyone rebuilds it from scratch.

Lars Grammel, Vercel

Connection state management is eating our development time. This should be infrastructure.

Pydantic AI

Real-time bidirectional communication with AI agents requires infrastructure that does not exist yet.

OpenAI Realtime

Session persistence across worker restarts is a fundamental requirement we keep reimplementing.

Temporal

Our users lose context every time their connection drops. We need session-level durability.

CrewAI #3259

Voice AI sessions need sub-100ms reconnection. HTTP polling is not an option.

Retell AI

We built our own reconnection logic. It took months. It still has edge cases.

Supabase

Try it out

Try one of the current durable session providers.

Get involved

Durable Sessions is an emerging category. Help shape the definition, contribute research, or reach out to discuss.