# Build voice, video, and physical AI | LiveKit

> Markdown mirror of DialtoneApp's public top-site detail page for `livekit.io`.

URL: https://dialtoneapp.com/top-sites/livekit.io/index.md
Canonical HTML: https://dialtoneapp.com/top-sites/livekit.io

## Summary

- Domain: `livekit.io`
- Website: https://livekit.io
- Description: ai readable | score 20 | purchase read only
- Label: ai_readable
- Payment surface: Not available
- Purchase boundary: read_only
- Control boundary: unknown
- Rank: 151875

## robots

~~~text
User-Agent: *
Allow: /
Disallow: /field-guides
Disallow: /contact-sales/thankyou
Disallow: /hubspot-test

Host: https://livekit.com
Sitemap: https://livekit.com/sitemap.xml
~~~

## llms

~~~text
# LiveKit docs

> LiveKit is a platform for building voice and realtime AI applications. LiveKit Cloud is the hosted commercial offering based on the open-source LiveKit project.

## Overview

LiveKit is an open-source framework and cloud platform for building voice, video, and physical AI agents. It consists of these primary components:

- **LiveKit server**: An open-source WebRTC Selective Forwarding Unit (SFU) that orchestrates realtime communication. Use [LiveKit Cloud](https://cloud.livekit.io) or self-host on your own infrastructure.
- **LiveKit Agents framework**: High-level tools for building AI agents in [Python](https://github.com/livekit/agents) or [Node.js](https://github.com/livekit/agents-js), including a [deployment environment](https://docs.livekit.io/agents/ops/deployment.md) for running agents on LiveKit Cloud, a hosted voice AI [inference service](https://docs.livekit.io/agents/models.md#inference), and an extensive [plugin system](https://docs.livekit.io/agents/models.md#plugins) for connecting to a wide range of AI providers.
- A global WebRTC-based realtime media server with [realtime SDKs](https://docs.livekit.io/intro/basics/connect.md) for- [Web](https://github.com/livekit/client-sdk-js)
- [Swift](https://github.com/livekit/client-sdk-swift)
- [Android](https://github.com/livekit/client-sdk-android)
- [Flutter](https://github.com/livekit/client-sdk-flutter)
- [React Native](https://github.com/livekit/client-sdk-react-native)
- [Unity](https://github.com/livekit/client-sdk-unity)
- [Python](https://github.com/livekit/client-sdk-python)
- [Node.js](https://github.com/livekit/client-sdk-node)
- [Rust](https://github.com/livekit/rust-sdks)
- [C++](https://github.com/livekit/client-sdk-cpp)
- [ESP32](https://github.com/livekit/client-sdk-esp32)
- and more
- **Integration services**: [Telephony](https://docs.livekit.io/telephony.md) for connecting to phone networks, [Egress](https://docs.livekit.io/transport/media/ingress-egress/egress.md) for recording and streaming, and [Ingress](https://docs.livekit.io/transport/media/ingress-egress/ingress.md) for external media streams.

For greater detail, see [Intro to LiveKit](https://docs.livekit.io/intro.md).

## Introduction

### Get Started

- [Overview](https://docs.livekit.io/intro/overview.md): The platform for voice, video, and physical AI agents.
- [About LiveKit](https://docs.livekit.io/intro/about.md): An overview of the LiveKit ecosystem.
- [Coding agent support](https://docs.livekit.io/intro/coding-agents.md): Turn your favorite coding agent into a LiveKit expert with access to docs, tools, and best practices.
- [LiveKit 101 video course](https://www.youtube.com/playlist?list=PLWx-Xa8RhJxXuv8fu2Qz9rj2MPb4qgXir)
- [Community resources](https://docs.livekit.io/intro/community.md): Join an active community of LiveKit developers.

### Understanding LiveKit

- [Overview](https://docs.livekit.io/intro/basics.md): An overview of the core concepts and fundamentals to get started with LiveKit.
- [LiveKit CLI](https://docs.livekit.io/intro/basics/cli.md): Manage your LiveKit Cloud projects and agents from the terminal
- [LiveKit Cloud](https://docs.livekit.io/intro/cloud.md): An end-to-end platform for building, deploying, and operating AI agent applications.
- [Connecting to LiveKit](https://docs.livekit.io/intro/basics/connect.md): Learn how to connect to LiveKit using realtime SDKs.

#### Rooms, participants, & tracks

- [Overview](https://docs.livekit.io/intro/basics/rooms-participants-tracks.md): Understand the core building blocks of LiveKit applications.
- [Room management](https://docs.livekit.io/intro/basics/rooms-participants-tracks/rooms.md): Create, list, and delete Rooms from your backend server.
- [Participant management](https://docs.livekit.io/intro/basics/rooms-participants-tracks/participants.md): List, remove, and mute from your backend server.
- [Track management](https://docs.livekit.io/intro/basics/rooms-participants-tracks/tracks.md): Understand tracks and track publications in LiveKit applications.
- [Webhooks & events](https://docs.livekit.io/intro/basics/rooms-participants-tracks/webhooks-events.md): Configure webhooks and handle events to monitor and respond to changes in rooms, participants, and tracks.
- [Building AI agents](https://docs.livekit.io/intro/basics/agents.md): Build AI agents that interact with users through realtime media and data streams.

### Reference

- [Recipes](https://docs.livekit.io/reference/recipes.md)
- [Room service API](https://docs.livekit.io/reference/other/roomservice-api.md): Use LiveKit's built-in API to manage rooms, participants, and tracks in your backend.

## Build Agents

### Get Started

- [Introduction](https://docs.livekit.io/agents.md): Realtime framework for voice, video, and physical AI agents.
- [Voice AI quickstart](https://docs.livekit.io/agents/start/voice-ai.md): Build and deploy a simple voice assistant in less than 10 minutes.
- [Agent Builder](https://docs.livekit.io/agents/start/builder.md): Prototype simple voice agents directly in your browser.
- [Agent Console](https://docs.livekit.io/agents/start/console.md): Debug your agents in realtime in the browser.
- [Prompting guide](https://docs.livekit.io/agents/start/prompting.md): How to write good instructions to guide your agent's behavior.

### Multimodality

- [Overview](https://docs.livekit.io/agents/multimodality.md): Build agents that communicate through multiple channels for richer, more natural interactions.

#### Speech & audio

- [Overview](https://docs.livekit.io/agents/multimodality/audio.md): Speech and audio capabilities for LiveKit agents.
- [Audio customization](https://docs.livekit.io/agents/multimodality/audio/customization.md): Cache TTS responses, customize pronunciation, and adjust speech volume.
- [Background audio](https://docs.livekit.io/agents/multimodality/audio/background-audio.md): Add ambient sounds, thinking sounds, and on-demand audio playback to your agent.
- [Text & transcriptions](https://docs.livekit.io/agents/multimodality/text.md): Integrate realtime text features into your agent.

#### Images & video

- [Overview](https://docs.livekit.io/agents/multimodality/vision.md): Process images and video input, and send visual output with avatars and byte streams.
- [Images](https://docs.livekit.io/agents/multimodality/vision/images.md): Add images to your agent's context, receive images from the frontend, and send images back to users.
- [Video](https://docs.livekit.io/agents/multimodality/vision/video.md): Sample video frames, enable live video input, and add virtual avatars for video output.

### Logic & Structure

- [Overview](https://docs.livekit.io/agents/logic.md): Learn how to structure agent logic with sessions, workflows, tasks, tools, and other components for building voice AI applications.
- [Agent sessions](https://docs.livekit.io/agents/logic/sessions.md): How to use AgentSession to orchestrate your voice AI app.
- [Chat context](https://docs.livekit.io/agents/logic/chat-context.md): How to use ChatContext to manage conversation history in your agents.
- [Tasks & task groups](https://docs.livekit.io/agents/logic/tasks.md): Use tasks to build complex workflows for your voice AI agents.
- [Workflows](https://docs.livekit.io/agents/logic/workflows.md): How to model repeatable, accurate workflows through agents, handoffs, and tasks.

#### Tool definition & use

- [Overview](https://docs.livekit.io/agents/logic/tools.md): Let your agents call external tools and more.
- [Function tool definition](https://docs.livekit.io/agents/logic/tools/definition.md): How to design and register custom tools for your agent
- [Model Context Protocol (MCP)](https://docs.livekit.io/agents/logic/tools/mcp.md): Use MCP servers to expose tools to your agent.
- [Forwarding to the frontend](https://docs.livekit.io/agents/logic/tools/forwarding.md): Fulfill tool calls via RPC from the client.
- [Pipeline nodes & hooks](https://docs.livekit.io/agents/logic/nodes.md): Learn how to customize the behavior of your agent with nodes and hooks in the voice pipeline.

#### Turn detection & interruptions

- [Overview](https://docs.livekit.io/agents/logic/turns.md): Guide to managing conversation turns in voice AI.
- [Turn detector](https://docs.livekit.io/agents/logic/turns/turn-detector.md): Open-weights model for contextually-aware voice AI turn detection.
- [Adaptive interruption handling](https://docs.livekit.io/agents/logic/turns/adaptive-interruption-handling.md): Distinguish between true interruptions and conversational backchanneling.
- [Silero VAD plugin](https://docs.livekit.io/agents/logic/turns/vad.md): High-performance voice activity detection for LiveKit Agents.
- [Agents & handoffs](https://docs.livekit.io/agents/logic/agents-handoffs.md): How to use agents and handoffs as part of a voice AI workflow.
- [External data & RAG](https://docs.livekit.io/agents/logic/external-data.md): Best practices for adding context and taking external actions.

### Testing & evaluation

- [Overview](https://docs.livekit.io/agents/start/testing.md): Write tests to control and evaluate agent behavior.
- [Test framework](https://docs.livekit.io/agents/start/testing/test-framework.md): Set up tests, navigate results, write assertions, and test multi-turn conversations.

### Prebuilt components

#### Prebuilt tasks

- [Overview](https://docs.livekit.io/agents/prebuilt/tasks.md): Use prebuilt tasks to collect structured data or run workflows without implementing the logic yourself.
- [GetEmailTask](https://docs.livekit.io/agents/prebuilt/tasks/get-email.md): Collect and validate an email address from the user with noisy voice transcription handling.
- [GetAddressTask](https://docs.livekit.io/agents/prebuilt/tasks/get-address.md): Collect and validate a complete mailing address from the user with international format support.
- [GetDtmfTask](https://docs.livekit.io/agents/prebuilt/tasks/get-dtmf.md): Collect keypad (DTMF) or spoken digits from callers for IVR and telephony flows.
- [WarmTransferTask](https://docs.livekit.io/agents/prebuilt/tasks/warm-transfer.md): Execute an agent-assisted warm transfer with SIP dialing, hold music, and context handoff.

#### Prebuilt tools

- [Overview](https://docs.livekit.io/agents/prebuilt/tools.md): Use prebuilt tools so your agent can perform common actions without implementing them yourself.
- [EndCallTool](https://docs.livekit.io/agents/prebuilt/tools/end-call-tool.md): Provide your agent with a tool that gracefully ends the call and disconnects from the room.
- [send_dtmf_events](https://docs.livekit.io/agents/prebuilt/tools/send-dtmf-events.md): Send DTMF tones to telephony providers for IVR navigation and phone systems.

### Agent Server

- [Overview](https://docs.livekit.io/agents/server.md): An overview of agent server components for LiveKit Agents.
- [Startup modes](https://docs.livekit.io/agents/server/startup-modes.md): Guide to different agent server modes for development, production, and more.
- [Server lifecycle](https://docs.livekit.io/agents/server/lifecycle.md): How agent servers register, receive requests, and manage jobs.
- [Agent dispatch](https://docs.livekit.io/agents/server/agent-dispatch.md): Specifying how and when your agents are assigned to rooms.
- [Job lifecycle](https://docs.livekit.io/agents/server/job.md): Learn more about the entrypoint function and how to end and clean up LiveKit sessions.
- [Server options](https://docs.livekit.io/agents/server/options.md): Learn about the options available for creating an agent server.

### Models

- [Overview](https://docs.livekit.io/agents/models.md): Choose the right AI models for your voice agent.
- [LiveKit Inference](https://docs.livekit.io/agents/models/inference.md): Access the best AI models for voice agents, included in LiveKit Cloud.

#### LLM

- [Overview](https://docs.livekit.io/agents/models/llm.md): Conversational intelligence for your voice agents.
- [DeepSeek](https://docs.livekit.io/agents/models/llm/deepseek.md): How to use DeepSeek models with LiveKit Agents.
- [Gemini](https://docs.livekit.io/agents/models/llm/gemini.md): How to use Google Gemini models with LiveKit Agents.
- [Kimi](https://docs.livekit.io/agents/models/llm/kimi.md): How to use Kimi models with LiveKit Agents.
- [OpenAI](https://docs.livekit.io/agents/models/llm/openai.md): How to use OpenAI models with LiveKit Agents.
- [xAI](https://docs.livekit.io/agents/models/llm/xai.md): How to use xAI's Grok models with LiveKit Agents.
- [Qwen](https://docs.livekit.io/agents/models/llm/qwen.md): How to use Qwen models with LiveKit Agents.

##### Additional models

- [Anthropic](https://docs.livekit.io/agents/models/llm/anthropic.md): How to use the Anthropic Claude LLM plugin for LiveKit Agents.
- [Amazon Bedrock](https://docs.livekit.io/agents/models/llm/aws.md): How to use the Amazon Bedrock LLM plugin for LiveKit Agents.
- [Baseten](https://docs.livekit.io/agents/models/llm/baseten.md): How to use the Baseten LLM plugin for LiveKit Agents.
- [Cerebras](https://docs.livekit.io/agents/models/llm/cerebras.md): How to use the Cerebras inference with LiveKit Agents.
- [Fireworks](https://docs.livekit.io/agents/models/llm/fireworks.md): How to use Fireworks AI with LiveKit Agents.
- [Groq](https://docs.livekit.io/agents/models/llm/groq.md): How to use the Groq LLM plugin for LiveKit Agents.
- [LangChain](https://docs.livekit.io/agents/models/llm/langchain.md): How to use LangGraph workflows and LangChain agents with LiveKit.
- [Letta](https://docs.livekit.io/agents/models/llm/letta.md): How to use a Letta agent for your LLM with LiveKit Agents.
- [Mistral AI](https://docs.livekit.io/agents/models/llm/mistralai.md): How to integrate Mistral AI's La Plateforme inference service with LiveKit Agents.
- [Ollama](https://docs.livekit.io/agents/models/llm/ollama.md): How to run models locally using Ollama with LiveKit Agents.
- [Azure OpenAI](https://docs.livekit.io/agents/models/llm/azure-openai.md): How to use the Azure OpenAI LLM plugin for LiveKit Agents.
- [OpenRouter](https://docs.livekit.io/agents/models/llm/openrouter.md): How to use OpenRouter with LiveKit Agents to access 500+ AI models.
- [OVHCloud](https://docs.livekit.io/agents/models/llm/ovhcloud.md): How to use the OVHCloud LLM plugin for LiveKit Agents.
- [Perplexity](https://docs.livekit.io/agents/models/llm/perplexity.md): How to use Perplexity LLM with LiveKit Agents.
- [Sarvam](https://docs.livekit.io/agents/models/llm/sarvam.md): How to use the Sarvam LLM plugin for LiveKit Agents.
- [Telnyx](https://docs.livekit.io/agents/models/llm/telnyx.md): How to use Telnyx inference with LiveKit Agents.
- [Together AI](https://docs.livekit.io/agents/models/llm/together.md): How to use Together AI Llama models with LiveKit Agents.
- [OpenAI-compatible LLMs](https://docs.livekit.io/agents/models/llm/openai-compatible-llms.md): Connect to any OpenAI-compatible LLM provider in your voice agents.

#### STT

- [Overview](https://docs.livekit.io/agents/models/stt.md): Models and plugins for realtime transcription in your voice agents.
- [AssemblyAI](https://docs.livekit.io/agents/models/stt/assemblyai.md): How to use AssemblyAI STT with LiveKit Agents.
- [Cartesia](https://docs.livekit.io/agents/models/stt/cartesia.md): How to use Cartesia STT with LiveKit Agents.
- [Deepgram](https://docs.livekit.io/agents/models/stt/deepgram.md): How to use Deepgram STT with LiveKit Agents.
- [ElevenLabs](https://docs.livekit.io/agents/models/stt/elevenlabs.md): How to use ElevenLabs STT with LiveKit Agents.
- [xAI](https://docs.livekit.io/agents/models/stt/xai.md): How to use xAI STT with LiveKit Agents.

##### Additional models

- [Amazon Transcribe](https://docs.livekit.io/agents/models/stt/aws.md): How to use the Amazon Transcribe STT plugin for LiveKit Agents.
- [Azure AI Speech](https://docs.livekit.io/agents/models/stt/azure.md): How to use the Azure Speech STT plugin for LiveKit Agents.
- [Azure OpenAI](https://docs.livekit.io/agents/models/stt/azure-openai.md): How to use the Azure OpenAI STT plugin for LiveKit Agents.
- [Baseten](https://docs.livekit.io/agents/models/stt/baseten.md): How to use the Baseten STT plugin for LiveKit Agents.
- [Clova](https://docs.livekit.io/agents/models/stt/clova.md): How to use the Clova STT plugin for LiveKit Agents.
- [fal](https://docs.livekit.io/agents/models/stt/fal.md): How to use the fal STT plugin for LiveKit Agents.
- [Gladia](https://docs.livekit.io/agents/models/stt/gladia.md): How to use the Gladia STT plugin for LiveKit Agents.
- [Google Cloud](https://docs.livekit.io/agents/models/stt/google.md): How to use the Google Cloud STT plugin for LiveKit Agents.
- [Gradium](https://docs.livekit.io/agents/models/stt/gradium.md): How to use the Gradium STT plugin for LiveKit Agents.
- [Groq](https://docs.livekit.io/agents/models/stt/groq.md): How to use the Groq STT plugin for LiveKit Agents.
- [Mistral AI](https://docs.livekit.io/agents/models/stt/mistralai.md): How to use the Mistral STT plugin for LiveKit Agents.
- [Nvidia](https://docs.livekit.io/agents/models/stt/nvidia.md): How to use the NVIDIA Riva STT plugin for LiveKit Agents.
- [OpenAI](https://docs.livekit.io/agents/models/stt/openai.md): How to use the OpenAI STT plugin for LiveKit Agents.
- [OVHCloud](https://docs.livekit.io/agents/models/stt/ovhcloud.md): How to use the OVHCloud STT plugin for LiveKit Agents.
- [Sarvam](https://docs.livekit.io/agents/models/stt/sarvam.md): How to use the Sarvam STT plugin for LiveKit Agents.
- [Simplismart](https://docs.livekit.io/agents/models/stt/simplismart.md): How to use the Simplismart STT plugin for LiveKit Agents.
- [Soniox](https://docs.livekit.io/agents/models/stt/soniox.md): How to use the Soniox STT plugin for LiveKit Agents.
- [Speechmatics](https://docs.livekit.io/agents/models/stt/speechmatics.md): How to use the Speechmatics STT plugin for LiveKit Agents.
- [Spitch](https://docs.livekit.io/agents/models/stt/spitch.md): How to use the Spitch STT plugin for LiveKit Agents.

#### TTS

- [Overview](https://docs.livekit.io/agents/models/tts.md): Voices and plugins to add realtime speech to your voice agents.
- [Cartesia](https://docs.livekit.io/agents/models/tts/cartesia.md): How to use Cartesia TTS with LiveKit Agents.
- [Deepgram](https://docs.livekit.io/agents/models/tts/deepgram.md): How to use Deepgram TTS with LiveKit Agents.
- [ElevenLabs](https://docs.livekit.io/agents/models/tts/elevenlabs.md): How to use ElevenLabs TTS with LiveKit Agents.
- [Inworld](https://docs.livekit.io/agents/models/tts/inworld.md): How to use Inworld TTS with LiveKit Agents.
- [Rime](https://docs.livekit.io/agents/models/tts/rime.md): How to use Rime TTS with LiveKit Agents.
- [xAI](https://docs.livekit.io/agents/models/tts/xai.md): How to use xAI TTS with LiveKit Agents.

##### Additional models

- [AsyncAI](https://docs.livekit.io/agents/models/tts/asyncai.md): How to use the AsyncAI TTS plugin for LiveKit Agents.
- [Amazon Polly](https://docs.livekit.io/agents/models/tts/aws.md): How to use the Amazon Polly TTS plugin for LiveKit Agents.
- [Azure AI Speech](https://docs.livekit.io/agents/models/tts/azure.md): How to use the Azure Speech TTS plugin for LiveKit Agents.
- [Azure OpenAI](https://docs.livekit.io/agents/models/tts/azure-openai.md): How to use the Azure OpenAI TTS plugin for LiveKit Agents.
- [Baseten](https://docs.livekit.io/agents/models/tts/baseten.md): How to use the Baseten TTS plugin for LiveKit Agents.
- [Camb.ai](https://docs.livekit.io/agents/models/tts/cambai.md): How to use the Camb.ai TTS plugin for LiveKit Agents.
- [Gemini](https://docs.livekit.io/agents/models/tts/gemini.md): How to use the Gemini TTS plugin for LiveKit Agents.
- [Google Cloud](https://docs.livekit.io/agents/models/tts/google.md): How to use the Google Cloud TTS plugin for LiveKit Agents.
- [Gradium](https://docs.livekit.io/agents/models/tts/gradium.md): How to use the Gradium TTS plugin for LiveKit Agents.
- [Groq](https://docs.livekit.io/agents/models/tts/groq.md): How to use the Groq TTS plugin for LiveKit Agents.
- [Hume](https://docs.livekit.io/agents/models/tts/hume.md): How to use the Hume TTS plugin for LiveKit Agents.
- [LMNT](https://docs.livekit.io/agents/models/tts/lmnt.md): How to use the LMNT TTS plugin for LiveKit Agents.
- [MiniMax](https://docs.livekit.io/agents/models/tts/minimax.md): How to use the MiniMax TTS plugin for LiveKit Agents.
- [Mistral AI](https://docs.livekit.io/agents/models/tts/mistralai.md): How to use the Mistral TTS plugin for LiveKit Agents.
- [Murf AI](https://docs.livekit.io/agents/models/tts/murf.md): How to use the Murf AI TTS plugin for LiveKit Agents.
- [Neuphonic](https://docs.livekit.io/agents/models/tts/neuphonic.md): How to use the Neuphonic TTS plugin for LiveKit Agents.
- [Nvidia](https://docs.livekit.io/agents/models/tts/nvidia.md): How to use the NVIDIA Riva TTS plugin for LiveKit Agents.
- [OpenAI](https://docs.livekit.io/agents/models/tts/openai.md): How to use the OpenAI TTS plugin for LiveKit Agents.
- [Resemble AI](https://docs.livekit.io/agents/models/tts/resemble.md): How to use the Resemble AI TTS plugin for LiveKit Agents.
- [Sarvam](https://docs.livekit.io/agents/models/tts/sarvam.md): How to use the Sarvam TTS plugin for LiveKit Agents.
- [Simplismart](https://docs.livekit.io/agents/models/tts/simplismart.md): How to use the Simplismart TTS plugin for LiveKit Agents.
- [Smallest AI](https://docs.livekit.io/agents/models/tts/smallestai.md): How to use the Smallest AI Waves TTS plugin for LiveKit Agents.
- [Speechify](https://docs.livekit.io/agents/models/tts/speechify.md): How to use the Speechify TTS plugin for LiveKit Agents.
- [Speechmatics](https://docs.livekit.io/agents/models/tts/speechmatics.md): How to use the Speechmatics TTS plugin for LiveKit Agents.
- [Spitch](https://docs.livekit.io/agents/models/tts/spitch.md): How to use the Spitch TTS plugin for LiveKit Agents.

#### Realtime

- [Overview](https://docs.livekit.io/agents/models/realtime.md): Guides for adding realtime model integrations to your agents.
- [Gemini Live API](https://docs.livekit.io/agents/models/realtime/plugins/gemini.md): How to use the Gemini Live API with LiveKit Agents.
- [Amazon Nova Sonic](https://docs.livekit.io/agents/models/realtime/plugins/nova-sonic.md): How to use the Amazon Nova Sonic model with LiveKit Agents.
- [OpenAI Realtime API](https://docs.livekit.io/agents/models/realtime/plugins/openai.md): How to use the OpenAI Realtime API with LiveKit Agents.
- [Azure OpenAI Realtime API](https://docs.livekit.io/agents/models/realtime/plugins/azure-openai.md): How to use the Azure OpenAI Realtime API with LiveKit Agents.
- [NVIDIA PersonaPlex](https://docs.livekit.io/agents/models/realtime/plugins/personaplex.md): How to use the NVIDIA PersonaPlex realtime model with LiveKit Agents.
- [Phonic Speech-to-speech](https://docs.livekit.io/agents/models/realtime/plugins/phonic.md): How to use the Phonic Realtime model with LiveKit Agents.
- [Ultravox Realtime](https://docs.livekit.io/agents/models/realtime/plugins/ultravox.md): How to use the Ultravox Realtime model with LiveKit Agents.
- [xAI Grok Voice Agent API](https://docs.livekit.io/agents/models/realtime/plugins/xai.md): How to use xAI's Grok Voice Agent API with LiveKit Agents.

#### Virtual avatar

- [Overview](https://docs.livekit.io/agents/models/avatar.md): Guides for adding virtual avatars to your agents.
- [Anam](https://docs.livekit.io/agents/models/avatar/plugins/anam.md): How to use the Anam virtual avatar plugin for LiveKit Agents.
- [Avatario](https://docs.livekit.io/agents/models/avatar/plugins/avatario.md): How to use the Avatario virtual avatar plugin for LiveKit Agents.
- [AvatarTalk](https://docs.livekit.io/agents/models/avatar/plugins/avatartalk.md): How to use the AvatarTalk virtual avatar plugin for LiveKit Agents.
- [Beyond Presence](https://docs.livekit.io/agents/models/avatar/plugins/bey.md): How to use the Beyond Presence virtual avatar plugin for LiveKit Agents.
- [bitHuman](https://docs.livekit.io/agents/models/avatar/plugins/bithuman.md): How to use the bitHuman virtual avatar plugin for LiveKit Agents.
- [D-ID](https://docs.livekit.io/agents/models/avatar/plugins/did.md): How to use the D-ID virtual avatar plugin for LiveKit Agents.
- [Hedra](https://docs.livekit.io/agents/models/avatar/plugins/hedra.md): How to use the Hedra virtual avatar plugin for LiveKit Agents.
- [Keyframe](https://docs.livekit.io/agents/models/avatar/plugins/keyframe.md): How to use the Keyframe virtual avatar plugin for LiveKit Agents.
- [LemonSlice](https://docs.livekit.io/agents/models/avatar/plugins/lemonslice.md): How to use the LemonSlice virtual avatar plugin for LiveKit Agents.
- [LiveAvatar](https://docs.livekit.io/agents/models/avatar/plugins/liveavatar.md): How to use the LiveAvatar virtual avatar plugin for LiveKit Agents.
- [Runway](https://docs.livekit.io/agents/models/avatar/plugins/runway.md): How to use the Runway virtual avatar plugin for LiveKit Agents.
- [Simli](https://docs.livekit.io/agents/models/avatar/plugins/simli.md): How to use the Simli virtual avatar plugin for LiveKit Agents.
- [Tavus](https://docs.livekit.io/agents/models/avatar/plugins/tavus.md): How to use the Tavus virtual avatar plugin for LiveKit Agents.
- [TruGen](https://docs.livekit.io/agents/models/avatar/plugins/trugen.md): How to use the TruGen.AI realtime avatar plugin for LiveKit Agents.

### Partner spotlight

#### OpenAI

- [Overview](https://docs.livekit.io/agents/integrations/openai.md): Build world-class realtime AI apps with OpenAI and LiveKit Agents.
- [OpenAI LLM](https://docs.livekit.io/agents/models/llm/openai.md): How to use OpenAI models with LiveKit Agents.
- [Realtime API](https://docs.livekit.io/agents/models/realtime/plugins/openai.md): How to use the OpenAI Realtime API with LiveKit Agents.
- [OpenAI TTS](https://docs.livekit.io/agents/models/tts/openai.md): How to use the OpenAI TTS plugin for LiveKit Agents.
- [OpenAI STT](https://docs.livekit.io/agents/models/stt/openai.md): How to use the OpenAI STT plugin for LiveKit Agents.

#### Google

- [Overview](https://docs.livekit.io/agents/integrations/google.md): Build world-class realtime AI apps with Google AI and LiveKit Agents.
- [Gemini LLM](https://docs.livekit.io/agents/models/llm/gemini.md): How to use Google Gemini models with LiveKit Agents.
- [Gemini Live API](https://docs.livekit.io/agents/models/realtime/plugins/gemini.md): How to use the Gemini Live API with LiveKit Agents.
- [Google Cloud TTS](https://docs.livekit.io/agents/models/tts/google.md): How to use the Google Cloud TTS plugin for LiveKit Agents.
- [Google Cloud STT](https://docs.livekit.io/agents/models/stt/google.md): How to use the Google Cloud STT plugin for LiveKit Agents.

#### Azure

- [Overview](https://docs.livekit.io/agents/integrations/azure.md): An overview of the Azure AI integrations with LiveKit Agents.
- [Azure AI Speech TTS](https://docs.livekit.io/agents/models/tts/azure.md): How to use the Azure Speech TTS plugin for LiveKit Agents.
- [Azure AI Speech STT](https://docs.livekit.io/agents/models/stt/azure.md): How to use the Azure Speech STT plugin for LiveKit Agents.
- [Azure OpenAI Realtime API](https://docs.livekit.io/agents/models/realtime/plugins/azure-openai.md): How to use the Azure OpenAI Realtime API with LiveKit Agents.
- [Azure OpenAI LLM](https://docs.livekit.io/agents/models/llm/azure-openai.md): How to use the Azure OpenAI LLM plugin for LiveKit Agents.
- [Azure OpenAI TTS](https://docs.livekit.io/agents/models/tts/azure-openai.md): How to use the Azure OpenAI TTS plugin for LiveKit Agents.
- [Azure OpenAI STT](https://docs.livekit.io/agents/models/stt/azure-openai.md): How to use the Azure OpenAI STT plugin for LiveKit Agents.

#### AWS

- [Overview](https://docs.livekit.io/agents/integrations/aws.md): An overview of the AWS AI integrations with LiveKit Agents.
- [Amazon Bedrock LLM](https://docs.livekit.io/agents/models/llm/aws.md): How to use the Amazon Bedrock LLM plugin for LiveKit Agents.
- [Amazon Polly TTS](https://docs.livekit.io/agents/models/tts/aws.md): How to use the Amazon Polly TTS plugin for LiveKit Agents.
- [Amazon Transcribe STT](https://docs.livekit.io/agents/models/stt/aws.md): How to use the Amazon Transcribe STT plugin for LiveKit Agents.
- [Amazon Nova Sonic](https://docs.livekit.io/agents/models/realtime/plugins/nova-sonic.md): How to use the Amazon Nova Sonic model with LiveKit Agents.

#### xAI

- [Overview](https://docs.livekit.io/agents/integrations/xai.md): Build world-class realtime AI apps with Grok API and LiveKit Agents.
- [Grok Voice Agent API](https://docs.livekit.io/agents/models/realtime/plugins/xai.md): How to use xAI's Grok Voice Agent API with LiveKit Agents.
- [xAI LLM](https://docs.livekit.io/agents/models/llm/xai.md): How to use xAI's Grok models with LiveKit Agents.
- [xAI TTS](https://docs.livekit.io/agents/models/tts/xai.md): How to use xAI TTS with LiveKit Agents.
- [xAI STT](https://docs.livekit.io/agents/models/stt/xai.md): How to use xAI STT with LiveKit Agents.

#### Groq

- [Overview](https://docs.livekit.io/agents/integrations/groq.md): Ship lightning-fast voice AI with Groq and LiveKit Agents.
- [Groq LLM](https://docs.livekit.io/agents/models/llm/groq.md): How to use the Groq LLM plugin for LiveKit Agents.
- [Groq TTS](https://docs.livekit.io/agents/models/tts/groq.md): How to use the Groq TTS plugin for LiveKit Agents.
- [Groq STT](https://docs.livekit.io/agents/models/stt/groq.md): How to use the Groq STT plugin for LiveKit Agents.
- [Cerebras](https://docs.livekit.io/agents/integrations/cerebras.md): Build voice AI on the world's fastest inference.

### Reference

- [Agents framework](https://docs.livekit.io/reference.md#agents-framework/)
- [Turn handling options](https://docs.livekit.io/reference/agents/turn-handling-options.md): Reference documentation for turn handling options in LiveKit Agents.
- [Events and error handling](https://docs.livekit.io/reference/agents/events.md): Guides and reference for events and error handling in LiveKit Agents.
- [Agent dispatch service API](https://docs.livekit.io/reference/agents/agent-dispatch-service-api.md): Use LiveKit's AgentDispatchService API to explicitly dispatch agents to rooms from your backend.
- [LiveKit CLI](https://docs.livekit.io/reference/developer-tools/livekit-cli.md): Install the LiveKit CLI, set up a project, and create apps from templates.
- [Inference LLM parameters](https://docs.livekit.io/reference/agents/inference-llm-parameters.md): Full reference for model parameters supported by LiveKit Inference LLMs.

## Agent Frontends

### Get Started

- [Introduction](https://docs.livekit.io/frontends.md): Build a custom web or mobile frontend for your LiveKit Agent.
- [React voice agent quickstart](https://docs.livekit.io/frontends/start/react-quickstart.md): Build a voice AI frontend with React in less than 10 minutes.

#### Starter apps

- [Overview](https://docs.livekit.io/frontends/start/starter-apps.md): Open-source starter apps to get up and running quickly on your preferred platform.
- [React](https://docs.livekit.io/frontends/start/starter-apps/react.md): A full-featured React voice agent starter app built with Next.js and Agents UI.
- [SwiftUI](https://docs.livekit.io/frontends/start/starter-apps/swiftui.md): A native iOS and macOS voice agent starter app built with SwiftUI.
- [Android](https://docs.livekit.io/frontends/start/starter-apps/android.md): A native Android voice agent starter app built with Jetpack Compose.
- [Flutter](https://docs.livekit.io/frontends/start/starter-apps/flutter.md): A cross-platform voice agent starter app built with Flutter.
- [React Native](https://docs.livekit.io/frontends/start/starter-apps/react-native.md): A cross-platform mobile voice agent starter app built with React Native.
- [Web embed](https://docs.livekit.io/frontends/start/starter-apps/web-embed.md): An embeddable voice agent widget for any website.

### Building Frontends

- [Overview](https://docs.livekit.io/frontends/build.md): Detailed guides to building great frontends for voice and video AI.
- [Session management](https://docs.livekit.io/frontends/build/sessions.md): Use Session APIs to manage room connections and agent lifecycle in your frontend.

#### Authentication

- [Overview](https://docs.livekit.io/frontends/build/authentication.md): How to manage and use tokens to authenticate your frontend app
- [Sandbox token server](https://docs.livekit.io/frontends/build/authentication/sandbox-token-server.md): Get started quickly with LiveKit Cloud's sandbox token server.
- [Token endpoints](https://docs.livekit.io/frontends/build/authentication/endpoint.md): Implement a LiveKit standardized token endpoint.
- [Custom token generation](https://docs.livekit.io/frontends/build/authentication/custom.md): Use a pre-existing token generation mechanism with LiveKit SDKs.
- [Agent state](https://docs.livekit.io/frontends/build/agent-state.md): Track and respond to agent state changes in your frontend.
- [Realtime media and data](https://docs.livekit.io/frontends/build/media-data.md): Work with audio, video, text streams, and data in your agent frontend.
- [Virtual avatars](https://docs.livekit.io/frontends/build/virtual-avatars.md): Give your agent a visual presence with a virtual avatar.

### Agents UI Components

- [Overview](https://docs.livekit.io/frontends/agents-ui.md): Polished Shadcn components for rapid development of voice agent frontends.
- [Media controls](https://docs.livekit.io/frontends/agents-ui/media-controls.md): Components for controlling microphone, camera, session actions, and other media in agent frontends.

#### Audio visualizers

- [Prebuilt](https://docs.livekit.io/frontends/agents-ui/audio-visualizer/prebuilt.md): Components for visualizing agent and user audio in your frontend.
- [Custom](https://docs.livekit.io/frontends/agents-ui/audio-visualizer/custom.md): Build shader-based visualizers that react to voice and agent state in realtime.
- [Chat components](https://docs.livekit.io/frontends/agents-ui/chat.md): Components for displaying transcriptions and chat messages in agent frontends.

### Reference

- [LiveKit SDKs](https://docs.livekit.io/reference.md#livekit-sdks)
- [UI Component SDKs](https://docs.livekit.io/reference.md#ui-components)
- [Server APIs](https://docs.livekit.io/reference.md#server-apis)
- [Tokens & grants](https://docs.livekit.io/frontends/reference/tokens-grants.md): Reference documentation for access tokens, grants, and permissions.

## Telephony

### Get Started

- [Introduction](https://docs.livekit.io/telephony.md): LiveKit's telephony services enable seamless integration between traditional phone networks and LiveKit's realtime platform.
- [Phone numbers](https://docs.livekit.io/telephony/start/phone-numbers.md): How to purchase and configure phone numbers directly through LiveKit.
- [SIP trunk setup](https://docs.livekit.io/telephony/start/sip-trunk-setup.md): Guide to integrating SIP trunks with LiveKit telephony.

#### Provider-specific quickstarts

- [Overview](https://docs.livekit.io/telephony/start/providers.md)
- [Twilio](https://docs.livekit.io/telephony/start/providers/twilio.md): Step-by-step instructions for creating inbound and outbound SIP trunks using Twilio.
- [Telnyx](https://docs.livekit.io/telephony/start/providers/telnyx.md): Step-by-step instructions for creating inbound and outbound SIP trunks using Telnyx.
- [Plivo](https://docs.livekit.io/telephony/start/providers/plivo.md): Step-by-step instructions for creating inbound and outbound SIP trunks using Plivo.
- [Wavix](https://docs.livekit.io/telephony/start/providers/wavix.md): Step-by-step instructions for configuring inbound and outbound calls using Wavix and LiveKit.

### Features

- [Overview](https://docs.livekit.io/telephony/features.md): An overview of telephony features for LiveKit.
- [DTMF](https://docs.livekit.io/telephony/features/dtmf.md): Sending and receiving DTMF tones.
- [Region pinning](https://docs.livekit.io/telephony/features/region-pinning.md): Learn how to isolate LiveKit telephony traffic to a specific region.

#### Transfers

- [Overview](https://docs.livekit.io/telephony/features/transfers.md): An overview of call transfer features for LiveKit telephony.
- [Call forwarding](https://docs.livekit.io/telephony/features/transfers/cold.md): Transfer calls to another number or SIP endpoint using SIP REFER.
- [Agent-assisted transfer](https://docs.livekit.io/telephony/features/transfers/warm.md): How to transfer a call from an AI agent to a human operator while providing a contextual summary.
- [HD voice](https://docs.livekit.io/telephony/features/hd-voice.md): LiveKit SIP supports high fidelity calls by enabling HD voice.
- [Secure trunking](https://docs.livekit.io/telephony/features/secure-trunking.md): How to enable secure trunking for LiveKit SIP.

### Accepting calls

- [Overview](https://docs.livekit.io/telephony/accepting-calls.md): An overview of accepting inbound calls with LiveKit telephony.
- [Workflow & setup](https://docs.livekit.io/telephony/accepting-calls/workflow-setup.md): Workflow and setup guide for accepting inbound calls.
- [Inbound trunk](https://docs.livekit.io/telephony/accepting-calls/inbound-trunk.md): How to create and configure an inbound trunk to accept incoming calls using a SIP provider.
- [Dispatch rule](https://docs.livekit.io/telephony/accepting-calls/dispatch-rule.md): How to create and configure a dispatch rule.
- [Twilio Voice integration](https://docs.livekit.io/telephony/accepting-calls/inbound-twilio.md): How to use LiveKit SIP with TwiML and Twilio conferencing.

### Making calls

- [Overview](https://docs.livekit.io/telephony/making-calls.md): An overview of making outbound calls with LiveKit telephony.
- [Workflow & setup](https://docs.livekit.io/telephony/making-calls/workflow-setup.md): Workflow and setup for making outbound calls.
- [Outbound trunk](https://docs.livekit.io/telephony/making-calls/outbound-trunk.md): How to create and configure an outbound trunk to make outgoing calls.
- [Outbound calls](https://docs.livekit.io/telephony/making-calls/outbound-calls.md): Create a LiveKit SIP participant to make outbound calls.

### Reference

- [SIP primer](https://docs.livekit.io/reference/telephony/sip-primer.md): Learn how SIP calls flow in LiveKit to connect traditional telephony with realtime communications.
- [SIP participant](https://docs.livekit.io/reference/telephony/sip-participant.md): Mapping a caller to a SIP participant.
- [SIP handshake](https://docs.livekit.io/reference/telephony/sip-handshake.md): Understanding the SIP handshake process.
- [Codecs negotiation & support](https://docs.livekit.io/reference/telephony/codecs-negotiation.md): Learn how audio codecs are negotiated during SIP calls and which codecs LiveKit supports.
- [Phone Numbers API](https://docs.livekit.io/reference/telephony/phone-numbers-api.md): Use LiveKit's Phone Number APIs to manage phone numbers for your telephony apps.
- [SIP API](https://docs.livekit.io/reference/telephony/sip-api.md): Use LiveKit's built-in SIP APIs to manage your SIP-based apps.
- [Server APIs](https://docs.livekit.io/reference.md#server-apis)
- [Troubleshooting](https://docs.livekit.io/reference/telephony/troubleshooting.md): Common issues and solutions for SIP.

## WebRTC Transport

### Get Started

- [Introduction](https://docs.livekit.io/transport.md): Build realtime applications with LiveKit's WebRTC transport layer, SDKs, and media handling capabilities.

#### SDK platform quickstarts

- [Overview](https://docs.livekit.io/transport/sdk-platforms.md)
- [React](https://docs.livekit.io/transport/sdk-platforms/react.md): Build a voice AI frontend with React in less than 10 minutes.
- [Unity (WebGL)](https://docs.livekit.io/transport/sdk-platforms/unity-web.md): Get started with LiveKit and Unity (WebGL)
- [Swift](https://docs.livekit.io/transport/sdk-platforms/swift.md): Get started with LiveKit on iOS using SwiftUI
- [Android (Compose)](https://docs.livekit.io/transport/sdk-platforms/android-compose.md): Get started with LiveKit and Android using Jetpack Compose
- [Android](https://docs.livekit.io/transport/sdk-platforms/android.md): Get started with LiveKit and Android
- [Flutter](https://docs.livekit.io/transport/sdk-platforms/flutter.md): Get started with LiveKit and Flutter
- [React Native](https://docs.livekit.io/transport/sdk-platforms/react-native.md): Get started with LiveKit and React Native
- [Expo](https://docs.livekit.io/transport/sdk-platforms/expo.md): Get started with LiveKit and Expo on React Native
- [C++](https://docs.livekit.io/transport/sdk-platforms/cpp.md): Get started with LiveKit using the C++ SDK.

### Media

- [Overview](https://docs.livekit.io/transport/media.md): An overview of realtime media components for LiveKit.
- [Camera & microphone](https://docs.livekit.io/transport/media/publish.md): Publish realtime audio and video from any device.
- [Screen sharing](https://docs.livekit.io/transport/media/screenshare.md): Publish your screen with LiveKit.
- [Subscribing to tracks](https://docs.livekit.io/transport/media/subscribe.md): Play and render realtime media tracks in your application.
- [Processing raw tracks](https://docs.livekit.io/transport/media/raw-tracks.md): How to read, process, and publish raw media tracks and files.
- [Noise & echo cancellation](https://docs.livekit.io/transport/media/noise-cancellation.md): Achieve crystal-clear audio for video conferencing and voice AI.
- [Codecs & more](https://docs.livekit.io/transport/media/advanced.md): Advanced audio and video topics.

#### Stream export & import

- [Overview](https://docs.livekit.io/transport/media/ingress-egress.md): An overview of stream export and import components for LiveKit.

##### Egress

- [Overview](https://docs.livekit.io/transport/media/ingress-egress/egress.md): Use LiveKit's Egress service to record or livestream a room.
- [RoomComposite & web egress](https://docs.livekit.io/transport/media/ingress-egress/egress/composite-recording.md): LiveKit web-based recorder gives you flexible compositing options.
- [Participant & TrackComposite egress](https://docs.livekit.io/transport/media/ingress-egress/egress/participant.md): Record participants individually with the egress API.
- [Track egress](https://docs.livekit.io/transport/media/ingress-egress/egress/track.md): Track egress allows you to export a single track without transcoding.
- [Auto egress](https://docs.livekit.io/transport/media/ingress-egress/egress/autoegress.md): Automatically start recording with a room.
- [Output & streaming options](https://docs.livekit.io/transport/media/ingress-egress/egress/outputs.md): Export content anywhere, in any format.
- [Custom recording templates](https://docs.livekit.io/transport/media/ingress-egress/egress/custom-template.md): Create your own recording layout to use with Room Composite Egress.

##### Ingress

- [Overview](https://docs.livekit.io/transport/media/ingress-egress/ingress.md): Use LiveKit's Ingress service to bring live streams from non-WebRTC sources into LiveKit rooms.
- [Encoder configuration](https://docs.livekit.io/transport/media/ingress-egress/ingress/encoders.md): How to configure streaming software to work with LiveKit Ingress.
- [Transcoding configuration](https://docs.livekit.io/transport/media/ingress-egress/ingress/transcode.md): Configure video and audio encoding settings for LiveKit Ingress, including presets and custom encoding options.

### Data

- [Overview](https://docs.livekit.io/transport/data.md): An overview of realtime text and data features for LiveKit.
- [Sending text](https://docs.livekit.io/transport/data/text-streams.md): Use text streams to send any amount of text between participants.
- [Sending files & bytes](https://docs.livekit.io/transport/data/byte-streams.md): Use byte streams to send files, images, or any other kind of data between participants.
- [Remote method calls](https://docs.livekit.io/transport/data/rpc.md): Use remote procedure calls (RPCs) to execute custom methods on other participants in the room and await a response.
- [Data tracks](https://docs.livekit.io/transport/data/data-tracks.md): Use data tracks to send low-latency, high-bandwidth data between participants.
- [Data packets](https://docs.livekit.io/transport/data/packets.md): Low-level API for high frequency or advanced use cases.

#### State synchronization

- [Overview](https://docs.livekit.io/transport/data/state.md): An overview of state synchronization components for LiveKit.
- [Participant attributes](https://docs.livekit.io/transport/data/state/participant-attributes.md): A key-value store for per-participant state.
- [Room metadata](https://docs.livekit.io/transport/data/state/room-metadata.md): Share application-specific state with all participants.

### Encryption

- [Overview](https://docs.livekit.io/transport/encryption.md): Secure your realtime media and data with end-to-end encryption.
- [Get started](https://docs.livekit.io/transport/encryption/start.md): Learn how to implement end-to-end encryption in your LiveKit applications.
- [E2EE with agents](https://docs.livekit.io/transport/encryption/agents.md): Enable end-to-end encryption for LiveKit Agents.

### Self-hosting

- [Overview](https://docs.livekit.io/transport/self-hosting.md): An overview of self-hosting options for LiveKit servers.
- [Running locally](https://docs.livekit.io/transport/self-hosting/local.md): This will get a LiveKit instance up and running, ready to receive audio and video streams from participants.
- [Deployment](https://docs.livekit.io/transport/self-hosting/deployment.md): WebRTC servers can be tricky to deploy because of their use of UDP ports and having to know their own public IP address. This guide will help you get a secure LiveKit deployment up and running.
- [Virtual machines](https://docs.livekit.io/transport/self-hosting/vm.md): This guide helps you to set up a production-ready LiveKit server on a cloud virtual machine.
- [Kubernetes](https://docs.livekit.io/transport/self-hosting/kubernetes.md): Deploy LiveKit to Kubernetes.
- [Distributed multi-region](https://docs.livekit.io/transport/self-hosting/distributed.md): LiveKit is architected to be distributed, with homogeneous instances running across many servers. In distributed mode, Redis is required as shared data store and message bus.
- [Firewall configuration](https://docs.livekit.io/transport/self-hosting/ports-firewall.md): Reference for ports and suggested firewall rules for LiveKit.
- [Benchmarks](https://docs.livekit.io/transport/self-hosting/benchmark.md): Guide to load-testing and benchmarking your LiveKit installation.
- [Egress](https://docs.livekit.io/transport/self-hosting/egress.md): The Egress service uses Redis messaging queues to load balance and communicate with your LiveKit server.
- [Ingress](https://docs.livekit.io/transport/self-hosting/ingress.md): The Ingress service uses Redis messaging queues to communicate with your LiveKit server.
- [SIP server](https://docs.livekit.io/transport/self-hosting/sip-server.md): Setting up and configuring a self-hosted SIP server for LiveKit telephony apps.

### Reference

- [LiveKit SDKs](https://docs.livekit.io/reference.md#livekit-sdks)
- [Egress API](https://docs.livekit.io/reference/other/egress/api.md): Use LiveKit's egress service to record or livestream a Room.
- [Ingress API](https://docs.livekit.io/reference/other/ingress/api.md): Use LiveKit's ingress service to import live streams from non-WebRTC sources into LiveKit rooms.
- [Server APIs](https://docs.livekit.io/reference.md#server-apis)

## Manage & Deploy

### Get Started

- [Introduction](https://docs.livekit.io/deploy.md): Deploy, manage, and monitor your LiveKit applications with a comprehensive suite of tools and flexible hosting options.

### Agent deployment

- [Overview](https://docs.livekit.io/deploy/agents.md): Overview of deploying agents, including deployment management, secrets, builds, logs, and monitoring.
- [Quickstart](https://docs.livekit.io/deploy/agents/quickstart.md): Quickstart guide for deploying your first agent to LiveKit Cloud.
- [Deployment management](https://docs.livekit.io/deploy/agents/managing-deployments.md): Configure, deploy, and manage your agent deployments using the LiveKit CLI.
- [Secrets management](https://docs.livekit.io/deploy/agents/secrets.md): Manage secrets for your LiveKit Cloud agent deployments.
- [Logs](https://docs.livekit.io/deploy/agents/logs.md): Monitor and debug your deployed agents with comprehensive logging.
- [Log drains](https://docs.livekit.io/deploy/agents/log-drains.md): Forward runtime logs from agents deployed to LiveKit Cloud to external monitoring services like Datadog, CloudWatch, Sentry, New Relic, Splunk, and syslog-compatible endpoints.
- [Builds and Dockerfiles](https://docs.livekit.io/deploy/agents/builds.md): Guide to the LiveKit Cloud build process, plus Dockerfile templates and resources.
- [Self-hosted deployments](https://docs.livekit.io/deploy/custom/deployments.md): Guide to running LiveKit agents on your own infrastructure.

### Agent Observability

- [Overview](https://docs.livekit.io/deploy/observability.md): An overview of observability features for LiveKit Agents.
- [Insights in LiveKit Cloud](https://docs.livekit.io/deploy/observability/insights.md): View audio recordings, transcripts, traces, and logs in LiveKit Cloud.
- [Data hooks](https://docs.livekit.io/deploy/observability/data.md): Collect session recordings, transcripts, metrics, and other data within the LiveKit Agents SDK.

### Administration

- [Overview](https://docs.livekit.io/deploy/admin.md): Manage your project regions, firewalls, and quotas.

#### Regions

- [Overview](https://docs.livekit.io/deploy/admin/regions.md): Configure and manage regional deployments or restrictions.
- [Region pinning](https://docs.livekit.io/deploy/admin/regions/region-pinning.md): Learn how to isolate LiveKit traffic to a specific region.
- [Agent deployment](https://docs.livekit.io/deploy/admin/regions/agent-deployment.md): Configure and manage agent deployments across multiple regions.
- [Sandbox](https://docs.livekit.io/deploy/admin/sandbox.md): Rapidly prototype your apps and share them with others, cutting out the boilerplate.
- [Configuring firewalls](https://docs.livekit.io/deploy/admin/firewall.md): Learn how to configure firewalls for LiveKit Cloud.
- [Quotas & limits](https://docs.livekit.io/deploy/admin/quotas-and-limits.md): Guide to the quotas and limits for LiveKit Cloud plans.
- [Billing](https://docs.livekit.io/deploy/admin/billing.md): Guide to LiveKit Cloud invoices and billing cycles.
- [Analytics API](https://docs.livekit.io/deploy/admin/analytics-api.md): Get information about your LiveKit Cloud sessions and participants

### Reference

- [LiveKit CLI](https://docs.livekit.io/reference/developer-tools/livekit-cli.md): Install the LiveKit CLI, set up a project, and create apps from templates.
- [Server APIs](https://docs.livekit.io/reference.md#server-apis)
- [Events and error handling](https://docs.livekit.io/reference/agents/events.md): Guides and reference for events and error handling in LiveKit Agents.
- [LiveKit SFU](https://docs.livekit.io/reference/internals/livekit-sfu.md): LiveKit is an opinionated, horizontally-scaling WebRTC Selective Forwarding Unit.

## Reference

### Get Started

- [Overview](https://docs.livekit.io/reference.md): All reference documentation in the LiveKit ecosystem with links to complete docs, package registries, and source code.
- [Recipes](https://docs.livekit.io/reference/recipes.md)

### Developer tools

#### LiveKit CLI

- [Overview](https://docs.livekit.io/reference/developer-tools/livekit-cli.md): Install the LiveKit CLI, set up a project, and create apps from templates.
- [Project commands](https://docs.livekit.io/reference/developer-tools/livekit-cli/projects.md): Add, list, and manage projects in the LiveKit CLI.
- [Agent commands](https://docs.livekit.io/reference/developer-tools/livekit-cli/agent.md): Reference for the LiveKit Cloud agent commands in the LiveKit CLI.
- [Docs search](https://docs.livekit.io/reference/developer-tools/livekit-cli/docs.md): Search and browse LiveKit documentation from the terminal with the lk docs command.
- [Docs MCP server](https://docs.livekit.io/reference/developer-tools/docs-mcp.md): MCP server reference for integrating LiveKit documentation into coding agents and IDE assistants.

### Agents framework

- [Python](https://docs.livekit.io/reference/python/livekit/agents.md)
- [Node.js](https://docs.livekit.io/reference/agents-js.md)
- [Turn handling options](https://docs.livekit.io/reference/agents/turn-handling-options.md): Reference documentation for turn handling options in LiveKit Agents.
- [Events and error handling](https://docs.livekit.io/reference/agents/events.md): Guides and reference for events and error handling in LiveKit Agents.
- [Agent dispatch service API](https://docs.livekit.io/reference/agents/agent-dispatch-service-api.md): Use LiveKit's AgentDispatchService API to explicitly dispatch agents to rooms from your backend.
- [Inference LLM parameters](https://docs.livekit.io/reference/agents/inference-llm-parameters.md): Full reference for model parameters supported by LiveKit Inference LLMs.

### LiveKit SDKs

- [JavaScript](https://docs.livekit.io/reference/client-sdk-js/index.html.md)
- [Swift](https://docs.livekit.io/reference/client-sdk-swift/documentation/livekit.md)
- [Android](https://docs.livekit.io/reference/client-sdk-android/index.html.md)
- [Flutter](https://docs.livekit.io/reference/client-sdk-flutter/index.html.md)
- [React Native](https://github.com/livekit/client-sdk-react-native)
- [Unity](https://github.com/livekit/client-sdk-unity)
- [Unity (WebGL)](https://github.com/livekit/client-sdk-unity-web)
- [Node.js](https://docs.livekit.io/reference/client-sdk-node.md)
- [Rust](https://github.com/livekit/rust-sdks)
- [C++](https://docs.livekit.io/reference/client-sdk-cpp.md)
- [Python](https://docs.livekit.io/reference/python/livekit/rtc/index.html.md)
- [Go](https://github.com/livekit/server-sdk-go)

### UI Components

- [Agents UI (Shadcn)](https://docs.livekit.io/reference/components/agents-ui.md): Agents UI is the fastest way to build multi-modal, agentic experiences on top of LiveKit's platform primitives.
- [React](https://docs.livekit.io/reference/components/react.md)
- [SwiftUI](https://livekit.github.io/components-swift/documentation/livekitcomponents)
- [Android](https://docs.livekit.io/reference/components/android.md): LiveKit Android Components are the easiest way to build realtime audio/video apps with Jetpack Compose on Android.
- [Flutter](https://pub.dev/packages/livekit_components)

### Server APIs

- [Go](https://pkg.go.dev/github.com/livekit/server-sdk-go/v2)
- [Node](https://docs.livekit.io/reference/server-sdk-js/index.html.md)
- [Ruby](https://github.com/livekit/server-sdk-ruby)
- [Kotlin/Java](https://github.com/livekit/server-sdk-kotlin)
- [Python](https://docs.livekit.io/reference/python/livekit/api.md)
- [PHP](https://github.com/agence104/livekit-server-sdk-php)

### Internals

- [LiveKit SFU](https://docs.livekit.io/reference/internals/livekit-sfu.md): LiveKit is an opinionated, horizontally-scaling WebRTC Selective Forwarding Unit.
- [Signaling Protocol](https://docs.livekit.io/reference/internals/client-protocol.md): This is an overview of the core protocol LiveKit uses to communicate with clients. It's primarily oriented towards those building new SDKs or developers interested in contributing to LiveKit.

### Telephony

- [SIP primer](https://docs.livekit.io/reference/telephony/sip-primer.md): Learn how SIP calls flow in LiveKit to connect traditional telephony with realtime communications.
- [SIP participant](https://docs.livekit.io/reference/telephony/sip-participant.md): Mapping a caller to a SIP participant.
- [SIP handshake](https://docs.livekit.io/reference/telephony/sip-handshake.md): Understanding the SIP handshake process.
- [Codecs negotiation & support](https://docs.livekit.io/reference/telephony/codecs-negotiation.md): Learn how audio codecs are negotiated during SIP calls and which codecs LiveKit supports.
- [SIP API](https://docs.livekit.io/reference/telephony/sip-api.md): Use LiveKit's built-in SIP APIs to manage your SIP-based apps.
- [Phone Numbers API](https://docs.livekit.io/reference/telephony/phone-numbers-api.md): Use LiveKit's Phone Number APIs to manage phone numbers for your telephony apps.
- [Troubleshooting](https://docs.livekit.io/reference/telephony/troubleshooting.md): Common issues and solutions for SIP.

### Migration Guides

#### Agents v0.x to v1 migration

- [Node.js](https://docs.livekit.io/reference/migration-guides/v0-migration/nodejs.md): Migrate your Node.js agents from version 0.x to 1.0.
- [Python](https://docs.livekit.io/reference/migration-guides/v0-migration/python.md): Migrate your Python-based agents from version v0.x to 1.0.
- [SDK v1 to v2 migration](https://docs.livekit.io/reference/migration-guides/migrate-from-v1.md): Overview of how to migrate your applications from LiveKit SDK v1.x to v2

### Other

- [Room service API](https://docs.livekit.io/reference/other/roomservice-api.md): Use LiveKit's built-in API to manage rooms, participants, and tracks in your backend.

#### Egress

- [Egress API](https://docs.livekit.io/reference/other/egress/api.md): Use LiveKit's egress service to record or livestream a Room.
- [Egress examples](https://docs.livekit.io/reference/other/egress/examples.md): Usage examples for Egress APIs to record or livestream a room or individual tracks.

#### Ingress

- [Ingress API](https://docs.livekit.io/reference/other/ingress/api.md): Use LiveKit's ingress service to import live streams from non-WebRTC sources into LiveKit rooms.

## React Components

### Getting started

- [Installation](https://docs.livekit.io/reference/components/react/installation.md): Learn how to install and set up the @livekit/components-react package for React.
- [Best practices](https://docs.livekit.io/reference/components/react/guide.md): Recommendations for creating apps using LiveKit React components.

### Concepts

- [Building blocks](https://docs.livekit.io/reference/components/react/concepts/building-blocks.md): A short tour through everything you need to build your next LiveKit app.
- [LiveKitRoom component](https://docs.livekit.io/reference/components/react/concepts/livekit-room-component.md)
- [Contexts](https://docs.livekit.io/reference/components/react/concepts/contexts.md): Learn how contexts in LiveKit components provide easy access to the parent state for nested components.
- [Loop components](https://docs.livekit.io/reference/components/react/concepts/loops.md)
- [Custom components](https://docs.livekit.io/reference/components/react/concepts/custom-components.md)
- [Style components](https://docs.livekit.io/reference/components/react/concepts/style-components.md)
- [Rendering video tracks](https://docs.livekit.io/reference/components/react/concepts/rendering-video.md)
- [Rendering audio tracks](https://docs.livekit.io/reference/components/react/concepts/rendering-audio.md): Different ways to render audio with React Components

### Hooks

- [useAgent](https://docs.livekit.io/reference/components/react/hook/useagent.md)
- [useAudioPlayback](https://docs.livekit.io/reference/components/react/hook/useaudioplayback.md)
- [useAudioWaveform](https://docs.livekit.io/reference/components/react/hook/useaudiowaveform.md)
- [useChat](https://docs.livekit.io/reference/components/react/hook/usechat.md)
- [useChatToggle](https://docs.livekit.io/reference/components/react/hook/usechattoggle.md)
- [useClearPinButton](https://docs.livekit.io/reference/components/react/hook/useclearpinbutton.md)
- [useConnectionQualityIndicator](https://docs.livekit.io/reference/components/react/hook/useconnectionqualityindicator.md)
- [useConnectionState](https://docs.livekit.io/reference/components/react/hook/useconnectionstate.md)
- [useCreateLayoutContext](https://docs.livekit.io/reference/components/react/hook/usecreatelayoutcontext.md)
- [useDataChannel](https://docs.livekit.io/reference/components/react/hook/usedatachannel.md)
- [useDisconnectButton](https://docs.livekit.io/reference/components/react/hook/usedisconnectbutton.md)
- [useEnsureCreateLayoutContext](https://docs.livekit.io/reference/components/react/hook/useensurecreatelayoutcontext.md)
- [useEnsureLayoutContext](https://docs.livekit.io/reference/components/react/hook/useensurelayoutcontext.md)
- [useEnsureParticipant](https://docs.livekit.io/reference/components/react/hook/useensureparticipant.md)
- [useEnsureRoom](https://docs.livekit.io/reference/components/react/hook/useensureroom.md)
- [useEnsureSession](https://docs.livekit.io/reference/components/react/hook/useensuresession.md)
- [useEnsureTrackRef](https://docs.livekit.io/reference/components/react/hook/useensuretrackref.md)
- [useEvents](https://docs.livekit.io/reference/components/react/hook/useevents.md)
- [useFacingMode](https://docs.livekit.io/reference/components/react/hook/usefacingmode.md)
- [useFocusToggle](https://docs.livekit.io/reference/components/react/hook/usefocustoggle.md)
- [useGridLayout](https://docs.livekit.io/reference/components/react/hook/usegridlayout.md)
- [useIsEncrypted](https://docs.livekit.io/reference/components/react/hook/useisencrypted.md)
- [useIsMuted](https://docs.livekit.io/reference/components/react/hook/useismuted.md)
- [useIsRecording](https://docs.livekit.io/reference/components/react/hook/useisrecording.md)
- [useIsSpeaking](https://docs.livekit.io/reference/components/react/hook/useisspeaking.md)
- [useKrispNoiseFilter](https://docs.livekit.io/reference/components/react/hook/usekrispnoisefilter.md)
- [useLayoutContext](https://docs.livekit.io/reference/components/react/hook/uselayoutcontext.md)
- [useLiveKitRoom](https://docs.livekit.io/reference/components/react/hook/uselivekitroom.md)
- [useLocalParticipant](https://docs.livekit.io/reference/components/react/hook/uselocalparticipant.md)
- [useLocalParticipantPermissions](https://docs.livekit.io/reference/components/react/hook/uselocalparticipantpermissions.md)
- [useMaybeLayoutContext](https://docs.livekit.io/reference/components/react/hook/usemaybelayoutcontext.md)
- [useMaybeParticipantContext](https://docs.livekit.io/reference/components/react/hook/usemaybeparticipantcontext.md)
- [useMaybeRoomContext](https://docs.livekit.io/reference/components/react/hook/usemayberoomcontext.md)
- [useMaybeSessionContext](https://docs.livekit.io/reference/components/react/hook/usemaybesessioncontext.md)
- [useMaybeTrackRefContext](https://docs.livekit.io/reference/components/react/hook/usemaybetrackrefcontext.md)
- [useMediaDevices](https://docs.livekit.io/reference/components/react/hook/usemediadevices.md)
- [useMediaDeviceSelect](https://docs.livekit.io/reference/components/react/hook/usemediadeviceselect.md)
- [useMultibandTrackVolume](https://docs.livekit.io/reference/components/react/hook/usemultibandtrackvolume.md)
- [usePagination](https://docs.livekit.io/reference/components/react/hook/usepagination.md)
- [useParticipantAttribute](https://docs.livekit.io/reference/components/react/hook/useparticipantattribute.md)
- [useParticipantAttributes](https://docs.livekit.io/reference/components/react/hook/useparticipantattributes.md)
- [useParticipantContext](https://docs.livekit.io/reference/components/react/hook/useparticipantcontext.md)
- [useParticipantInfo](https://docs.livekit.io/reference/components/react/hook/useparticipantinfo.md)
- [useParticipantPermissions](https://docs.livekit.io/reference/components/react/hook/useparticipantpermissions.md)
- [useParticipants](https://docs.livekit.io/reference/components/react/hook/useparticipants.md)
- [useParticipantTile](https://docs.livekit.io/reference/components/react/hook/useparticipanttile.md)
- [useParticipantTracks](https://docs.livekit.io/reference/components/react/hook/useparticipanttracks.md)
- [usePersistentUserChoices](https://docs.livekit.io/reference/components/react/hook/usepersistentuserchoices.md)
- [usePinnedTracks](https://docs.livekit.io/reference/components/react/hook/usepinnedtracks.md)
- [usePreviewDevice](https://docs.livekit.io/reference/components/react/hook/usepreviewdevice.md)
- [usePreviewTracks](https://docs.livekit.io/reference/components/react/hook/usepreviewtracks.md)
- [useRemoteParticipant](https://docs.livekit.io/reference/components/react/hook/useremoteparticipant.md)
- [useRemoteParticipants](https://docs.livekit.io/reference/components/react/hook/useremoteparticipants.md)
- [useRoomContext](https://docs.livekit.io/reference/components/react/hook/useroomcontext.md)
- [useRoomInfo](https://docs.livekit.io/reference/components/react/hook/useroominfo.md)
- [useSequentialRoomConnectDisconnect](https://docs.livekit.io/reference/components/react/hook/usesequentialroomconnectdisconnect.md)
- [useSession](https://docs.livekit.io/reference/components/react/hook/usesession.md)
- [useSessionContext](https://docs.livekit.io/reference/components/react/hook/usesessioncontext.md)
- [useSessionMessages](https://docs.livekit.io/reference/components/react/hook/usesessionmessages.md)
- [useSortedParticipants](https://docs.livekit.io/reference/components/react/hook/usesortedparticipants.md)
- [useSpeakingParticipants](https://docs.livekit.io/reference/components/react/hook/usespeakingparticipants.md)
- [useStartAudio](https://docs.livekit.io/reference/components/react/hook/usestartaudio.md)
- [useStartVideo](https://docs.livekit.io/reference/components/react/hook/usestartvideo.md)
- [useSwipe](https://docs.livekit.io/reference/components/react/hook/useswipe.md)
- [useTextStream](https://docs.livekit.io/reference/components/react/hook/usetextstream.md)
- [useToken](https://docs.livekit.io/reference/components/react/hook/usetoken.md)
- [useTrackByName](https://docs.livekit.io/reference/components/react/hook/usetrackbyname.md)
- [useTrackMutedIndicator](https://docs.livekit.io/reference/components/react/hook/usetrackmutedindicator.md)
- [useTrackRefContext](https://docs.livekit.io/reference/components/react/hook/usetrackrefcontext.md)
- [useTracks](https://docs.livekit.io/reference/components/react/hook/usetracks.md)
- [useTrackToggle](https://docs.livekit.io/reference/components/react/hook/usetracktoggle.md)
- [useTrackTranscription](https://docs.livekit.io/reference/components/react/hook/usetracktranscription.md)
- [useTrackVolume](https://docs.livekit.io/reference/components/react/hook/usetrackvolume.md)
- [useTranscriptions](https://docs.livekit.io/reference/components/react/hook/usetranscriptions.md)
- [useVisualStableUpdate](https://docs.livekit.io/reference/components/react/hook/usevisualstableupdate.md)
- [useVoiceAssistant](https://docs.livekit.io/reference/components/react/hook/usevoiceassistant.md)

### Components

- [AudioConference](https://docs.livekit.io/reference/components/react/component/audioconference.md)
- [AudioTrack](https://docs.livekit.io/reference/components/react/component/audiotrack.md)
- [AudioVisualizer](https://docs.livekit.io/reference/components/react/component/audiovisualizer.md)
- [BarVisualizer](https://docs.livekit.io/reference/components/react/component/barvisualizer.md)
- [CarouselLayout](https://docs.livekit.io/reference/components/react/component/carousellayout.md)
- [Chat](https://docs.livekit.io/reference/components/react/component/chat.md)
- [ChatEntry](https://docs.livekit.io/reference/components/react/component/chatentry.md)
- [ChatToggle](https://docs.livekit.io/reference/components/react/component/chattoggle.md)
- [ClearPinButton](https://docs.livekit.io/reference/components/react/component/clearpinbutton.md)
- [ConnectionQualityIndicator](https://docs.livekit.io/reference/components/react/component/connectionqualityindicator.md)
- [ConnectionState](https://docs.livekit.io/reference/components/react/component/connectionstate.md)
- [ConnectionStateToast](https://docs.livekit.io/reference/components/react/component/connectionstatetoast.md)
- [ControlBar](https://docs.livekit.io/reference/components/react/component/controlbar.md)
- [DisconnectButton](https://docs.livekit.io/reference/components/react/component/disconnectbutton.md)
- [FocusLayout](https://docs.livekit.io/reference/components/react/component/focuslayout.md)
- [FocusLayoutContainer](https://docs.livekit.io/reference/components/react/component/focuslayoutcontainer.md)
- [FocusToggle](https://docs.livekit.io/reference/components/react/component/focustoggle.md)
- [GridLayout](https://docs.livekit.io/reference/components/react/component/gridlayout.md)
- [LayoutContext](https://docs.livekit.io/reference/components/react/component/layoutcontext.md)
- [LayoutContextProvider](https://docs.livekit.io/reference/components/react/component/layoutcontextprovider.md)
- [LiveKitRoom](https://docs.livekit.io/reference/components/react/component/livekitroom.md)
- [MediaDeviceMenu](https://docs.livekit.io/reference/components/react/component/mediadevicemenu.md)
- [MediaDeviceSelect](https://docs.livekit.io/reference/components/react/component/mediadeviceselect.md)
- [ParticipantAudioTile](https://docs.livekit.io/reference/components/react/component/participantaudiotile.md)
- [ParticipantContext](https://docs.livekit.io/reference/components/react/component/participantcontext.md)
- [ParticipantContextIfNeeded](https://docs.livekit.io/reference/components/react/component/participantcontextifneeded.md)
- [ParticipantLoop](https://docs.livekit.io/reference/components/react/component/participantloop.md)
- [ParticipantName](https://docs.livekit.io/reference/components/react/component/participantname.md)
- [ParticipantTile](https://docs.livekit.io/reference/components/react/component/participanttile.md)
- [PreJoin](https://docs.livekit.io/reference/components/react/component/prejoin.md)
- [RoomAudioRenderer](https://docs.livekit.io/reference/components/react/component/roomaudiorenderer.md)
- [RoomContext](https://docs.livekit.io/reference/components/react/component/roomcontext.md)
- [RoomName](https://docs.livekit.io/reference/components/react/component/roomname.md)
- [SessionProvider](https://docs.livekit.io/reference/components/react/component/sessionprovider.md)
- [StartAudio](https://docs.livekit.io/reference/components/react/component/startaudio.md)
- [StartMediaButton](https://docs.livekit.io/reference/components/react/component/startmediabutton.md)
- [Toast](https://docs.livekit.io/reference/components/react/component/toast.md)
- [TrackLoop](https://docs.livekit.io/reference/components/react/component/trackloop.md)
- [TrackMutedIndicator](https://docs.livekit.io/reference/components/react/component/trackmutedindicator.md)
- [TrackRefContext](https://docs.livekit.io/reference/components/react/component/trackrefcontext.md)
- [TrackToggle](https://docs.livekit.io/reference/components/react/component/tracktoggle.md)
- [VideoConference](https://docs.livekit.io/reference/components/react/component/videoconference.md)
- [VideoTrack](https://docs.livekit.io/reference/components/react/component/videotrack.md)
- [VoiceAssistantControlBar](https://docs.livekit.io/reference/components/react/component/voiceassistantcontrolbar.md)

## Agents UI Components

### Framework

- [Overview](https://docs.livekit.io/reference/components/agents-ui.md): Agents UI is the fastest way to build multi-modal, agentic experiences on top of LiveKit's platform primitives.

### Blocks

- [AgentSessionView - 01](https://docs.livekit.io/reference/components/agents-ui/block/agent-session-view-01.md): A complete realtime agent session view with transcript, audio visualizer, and media controls.

### Components

#### Media controls

- [AgentControlBar](https://docs.livekit.io/reference/components/agents-ui/component/agent-control-bar.md): A control bar for managing media tracks (microphone, camera, screen share), opening the chat input, and disconnecting the agent session.
- [AgentTrackControl](https://docs.livekit.io/reference/components/agents-ui/component/agent-track-control.md): A UI control for managing media tracks (microphone, camera, screen share).
- [AgentTrackToggle](https://docs.livekit.io/reference/components/agents-ui/component/agent-track-toggle.md): A UI toggle for capturing a client's media input (microphone, camera, screen share).

#### Audio visualizers

- [AgentAudioVisualizerBar](https://docs.livekit.io/reference/components/agents-ui/component/agent-audio-visualizer-bar.md): An audio visualization of linear bouncing bars.
- [AgentAudioVisualizerGrid](https://docs.livekit.io/reference/components/agents-ui/component/agent-audio-visualizer-grid.md): An audio visualization of a grid of particles.
- [AgentAudioVisualizerRadial](https://docs.livekit.io/reference/components/agents-ui/component/agent-audio-visualizer-radial.md): An audio visualization of a radial bouncing bar.
- [AgentAudioVisualizerWave](https://docs.livekit.io/reference/components/agents-ui/component/agent-audio-visualizer-wave.md): A shader based audio visualization of a sine wave.
- [AgentAudioVisualizerAura](https://docs.livekit.io/reference/components/agents-ui/component/agent-audio-visualizer-aura.md): A shader based audio visualization of a pulsing energy field.

#### Session management

- [AgentSessionProvider](https://docs.livekit.io/reference/components/agents-ui/component/agent-session-provider.md): A context provider for the LiveKit agent session.
- [AgentDisconnectButton](https://docs.livekit.io/reference/components/agents-ui/component/agent-disconnect-button.md): A button for disconnecting the agent session.
- [StartAudioButton](https://docs.livekit.io/reference/components/agents-ui/component/start-audio-button.md): A button for starting the agent session's audio track when the browser blocks audio playback.

#### Chat components

- [AgentChatIndicator](https://docs.livekit.io/reference/components/agents-ui/component/agent-chat-indicator.md): An animated chat indicator for asynchronous states.
- [AgentChatTranscript](https://docs.livekit.io/reference/components/agents-ui/component/agent-chat-transcript.md): A chat transcript for displaying conversational history.

#### Miscellaneous

- [NextJS API Token Route](https://docs.livekit.io/reference/components/agents-ui/component/nextjs-api-token-route.md): A NextJS API route to generate a LiveKit session token while keeping your API keys private.
- [ReactShaderToy](https://docs.livekit.io/reference/components/agents-ui/component/react-shader-toy.md): Easily render ShaderToy based shaders.

## Android Components

### Getting started

- [Installation](https://docs.livekit.io/reference/components/android.md): LiveKit Android Components are the easiest way to build realtime audio/video apps with Jetpack Compose on Android.
- [API Reference](https://docs.livekit.io/components-android/index.html.md)
- [Samples](https://docs.livekit.io/reference/components/android/samples.md)

### Concepts

- [Building Blocks](https://docs.livekit.io/reference/components/android/concepts/building-blocks.md): A short tour through everything you need to build your next LiveKit app.
- [Rendering a single Track](https://docs.livekit.io/reference/components/android/concepts/rendering-a-track.md)
- [RoomScope](https://docs.livekit.io/reference/components/android/concepts/roomscope.md)
- [Scopes](https://docs.livekit.io/reference/components/android/concepts/scopes.md): Learn how scopes in LiveKit components provide easy access to the parent state for nested composables.

## Recipes

### Quickstart

- [Voice AI quickstart](https://docs.livekit.io/agents/start/voice-ai.md): Build and deploy a simple voice assistant in less than 10 minutes.
- [SwiftUI Voice Agent](https://github.com/livekit-examples/agent-starter-swift)
- [Next.js Voice Agent](https://github.com/livekit-examples/agent-starter-react)
- [Flutter Voice Agent](https://github.com/livekit-examples/agent-starter-flutter)
- [React Native Voice Agent](https://github.com/livekit-examples/agent-starter-react-native)
- [Android Voice Agent](https://github.com/livekit-examples/agent-starter-android)
- [Web Embed Voice Agent](https://github.com/livekit-examples/agent-starter-embed)
- [Python Voice Agent](https://github.com/livekit-examples/agent-starter-python)
- [Warm Transfer](https://github.com/livekit/agents/tree/main/examples/warm-transfer)
- [Node.js Voice Agent](https://github.com/livekit-examples/agent-starter-node)

### Advanced LLM

- [Chain-of-thought agent](https://docs.livekit.io/reference/recipes/chain-of-thought.md): How to modify LLM output before sending the text to TTS for vocalization.
- [Context Variables](https://docs.livekit.io/reference/recipes/context_variables.md): Shows how to give an agent context about the user using simple variables.
- [Interrupt User](https://docs.livekit.io/reference/recipes/interrupt_user.md): Shows how to interrupt the user if they've spoken too much.
- [Long running tools](https://github.com/livekit/agents/blob/main/examples/voice_agents/long_running_function.py)
- [LLM Content Filter](https://docs.livekit.io/reference/recipes/llm_powered_content_filter.md): Content filter using a separate LLM for real-time moderation decisions
- [Simple Content Filter](https://docs.livekit.io/reference/recipes/simple_content_filter.md): Basic keyword-based content filter with inline replacement
- [Replacing LLM Output](https://docs.livekit.io/reference/recipes/replacing_llm_output.md): Replaces Deepseek thinking tags with custom messages for TTS
- [LLM Metrics](https://docs.livekit.io/reference/recipes/metrics_llm.md): Shows how to use the LLM metrics to log metrics to the console for all of the different LLM models.
- [MCP Agent](https://docs.livekit.io/reference/recipes/http_mcp_client.md): Shows how to use a LiveKit Agent as an MCP client.
- [Structured Output](https://github.com/livekit/agents/blob/main/examples/voice_agents/structured_output.py)
- [RPC + State Agent](https://github.com/livekit-examples/python-agents-examples/tree/main/docs/examples/rpc_agent)

### Voice Processing

- [Push-to-Talk Agent](https://github.com/livekit/agents/blob/main/examples/voice_agents/push_to_talk.py)
- [Uninterruptable Agent](https://docs.livekit.io/reference/recipes/uninterruptable.md): Agent configured to complete responses without user interruptions
- [Change Language](https://docs.livekit.io/reference/recipes/changing_language.md): Shows how to use the ElevenLabs TTS model to change the language of the agent.
- [Transcriber](https://docs.livekit.io/reference/recipes/transcriber.md): Shows how to transcribe user speech to text without TTS or an LLM.
- [Keyword Detection](https://github.com/livekit-examples/python-agents-examples/blob/main/docs/examples/keyword-detection/keyword_detection.py)
- [Pipeline Translator](https://docs.livekit.io/reference/recipes/pipeline_translator.md): Simple translation pipeline that converts English speech to French
- [TTS Translator](https://docs.livekit.io/reference/recipes/tts_translator.md): Advanced translation system using Gladia STT with code switching and event handling
- [STT Metrics](https://docs.livekit.io/reference/recipes/metrics_stt.md): Shows how to use the STT metrics to log metrics to the console.
- [VAD Metrics](https://docs.livekit.io/reference/recipes/metrics_vad.md): Shows how to use the VAD metrics to log metrics to the console.
- [Toggle Audio](https://github.com/livekit/agents/blob/main/examples/voice_agents/toggle_io.py)
- [Echo Agent](https://github.com/livekit/agents/blob/main/examples/primitives/echo-agent.py)
- [Sync TTS Transcription](https://github.com/livekit/agents/blob/main/examples/other/text-to-speech/sync_tts_transcription.py)

### Telephony

- [Using Twilio Voice](https://docs.livekit.io/telephony/accepting-calls/inbound-twilio.md): How to use LiveKit SIP with TwiML and Twilio conferencing.
- [IVR Agent](https://docs.livekit.io/reference/recipes/ivr-navigator.md): Build an AI agent that can call phone numbers and navigate IVR menus by listening and sending DTMF codes.
- [Company Directory](https://docs.livekit.io/reference/recipes/company-directory.md): Build a phone assistant that can transfer calls to different departments using SIP REFER.
- [Recording Consent](https://docs.livekit.io/reference/recipes/recording-consent.md): Build an AI agent that collects recording consent at the start of a call using the task pattern.
- [Phone Caller](https://docs.livekit.io/reference/recipes/make_call.md): Script that makes outbound calls via LiveKit Telephony using the LiveKit API
- [SIP Lifecycle](https://docs.livekit.io/reference/recipes/sip_lifecycle.md): Advanced SIP agent demonstrating complete call lifecycle management
- [Answer Incoming Calls](https://docs.livekit.io/reference/recipes/answer_call.md): Basic agent for handling incoming phone calls with simple conversation
- [Survey Caller](https://docs.livekit.io/reference/recipes/survey_caller.md): Automated survey calling agent with CSV data management and response recording
- [Agent-assisted warm transfer](https://docs.livekit.io/telephony/features/transfers/warm.md): How to transfer a call from an AI agent to a human operator while providing a contextual summary.
- [Call forwarding using SIP REFER](https://docs.livekit.io/telephony/features/transfers/cold.md): Transfer calls to another number or SIP endpoint using SIP REFER.
- [Secure trunking for SIP calls](https://docs.livekit.io/telephony/features/secure-trunking.md): How to enable secure trunking for LiveKit SIP.
- [Region pinning for SIP](https://docs.livekit.io/telephony/features/region-pinning.md): Learn how to isolate LiveKit telephony traffic to a specific region.
- [Agents telephony integration](https://docs.livekit.io/agents/start/telephony.md)

### Audio

- [Background audio](https://github.com/livekit/agents/blob/main/examples/voice_agents/background_audio.py)
- [Background audio example in Node.js](https://github.com/livekit/agents-js/blob/main/examples/src/background_audio.ts)
- [TTS Comparison](https://docs.livekit.io/reference/recipes/tts_comparison.md): Switches between different TTS providers using function tools.
- [TTS Metrics](https://docs.livekit.io/reference/recipes/metrics_tts.md): Shows how to use the TTS metrics to log metrics to the console.
- [Playing Audio](https://docs.livekit.io/reference/recipes/playing_audio.md): Shows how to play audio from a file in an agent.
- [Sound Repeater](https://docs.livekit.io/reference/recipes/repeater.md): Shows how to create an agent that can repeat what the user says.
- [Speedup Output Audio](https://github.com/livekit/agents/blob/main/examples/voice_agents/speedup_output_audio.py)

### Realtime Data

- [LivePaint](https://github.com/livekit-examples/livepaint)

### Vision

- [Gemini Vision Assistant](https://docs.livekit.io/reference/recipes/gemini_live_vision.md): Minimal Gemini Realtime model agent setup with live vision capabilities

### Robotics

- [Raspberry Pi Transcriber](https://docs.livekit.io/reference/recipes/pi_zero_transcriber.md): Shows how to create a simple transcriber that uses the LiveKit SDK to transcribe audio from the microphone.
- [Rover Teleop](https://github.com/livekit-examples/rover-teleop)

### Agent Workflows

- [Medical Office Triage](https://github.com/livekit-examples/python-agents-examples/tree/main/complex-agents/medical_office_triage)
- [Personal Shopper](https://github.com/livekit-examples/python-agents-examples/tree/main/complex-agents/personal_shopper)
- [Restaurant Agent](https://github.com/livekit/agents/blob/main/examples/voice_agents/restaurant_agent.py)
- [Drive-thru agent](https://github.com/livekit/agents/blob/main/examples/drive-thru)
- [Front-desk agent](https://github.com/livekit/agents/blob/main/examples/frontdesk)

### Tool Use

- [Moviefone](https://docs.livekit.io/reference/recipes/moviefone.md): Create a voice agent that helps users find movie showtimes across Canada.

### RAG

- [LlamaIndex RAG](https://github.com/livekit/agents/tree/main/examples/voice_agents/llamaindex-rag)

### Metrics

- [Realtime model metrics](https://docs.livekit.io/recipes/metrics_realtime.md)

### Virtual Avatars

- [Tavus Avatar Agent](https://github.com/livekit-examples/python-agents-examples/tree/main/complex-agents/avatars/tavus)
- [LemonSlice Avatar Agent](https://github.com/livekit-examples/python-agents-examples/tree/main/complex-agents/avatars/lemonslice)

### Virtual Reality

- [VR Spatial Video](https://github.com/livekit-examples/spatial-video)

### LangChain

- [LangChain LangGraph](https://github.com/livekit-examples/python-agents-examples/tree/main/docs/examples/langchain_langgraph)
- [LangChain Agent](https://github.com/livekit-examples/python-agents-examples/tree/main/docs/examples/langchain_agent)
- [LangChain Deep Agent](https://github.com/livekit-examples/python-agents-examples/tree/main/docs/examples/langchain_deepagent)

---

This document was rendered at 2026-04-25T03:44:21.173Z.
For the latest version of this document, see [https://docs.livekit.io/llms.txt](https://docs.livekit.io/llms.txt).
~~~

## llms-full

Not found.