One event stream in. A living character out.
Keep your agent loop exactly as it is. Pipe state, transcript, and audio level into the adapter โ Alive handles expression, gesture, and presence in the browser.
Embed in three lines.
Drop the runtime on any page, mount the element, and drive it from your agent loop.
A stable integration boundary.
The renderer evolves; the adapter contract doesn't. Everything on this site โ the hero, the state rail, the studio preview โ runs through this same interface.
Bring your own everything.
Stream states and text from any agent framework. Compatible with NetShow IQ1, OpenAI, Claude, Gemini, or self-hosted models.
Feed setAudioLevel() from any TTS or WebRTC stream and the mouth follows. No proprietary voice required.
WebSocket, SSE, WebRTC data channels, or plain polling โ the adapter is transport-agnostic by design.
{{integrationsNote}}
Builder โ $39/month
20 avatars, 10 published embeds, SDK and API access, agent-state events, bring-your-own model and voice, analytics, and 3 team seats.
- Deterministic state transitions โ no surprise animations in production
- requestAnimationFrame renderer; pauses off-screen and in hidden tabs
- Reduced-motion and low-power modes built into the element
- No mic or audio access unless your code asks for it