LiveKit is an open-source platform for building voice, video, and physical AI agents, and this entry is its server: a scalable, distributed WebRTC selective forwarding unit (SFU) that moves realtime audio, video, and data between people, devices, and AI models. It is written in Go on the Pion WebRTC implementation.
People, devices, and AI agents join the same room as participants, and agent dispatch routes agents into rooms automatically or on demand. Agents connect to a self-hosted server the same way they connect to the hosted LiveKit Cloud. For code-first voice agents, the companion LiveKit Agents SDK (Python and Node.js) bundles speech-to-text, LLM, text-to-speech, turn detection, tool use, and telephony, with models served through LiveKit Inference on the cloud or through model plugins when self-hosting.
The server runs as a single binary, in Docker, or on Kubernetes with Helm charts, in single-node or distributed multi-region setups. LiveKit Cloud adds agent hosting, model inference, telephony, and observability on top of the server. Client SDKs cover browsers, Swift, Android, Flutter, React Native, Rust, Unity, ESP32, and C++, with server APIs in Node.js, Go, Ruby, Java and Kotlin, Python, and Rust, and a Docs MCP server gives coding agents access to the documentation.
Features
- WebRTC SFU: a scalable, distributed selective forwarding unit for audio, video, and data
- Agents as participants: AI agents join rooms like any browser or phone, with dispatch on demand
- Telephony: phone calls over SIP
- Data tracks: low-latency data for telemetry and teleoperation
- Media controls: speaker detection, simulcast, selective subscription, SVC codecs (VP9, AV1), and end-to-end encryption
- Room management: JWT access tokens, moderation APIs, and webhooks
- Connectivity: UDP, TCP, and TURN
- Deployment: single binary, Docker, Kubernetes, or distributed multi-region, plus the hosted LiveKit Cloud
- SDKs: clients for web, mobile, desktop, embedded, and game engines, plus server APIs in several languages
