Put a living character on the agent you already run.
Keep your agent loop exactly as it is. Drop one script on any page, mount one element, and make three calls โ state, transcript, audio level. Alive draws expression, gesture, and presence in the browser; the snippet below is the whole integration.
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