Text Manager
Save and reload named blocks of prompt text
- STRING
A heads-up before anything else: this node isn't covered by name in the JNodes README, so what follows is a straight read of its actual fields rather than the author's own description. Take the mechanism as reasonably solid and the exact save/load UI behavior as "confirm it yourself the first time you use it."
What it looks like it does
Based on its fields, Text Manager is a saved-snippets system for prompt text - the node-graph equivalent of keeping a folder of reusable text blocks (character descriptions, style boilerplate, negative-prompt presets) that you can pull into a prompt without retyping them. It stores saved text under a directory (path_to_saved_texts), keeps per-node configuration under a separate directory (path_to_node_configs), and tags each node instance with a uuid so multiple Text Manager nodes in the same workflow can each track their own saved state independently rather than stepping on each other. A delimiter field suggests it can join more than one saved block together into the final output.
Where it sits in the wider JNodes prompt toolkit: it's a sibling to JNodes_SyncedStringLiteral (which syncs one text box to one external file) but built for managing a library of named snippets rather than a single synced file, and it lines up with the pack's general theme of keeping prompt text editable and reusable outside of ComfyUI's cramped widgets.
Inputs and outputs
uuid- single-line text, empty by default. Identifies this specific Text Manager instance so its saved state doesn't collide with another Text Manager node elsewhere in your graph.path_to_node_configs- defaults toJNodes/TextManager/node_configs. Where this node's own settings are stored.path_to_saved_texts- defaults toJNodes/TextManager/default. Where the actual saved text snippets live.delimiter- defaults to\n\n(a blank line). Used when joining multiple saved text blocks together.output_text- multiline text, empty by default. The active/output text - this is likely also the field you edit directly in the node.input_text(optional) - a STRING input, for feeding in text from elsewhere in your graph rather than typing it locally.STRING(output) - the resolved text, ready to wire into a CLIP Text Encode or any other string-consuming node.
Installing it
Same install path as every node in this pack:
- ComfyUI Manager - search "JNodes", install, restart.
- Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/JaredTherriault/ComfyUI-JNodes, thenpip install -r requirements.txt, then restart ComfyUI.
No model downloads, no extra dependency specific to this node.
Common issues
Because the storage paths (path_to_node_configs, path_to_saved_texts) default to relative folders under a JNodes/ directory, where exactly that lands depends on your ComfyUI working directory - if saved texts seem to vanish between sessions, check you're launching ComfyUI from the same location each time, or switch to absolute paths. If you copy-paste a Text Manager node to duplicate it, watch the uuid field: if it copies along with the node and doesn't get regenerated, two nodes pointing at the same identity can end up fighting over the same saved state.
More broadly, remember JNodes is a large UI-and-tooling pack, not a single-purpose node - installing it adds a status indicator, a docked image/video browser, and prompt-editing shortcuts (batch commenting, EditAttention improvements) the moment it's active. If something about your text editing experience changes after installing this pack and it's not this node's doing, check ComfyUI Settings > JNodes before assuming something's broken - most of it is configurable or can be disabled per-feature from there.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| uuid | STRING | A unique ID the current node. Do not override or remove widget unless you know what you're doing. | |
| path_to_node_configs | STRING | JNodes/TextManager/node_configs | Which directory to use to save and load node configs |
| path_to_saved_texts | STRING | JNodes/TextManager/default | Which directory to use to save and load texts |
| delimiter | STRING | \n\n | What to place between enabled texts |
| output_text | STRING | A read-only preview of the newly constructed output text. Do not override or remove widget unless you know what you're doing. | |
| input_textopt | STRING | Optional text to prepend to the output text |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |