- **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.
8.1 KiB
Asset Nodes
Manage scene assets (images and other files): add, fetch, list, remove and update them, and set cover and avatar images.
9 nodes.
| Node | Registry path |
|---|---|
| Add Asset | assets/AddAsset |
| Asset Exists | assets/AssetExists |
| Get Asset | assets/GetAsset |
| Get Assets | assets/GetAssets |
| List Assets | assets/ListAssets |
| Remove Asset | assets/RemoveAsset |
| Set Avatar Image | assets/SetAvatarImage |
| Set Cover Image | assets/SetCoverImage |
| Update Message Assets | assets/UpdateMessageAsset |
Add Asset
assets/AddAsset
Add an asset to the scene from image data (base64 data URL).
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
graph state (required) |
image_data |
str |
(optional) base64 data URL (e.g., "data:image/png;base64,...") |
meta |
asset_meta |
asset metadata (optional) |
asset_attachment_context |
asset_attachment_context |
controls automatic asset attachment behavior (optional) |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
graph state |
asset |
asset |
the created asset object |
asset_id |
str |
the asset ID |
image_data |
str |
the image data (passed through) |
meta |
asset_meta |
the asset metadata (passed through) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
image_data |
str |
"" |
Base64 data URL (e.g., 'data:image/png;base64,...') |
Asset Exists
assets/AssetExists
Check if an asset exists by ID.
Routes to 'yes' output if the asset exists, 'no' output if it doesn't.
Inputs
| Input | Type | Description |
|---|---|---|
asset_id |
str |
(optional) the asset ID to check |
Outputs
| Output | Type | Description |
|---|---|---|
yes |
any |
activated if asset exists (contains asset_id) |
no |
any |
activated if asset does not exist (contains asset_id) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
asset_id |
str |
"" |
The asset ID to check |
return_bool |
bool |
False |
If True, return True instead of asset_id |
allow_partial |
bool |
False |
If True, match assets whose ID starts with the given asset_id |
Get Asset
assets/GetAsset
Get an asset by ID.
Inputs
| Input | Type | Description |
|---|---|---|
asset_id |
str |
(optional) the asset ID |
Outputs
| Output | Type | Description |
|---|---|---|
asset |
asset |
the asset object |
asset_id |
str |
the asset ID (passed through) |
file_type |
str |
the file type |
media_type |
str |
the media type |
meta |
asset_meta |
the asset metadata |
asset_bytes |
any |
the asset bytes (only set if connected) |
base64_data |
str |
the asset bytes as base64 (only set if connected) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
asset_id |
str |
"" |
The asset ID |
Get Assets
assets/GetAssets
Get multiple assets by their IDs.
Asset IDs that don't exist are skipped rather than raising an error.
Inputs
| Input | Type | Description |
|---|---|---|
asset_ids |
list |
(optional) list of asset IDs |
Outputs
| Output | Type | Description |
|---|---|---|
assets |
list |
list of asset objects |
asset_ids |
list |
list of asset IDs that were found (missing assets are skipped) |
asset_count |
int |
number of assets retrieved |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
asset_ids |
list |
[] |
List of asset IDs |
List Assets
assets/ListAssets
List all asset IDs in the scene.
Outputs
| Output | Type | Description |
|---|---|---|
asset_ids |
list |
list of asset IDs |
asset_count |
int |
number of assets |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
reference_only |
bool |
False |
If True, only return reference assets |
Remove Asset
assets/RemoveAsset
Remove an asset from the scene.
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
graph state (required) |
asset_id |
str |
(optional) the asset ID to remove |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
graph state |
asset_id |
str |
the asset ID (passed through) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
asset_id |
str |
"" |
The asset ID to remove |
Set Avatar Image
assets/SetAvatarImage
Set the avatar image for a character (default or current).
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
graph state (required) |
asset_id |
str |
the asset ID to set as avatar |
character |
character |
the character to set the avatar for |
avatar_type |
str |
(optional) "default" or "current" (defaults to "default") |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
graph state |
asset_id |
str |
the asset ID (passed through) |
character |
character |
the character (passed through) |
avatar_type |
str |
the avatar type (passed through) |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
avatar_type |
str |
"default" |
Type of avatar to set: 'default' or 'current'. Choices: default, current. |
Set Cover Image
assets/SetCoverImage
Set the cover image for the scene and/or a character from an existing scene asset.
If set_on_scene is true the asset becomes the scene cover image; if a
character is provided the asset becomes that character's cover image. The
override flags control whether an existing cover image is replaced.
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
The graph state |
asset_id |
str |
The id of the asset to use as the cover image |
set_on_scene |
bool |
Whether to set the cover image on the scene (optional) |
override_scene |
bool |
Whether to override an existing scene cover image (optional) |
override_character |
bool |
Whether to override an existing character cover image (optional) |
character |
character |
The character to set the cover image for (optional) |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
The state input, passed through |
asset_id |
str |
The asset id, passed through |
set_on_scene |
bool |
The set_on_scene input, passed through |
override_scene |
bool |
The override_scene input, passed through |
override_character |
bool |
The override_character input, passed through |
character |
character |
The character input, passed through |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
asset_id |
str |
"" |
asset_id |
set_on_scene |
bool |
False |
Whether to set the cover image on the scene |
override_scene |
bool |
False |
Whether to override the scene cover image |
override_character |
bool |
False |
Whether to override the character cover image |
Update Message Assets
assets/UpdateMessageAsset
Update the asset_id of messages in the scene history
Messages that aren't found are skipped rather than raising an error.
Inputs
| Input | Type | Description |
|---|---|---|
state |
any |
graph state (required) |
message_ids |
list |
(optional) List of message IDs to update |
asset_id |
str |
The new asset ID |
Outputs
| Output | Type | Description |
|---|---|---|
state |
any |
graph state |
messages |
list |
List of updated message objects |
message_ids |
list |
List of message IDs (passthrough) |
asset_id |
str |
The asset ID (passthrough) |