II.
InteractionPrimitive JSON
Structured · liveinteraction-primitive:avatar-lipsync
Avatar lipsync (voice-synced mouth) json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "interaction-primitive:avatar-lipsync",
"_kind": "InteractionPrimitive",
"_file": "agent-stack/interaction-primitives/voice/avatar-video.yaml",
"_cluster": "agent-stack",
"attributes": {
"displayName": "Avatar lipsync (voice-synced mouth)",
"kind": "video",
"surface": "video",
"requiresPermission": false,
"description": "The animated character's mouth/jaw morphs are driven from TTS viseme timing\n(Azure VisemeReceived / ElevenLabs timestamps) scheduled against the same-page\naudio clock, so the published video track lip-syncs the published audio track.\nFast path; never a tool call. See docs/research/realtime-voice-agent-stack.md §II.2.\n"
},
"outgoingEdges": [
{
"from": "interaction-primitive:avatar-lipsync",
"to": "layer:10-interaction",
"kind": "realizes",
"attributes": {}
}
],
"incomingEdges": []
}