Reference

WebSocket protocol

The messages exchanged between browser, control server, and agent.

Messages are JSON.

DirectionTypeDescription
Agent → ServerhelloHandshake with device ID, fingerprint, version
Agent → ServeroutputPTY output chunks
Agent → ServerheartbeatSent every 25s for liveness
Agent → ServerdockerInfoDocker container list
Agent → ServersystemInfoOS, CPU, memory, disk, tmuxAvailable
Agent → ServernetworkInfoIPv4/IPv6 addresses
Server → AgenthelloHandshake response
Server → AgentenrolledIssues the device key after an auth key is redeemed
Server → AgentkeystrokeTerminal input from the browser
Server → AgentresetAttach to an existing tmux session or start a shell
Server → AgentdockerInfo / systemInfo / networkInfoRequest the corresponding info

The server drops agent messages larger than 256 KB and browser messages larger than 64 KB.