- **Help Agent** — A new agent that answers questions about Talemate itself — settings, agents, clients, the world editor — grounded in the bundled documentation, and able to change agent and application settings on request. - **Timeline Rollback** — Scrub a slider across a scene's automatic version history, preview the message history at any revision, then roll the scene back in place or fork the revision into a new save. - **Pi Bridge Client** — A new client type that drives generations through the pi coding agent's headless RPC mode, making any model pi can reach usable in Talemate. - **Application Settings** — Settings move out of their modal into an always-available Settings tab, with a single topic-grouped sidebar, a settings search, all API keys on one page, and unsaved-change tracking. - **Scene Library** — The home screen is rebuilt as a full-page landing view with a file-tree scene library, cover thumbnails and per-save metadata, scene and save deletion, and a drag-and-drop import dropzone. - **Fast Character Creation** — Generate a character in a single request instead of one prompt per aspect, with a Consolidate multi-select, a token budget, and a Fill in misses pass. Off by default. - **Scene Backdrop** — Set any scene illustration as a backdrop filling the scene view behind the messages, saved with the scene, with configurable text legibility and an Immersive quick-toggle. - **Scene Visual Manager** — World Editor → Scene gains a Visuals tab to browse, upload, generate and delete the scene's backgrounds and illustrations, and set the cover image and backdrop. - **Visual Prompt Finalization** — Post-processing actions — match and replace, or a free-form AI instruction — rewrite image prompts right before they reach the image backend, with per-scene and per-character overrides and reusable template sets. - fixes #271 - fixes #275 Plus 25 improvements and 39 bug fixes — see [CHANGELOG.md](https://github.com/vegu-ai/talemate/blob/prep-0.39.0/CHANGELOG.md#0390) for the full list.
5.8 KiB
Event Nodes
Emit messages and status updates from graphs, and react to scene events with the Event listener node. See Events for the event system and the Events reference for every event a graph can listen to.
7 nodes.
| Node | Registry path |
|---|---|
| Emit Agent Message | event/EmitAgentMessage |
| Emit Scene Status | event/EmitSceneStatus |
| Emit Status | event/EmitStatus |
| Emit Status (Conditional) | event/EmitStatusConditional |
| Emit System Message | event/EmitSystemMessage |
| Emit World Editor Sync | event/EmitWorldEditorSync |
| Event | event/Event |
Emit Agent Message
event/EmitAgentMessage
Emits an agent message to the UX
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
The graph state |
message |
str |
(optional) The message text to emit |
agent |
agent,str |
(optional) The agent (agent object or agent name) |
header |
str |
(optional) The header of the message |
message_color |
str |
(optional) The color of the message |
meta |
dict |
(optional) The meta data of the message |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
The state input, passed through |
emitted |
bool |
Whether the message was emitted (True) or not (False) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
message |
str |
"" |
The message text to emit |
agent |
str |
"" |
The agent the message is attributed to. Choices are generated at runtime. |
header |
str |
"" |
The header of the message |
message_color |
str |
"grey" |
The color of the message. Choices are generated at runtime. |
meta |
dict |
{} |
The meta data of the message |
Emit Scene Status
event/EmitSceneStatus
Emits the scene status object to the UX
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
The graph state |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
The state input, passed through |
Emit Status
event/EmitStatus
Emits a status message
Inputs
| Input | Type | Description |
|---|---|---|
message |
str |
(optional) The message text to emit |
status |
str |
(optional) The status of the message |
as_scene_message |
bool |
Whether to emit the message as a scene message (optional) |
Outputs
| Output | Type | Description |
|---|---|---|
emitted |
bool |
Whether the message was emitted (True) or not (False) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
message |
str |
"" |
The message text to emit |
status |
str |
"info" |
The status of the message. Choices are generated at runtime. |
as_scene_message |
bool |
False |
Whether to emit the message as a scene message |
Emit Status (Conditional)
event/EmitStatusConditional
Emits a status message if a condition is met
Unlike EmitStatus, the state input is required, so the message is
only emitted when the state input actually receives a value -
connect it through a conditional branch to gate the emission.
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
The graph state |
message |
str |
(optional) The message text to emit |
status |
str |
(optional) The status of the message |
as_scene_message |
bool |
Whether to emit the message as a scene message (optional) |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
The graph state |
emitted |
bool |
Whether the message was emitted (True) or not (False) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
message |
str |
"" |
The message text to emit |
status |
str |
"info" |
The status of the message. Choices are generated at runtime. |
as_scene_message |
bool |
False |
Whether to emit the message as a scene message |
Emit System Message
event/EmitSystemMessage
Emits a system message
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
The graph state |
message_title |
str |
The title of the message (optional) |
message |
str |
(optional) The message text to emit |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
The graph state |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
message_title |
str |
"" |
The title of the message |
message |
text |
"" |
The message text to emit |
font_color |
str |
"grey" |
The color of the message. Choices are generated at runtime. |
icon |
str |
"mdi-information" |
The icon of the message |
display |
str |
"text" |
Whether to display the message. Choices are generated at runtime. |
as_markdown |
bool |
False |
Whether to render the message as markdown |
Emit World Editor Sync
event/EmitWorldEditorSync
Sends a world editor sync message which on the UX side will cause the world editor to sync its state with the server
This is useful when the world editor needs to be updated with the latest state.
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
Event
event/Event
Returns the current event object when inside a Listen node module.
Outputs
| Output | Type | Description |
|---|---|---|
event |
event |
The current event object |