VCode home

Live updates and reconnect

Agents: claude, codex, opencode · On: phone, desktop

The open thread streams from the server as it happens, and so does the tab strip. When the link goes bad the app says so, and when it comes back it resumes exactly where it left off.

Why you would use it

You watch an agent work from a phone on a moving train. You need to trust two things: that what you see is current, and that the app tells you when it is not.

How to use it

Nothing to do. Opening a thread opens its stream. The connection dot (#link-dot), right of the version (under the composer on a phone, in the bar across the bottom of the window on a wide screen), and the offline banner (#offline-banner) report the state.

The version row under the composer while connected: v0.253 and a green
dot

The same row with the link down: the dot has become an amber OFFLINE
pill

What you see

Options and settings

Option Default What it changes
heartbeatMs (server, lib/app.js) 15000 How often the stream sends event: ping. The client's budgets are written against this number
REQUEST_TIMEOUT_MS (public/net.js) 20000 How long any one API request may take before it counts as a network failure
UPLOAD_TIMEOUT_MS (public/net.js) 120000 The same budget for attachment uploads, which are measured in bytes
HEARTBEAT_MS (public/net.js) 15000 The client's copy of the server's heartbeat interval
HEARTBEAT_MISSES (public/net.js) 2.5 How many missed heartbeats make a stream dead (37.5s of silence)

Limits and known gaps