Why your AI UX is broken (and it’s not the model’s fault)
Almost every AI chat app today streams responses back to the user over a single point-to-point HTTP connection - usually SSE. It’s the easy thing to reach for, but it ties the whole experience to one client, one connection, one agent. In this talk at AI Engineer Europe I make the case that this fundamentally limits the quality of the experiences we can build.
Drawing on what we’ve learned at Ably from engineering teams at 40+ companies shipping AI agents and copilots to production, I show where the direct HTTP streaming model breaks down and why teams are adopting durable sessions - a shared, persistent, stateful layer that sits between agents and clients.
The talk works through three foundational capabilities that separate a fragile demo from a great AI product:
- Resilient delivery: streams that survive disconnections, so clients can reconnect and resume exactly where they left off
- Continuity across surfaces: the session follows the user between tabs and devices, fully in sync including live activity
- Live control: bidirectional channels so any client can steer, interrupt, or hand off to a human while the agent is working
I also dig into why resume and cancel are mutually exclusive with SSE, why a bidirectional transport alone doesn’t solve multi-device or multi-agent coordination, and how Ably channels - and Ably AI Transport on top of them - provide the durable session layer out of the box.
You can watch it here:
If you want to go deeper, I’ve written about why production AI needs a session layer and shown these patterns running in a live demo.
If you’ve got comments, questions or feedback you can reach me on Twitter or email mike (at) christensen.codes ✌️