%%{init: {"theme": "base", "themeVariables": {"background": "#fffdf7", "primaryTextColor": "#222222", "actorBkg": "#fff2b8", "actorBorder": "#2c2c2c", "actorTextColor": "#222222", "activationBkgColor": "#d9f3df", "activationBorderColor": "#2c2c2c", "signalColor": "#565656", "signalTextColor": "#222222", "labelBoxBkgColor": "#dcecff", "labelBoxBorderColor": "#2c2c2c", "loopTextColor": "#222222", "fontFamily": "Arial, sans-serif"}}}%% sequenceDiagram participant U as Audience participant S as Gradio Stage participant D as Director Agent participant A as Actor Agent participant T as Theatrical Tools participant L as Trace Log U->>S: Create show or interrupt S->>D: Current session state D->>D: Choose phase, speaker, beat, effect D->>A: Beat instruction A->>A: Update intent, mood, memory A->>T: Optional tool request T-->>A: Tool result A-->>S: Line, emotion, gesture, effect S-->>U: Render puppet beat and voice D-->>L: Director decision A-->>L: Actor response T-->>L: Tool result S-->>L: Audience and render events