
liveavatar-debug
Troubleshoot and debug LiveAvatar integration issues. Use when the user's LiveAvatar integration isn't working, the avatar is silent, audio is garbled, sessions fail to start, events aren't received, or they're getting API errors.
- Installs
- 1K
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/heygen-com/liveavatar-agent-skills --skill liveavatar-debug- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads liveavatar-debug automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
LiveAvatar Debugging Guide
Symptom-based troubleshooting for LiveAvatar integrations. Find your symptom below and follow the fix.
Avatar is silent / not responding to speech
Most likely: Missing context_id in FULL Mode.
Without a context_id, the avatar enters restricted mode — streams video but ignores user input. No error thrown.
Fix: Create a context via POST /v1/contexts with at least a prompt field. Include the returned context_id in your session token's avatar_persona.
Other causes:
- Browser mic permissions blocked (check
allow="microphone"on iframe) - Push-to-Talk enabled but PTT events not being sent
- OS-level mic mute
Audio is garbled or distorted (LITE Mode)
Most likely: Wrong audio format.
Required: PCM 16-bit signed, 24KHz, base64. No error returned for wrong format.
Checklist:
- Sample rate is exactly 24,000 Hz
- Raw PCM (no WAV/MP3/OGG headers)
- 16-bit signed, not 8-bit or 32-bit float
- Base64 encoded
- Chunks under 1MB
Quick test: Send a known-good 440Hz test tone. If it works but your TTS doesn't, resample your TTS output.
401 error / session fails to start
Most likely: Wrong auth header.
| Endpoint | Correct auth |
|---|---|
POST /v1/sessions/token | X-API-KEY: <api_key> |
POST /v1/sessions/start | Authorization: Bearer <session_token> |
Common mistakes: using API key on /start, using Bearer token on /token, putting API key in Bearer format.
Events not received (FULL Mode)
- Subscribed to correct topics? Send to
agent-control, receive fromagent-response - LiveKit room connected? Check connection state
- Parsing JSON correctly? Events have
event_type,event_id,session_id
WebSocket events silently dropped (LITE Mode)
Most likely: Sending before connected.
Wait for {"type": "session.state_updated", "state": "connected"} before sending any commands.
Also check:
- Using correct event names? LITE uses
agent.*, notavatar.*(that's FULL) - WebSocket still open? 5-min inactivity timeout
Session times out
5 minutes of inactivity kills the session.
- FULL:
POST /v1/sessions/keep-alivewithBearer <session_token> - LITE:
{"type": "session.keep_alive", "event_id": "..."}via WebSocket
Send every 2-3 minutes.
Sandbox won't start
-
is_sandbox: trueset in session token - Avatar ID is
dd73ea75-1218-4ef3-92ce-606d5f7fbc0a(sessions) or65f9e3c9-d48b-4118-b73a-4ae2e3cbb8f0(embeds) - Not using a different avatar with sandbox mode
~1 minute auto-termination is expected behavior.
Image avatar fails / no audio
Image avatars have no auto-generated voice. Specify voice_id in avatar_persona. Browse voices at GET /v1/voices.
Custom LLM / TTS not working
LLM checklist:
- Secret:
secret_type: "LLM_API_KEY" - Config: correct
model,secret_id,base_url -
llm_configuration_idin session token - Endpoint supports OpenAI
/chat/completionsprotocol
TTS checklist:
- Secret:
secret_type: "ELEVENLABS_API_KEY" - Voice imported via
POST /v1/voices/third_party - Using the returned LiveAvatar voice_id (not the ElevenLabs ID)
CORS / network errors
- API calls should come from backend, not browser
- Allow outbound
wss://for LiveKit and WebSocket - Allow
*.livekit.cloud,api.liveavatar.com,embed.liveavatar.com
General approach
- Start with sandbox mode to eliminate billing issues
- Check session state:
GET /v1/sessions/{id} - Check transcript:
GET /v1/sessions/{id}/transcript - Check credits:
GET /v1/users/credits - Verify you're not mixing FULL and LITE event systems
FAQ
What does the liveavatar-debug skill do?
Troubleshoot and debug LiveAvatar integration issues. Use when the user's LiveAvatar integration isn't working, the avatar is silent, audio is garbled, sessions fail to start, events aren't received, or they're getting API errors.
How do I install liveavatar-debug?
Run npx skills add https://github.com/heygen-com/liveavatar-agent-skills --skill liveavatar-debug in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/liveavatar-debug/ (personal) or .claude/skills/liveavatar-debug/ (project).
Which AI agents can use liveavatar-debug?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is liveavatar-debug safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains liveavatar-debug?
It is published by heygen-com in heygen-com/liveavatar-agent-skills. It has 1,043 recorded installs.
More from heygen-com/liveavatar-agent-skills
liveavatar-integrate
heygen-com/liveavatar-agent-skills
Build a LiveAvatar integration end-to-end — assesses the user's existing stack, recommends the optimal path, and guides implementation. Use when: (1) Building a new LiveAvatar integration, (2) Adding a real-time avatar to an app or site, (3) Connecting LiveAvatar to an existing AI pipeline, (4) User mentions LiveAvatar, real-time avatar, interactive avatar, conversational avatar, or lip-sync avatar, (5) Deciding between Embed, FULL Mode, and LITE Mode, (6) Migrating from HeyGen Interactive Avatar to LiveAvatar.
liveavatar-feedback
heygen-com/liveavatar-agent-skills
Collect and submit developer feedback to the LiveAvatar team. Use when: (1) A LiveAvatar integration is done, working, finished, or complete, (2) The user says "it works", "we're done", "that's it", "ship it", (3) The user is frustrated, stuck, or giving up — "this is broken", "this doesn't work", "I'm stuck", "I give up", "this is frustrating", "I want to report an issue", (4) The user explicitly asks to give feedback, report a bug, file an issue, or share a suggestion about LiveAvatar, (5) You've seen 3+ failed attempts at the same integration step, (6) You just finished writing or generating LiveAvatar integration code for the user.
liveavatar-demo
heygen-com/liveavatar-agent-skills
Open the skill to read its SKILL.md instructions.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.