livekit
Build voice AI agents with LiveKit. Use when developing realtime voice applications, voice agent pipelines (STT-LLM-TTS), WebRTC communication, or deploying conversational AI. Covers LiveKit Agents SDK, provider selection (Deepgram, OpenAI, ElevenLabs, Cartesia), cloud vs self-hosted deployment.
- License 许可
- MIT
- 最近更新
- 2026-06-07
- Stars
- ★ 0
- Forks
- 1
01 前言 Front Matter
- name
- livekit
- description
- Build voice AI agents with LiveKit. Use when developing realtime voice applications, voice agent pipelines (STT-LLM-TTS), WebRTC communication, or deploying conversational AI. Covers LiveKit Agents SDK, provider selection (Deepgram, OpenAI, ElevenLabs, Cartesia), cloud vs self-hosted deployment.
03 SKILL.md 正文
LiveKit Voice AI Skill
Build production voice agents with LiveKit's open-source platform.
Quick Start
# Install SDK
pip install livekit-agents livekit-plugins-openai livekit-plugins-deepgram livekit-plugins-cartesia
# Or Node.js
npm install @livekit/agents @livekit/agents-plugin-openai
Minimal Agent (Python)
from livekit.agents import AgentSession, JobContext, WorkerOptions, cli
from livekit.plugins import deepgram, openai, cartesia
async def entrypoint(ctx: JobContext):
await ctx.connect()
session = AgentSession(
stt=deepgram.STT(),
llm=openai.LLM(model="gpt-4.1-mini"),
tts=cartesia.TTS(),
)
session.start(ctx.room)
await session.say("Hello! How can I help?")
if __name__ == "__main__":
cli.run_app(WorkerOptions(entrypoint_fnc=entrypoint))
Provider Selection
| Component | Budget | Quality | Low Latency |
|---|---|---|---|
| STT | Deepgram Nova-3 | AssemblyAI | Deepgram Keychain |
| LLM | GPT-4.1 mini | Claude Sonnet | GPT-4.1 mini |
| TTS | Cartesia Sonic-3 | ElevenLabs | Cartesia Sonic-3 |
Voice Pipeline vs Realtime
STT-LLM-TTS Pipeline:
- More control, mix providers
- Generally cheaper
- Easier to debug
OpenAI Realtime API:
- Speech-to-speech, more expressive
- Higher cost (~$0.10/min)
- Less control
Environment Variables
LIVEKIT_URL=wss://your-app.livekit.cloud
LIVEKIT_API_KEY=your-api-key
LIVEKIT_API_SECRET=your-api-secret
# Provider keys (if not using LiveKit Inference)
OPENAI_API_KEY=
DEEPGRAM_API_KEY=
CARTESIA_API_KEY=
ELEVENLABS_API_KEY=
Tool Use
from livekit.agents import function_tool
@function_tool()
async def get_weather(location: str) -> str:
"""Get current weather for a location."""
# Your implementation
return f"Weather in {location}: 72°F, sunny"
session = AgentSession(
stt=deepgram.STT(),
llm=openai.LLM(),
tts=cartesia.TTS(),
tools=[get_weather],
)
Telephony (SIP)
from livekit import api
# Outbound call
await lk_api.sip.create_sip_participant(
api.CreateSIPParticipantRequest(
sip_trunk_id="trunk-id",
sip_call_to="+15551234567",
room_name="my-room",
)
)
Deployment
LiveKit Cloud: livekit-server-cli deploy --project my-project
Self-hosted:
docker run -d \
-p 7880:7880 -p 7881:7881 -p 7882:7882/udp \
-e LIVEKIT_KEYS="api-key: api-secret" \
livekit/livekit-server
Cost Estimates
| Scenario | Monthly Cost |
|---|---|
| Dev/testing | Free tier |
| 100 hrs/mo voice | ~$150-250 |
| Production B2B | ~$300-500 |
| High volume | Self-host |
Common Patterns
Turn Detection
session = AgentSession(
turn_detection=openai.TurnDetection(
threshold=0.5,
silence_duration_ms=500,
),
...
)
Interruption Handling
@session.on("user_speech_started")
async def handle_interruption():
session.stop_speaking()
Multi-Agent Handoff
await session.transfer_to(specialist_agent)
References
- Docs: https://docs.livekit.io/agents/
- Examples: https://github.com/livekit/agents/tree/main/examples
- Playground: https://agents-playground.livekit.io
04 同仓库更多 Skills
crowd-prompting
A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.
ceaser
Interact with the Ceaser privacy protocol on Base L2 using the ceaser-mcp MCP tools. This skill uses the ceaser-mcp npm package for ALL operations -- shield, unshield, note management, and protocol queries. All ceaser tool calls use CLI subcommands (npx -y ceaser-mcp <subcommand>). Ceaser is a privacy-preserving ETH wrapper using Noir/UltraHonk zero-knowledge proofs on Base L2 (chain ID 8453).
ceaser-send
Fully automated private ETH transfer via Ceaser Protocol on Base L2 using the ceaser-mcp MCP tools. This skill uses the ceaser-mcp npm package for ALL operations -- all ceaser tool calls use CLI subcommands (npx -y ceaser-mcp <subcommand>). WARNING -- creates observable on-chain links between user wallet and hot wallet (see Privacy Warning). Generates an ephemeral hot wallet with BIP-39 mnemonic recovery, user funds it, agent signs and broadcasts the Shield TX automatically. Exactly one manual step required (funding the hot wallet with ETH). Uses Noir/UltraHonk zero-knowledge proofs.
dilemm-ai
Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).
moldium
Post and manage content on the Moldium blog platform. Triggered by "post to Moldium", "write a blog post", "publish an article", etc.
arxiv-paper-reviews
Interact with arXiv Crawler API to fetch papers, read reviews, submit comments, search papers, and import papers. Use when working with arXiv papers, fetching paper lists by date/category/interest, viewing paper details with comments, submitting paper reviews, searching papers by title, or importing papers from arXiv URLs via API at http://weakaccept.top:8000/.