Mirako Interactive
Mirako Interactive lets you put a lifelike AI avatar in front of your users for real-time, face-to-face conversation. You talk, the avatar listens, thinks, and answers back with voice and lip-synced video.
Interactive is built around Agents. An Agent is a persistent configuration that combines:
- An avatar — how your character looks
- A voice profile — how your character sounds
- A brain — either instructions managed by Mirako, or your own agent endpoint
You define an Agent once, create a shareable route link for it, and the avatar is always there when someone opens the link. There is no session to start, warm up, or stop — visitors just open the page and start chatting.
Managed Agent vs Custom Agent
Every Agent is one of two runtime kinds:
Managed Agent (managed_agent) |
Custom Agent (custom_agent) |
|
|---|---|---|
| Who runs the LLM? | Mirako | You, at your own endpoint |
| You provide | An instruction prompt, optional MCP tools |
An HTTPS endpoint URL (custom_agent_url) |
| Model selection | Managed by Mirako, not configurable | Entirely up to your endpoint |
| Best for | Getting a talking avatar live in minutes | Bringing an existing agent, RAG pipeline, or business logic |
See Building a Custom Agent for the endpoint contract your server must implement.
Quick Start
You need a READY avatar and a voice profile first. If you don't have an avatar yet, start with Generate Avatar to create a portrait image, then follow Build Avatar to turn it into a READY avatar. For the voice, pick a premade voice (mirako voice premade) or one of your custom voices (mirako voice list).
1. Create an Agent
Run mirako agent create and the CLI will guide you through picking an avatar, a voice, and an instruction. Or pass everything as flags:
mirako agent create \
--name "Support Agent" \
--avatar <MY_AVATAR_ID> \
--voice <MY_VOICE_ID> \
--instruction "You are a friendly support agent for our store. Answer product questions concisely."
Keep the agent ID from the output — you will use it in the next step.
Note: Prefer a file for longer prompts? Use
--instruction-file ./instruction.md(.txt,.md, or.markdown) instead of--instruction.
2. Create a Route and Share It
A route is the public link to your Agent:
mirako agent routes create <MY_AGENT_ID> --label "Website"
Share the resulting link with anyone:
https://interactive.mirako.ai/r/<ROUTE_ID>
That's it. Whoever opens the link can talk to your avatar right away — no account, no API key, and nothing for you to start or stop. Routes can be permanent or temporary, and you can revoke one at any time. See Agent Routes.
Note: A route link works like a password — anyone who has it can talk to your Agent, and conversation usage is billed to your account by duration. Share it only where you intend it to be used, and revoke it if it leaks.
How It Works
- You create an Agent (avatar + voice + brain) once, via the CLI, the API, or the developer portal.
- You create one or more routes for the Agent — for example, one permanent link for your website and one 24-hour link for a demo.
- A visitor opens
https://interactive.mirako.ai/r/<ROUTE_ID>in a browser. - The Interactive service resolves the route to your Agent, loads the avatar and voice, and connects the visitor. The first visit for an avatar may take a little longer while the avatar is prepared; after that, joining is fast.
- For voice and video conversations, Mirako sends a synthetic opening turn so the agent can greet the visitor before they speak. See Agent Greeting.
- The visitor chats with the avatar in real time. They can leave the page to end their connection, and the agent can also request an ending. End of Conversation covers the managed-agent tool and custom-agent protocol. A custom agent can also mark one response as non-interruptible so it plays in full; Response Protection covers that per-response control.
Updating your Agent — a new instruction, a different voice, a new avatar — takes effect for the next conversation on every existing route. You never need to re-share a link because you edited the Agent.
Going Next
- Create an Agent: Full guide to creating and managing Agents with the CLI and the API
- Share & Embed: Embed the Interactive page in your own app with an iframe
- Agent Greeting: Understand the automatic opening turn
- End of Conversation: Learn how managed agents request call endings
- Response Protection: Let a custom agent finish one response without voice interruption