Text Passthrough
Carry a string across a graph without retyping it
- text
Text is the sneakiest type in ComfyUI: prompts, filenames, tags, notes - strings show up everywhere, and they're exactly the kind of value you don't want typed into five different boxes. The Text Passthrough is a connect-only relay for them: one optional text socket in, the same string out. When a prompt or a filename is produced by another node - a prompt builder, a randomizer, a filename template - this is how it travels without you re-typing it in the next node over.
You'll reach for it in the same situations as any of the pack's primitive passthroughs: one computed value, several consumers. A prompt generator feeding two different encoders. A filename string from a template node feeding both a save node and a metadata writer. One wire, one authoritative string, no drift between copies. It's the connect-only variant, so it sits next to its typed-in cousin - the Widget version is what you want if you'd rather type the text once on the node itself.
How it works
Same generated implementation as every simple passthrough here: return (kwargs.get("text"),). Read it, hand it back. Two behaviors:
- Unconnected means
None. Empty socket, or muted/bypassed upstream, and the output isNone. - Connect-only. The
forceInputflag means no text box on the node. Strings have to arrive on a wire.
Inputs and outputs
text(STRING) in →text(STRING) out.
One pair. Output feeds any STRING socket - prompts, filenames, notes, paths. Under Tojioo Passthrough → Simple Passthrough.
Install
Manager → search "Tojioo Passthrough" → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Tojioo/tojioo_passthrough.git
No models, no pip deps. Small single-maintainer pack, GPL-3.0.
Common issues
The None gotcha is the usual one - mute the string's source and every consumer silently gets nothing. And note the naming: in the node list this displays as "Text Passthrough", not "String Passthrough" - same node, friendlier name. If you open it expecting a text box, you've got the connect-only variant; the widget version is the one with a box.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| textopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |