Text
The boring string node this pack needed
- text
- characters
- words
- lines
Sometimes the most useful node in a pack is the least impressive one. SimpleText is exactly what it says: a text-in, string-out box. You type (or paste) text, it passes it through. That's the whole feature. And it exists because when you're building a workflow out of the pack's LLM and VLM nodes, you need a dependable place to put your prompt text before it goes somewhere that consumes a STRING.
What it's for
ComfyUI lets you type directly into most text widgets, but not all connections want a literal. When a node takes a STRING input that you want to feed from a central, editable spot - a prompt you reuse across nodes, a system message you tweak between runs, a keyword list you want to keep as a plain variable - SimpleText gives you that single source of truth. It's the pack's own version of the string-input node every graph ends up needing, and it supports dynamic prompts, so you can drop in the {} template syntax.
How it works
One input, one output, no network, no model, no llama.cpp - it's pure Python string plumbing. That's also why it can't really fail: there's no backend to break. The input_text field is multiline, so paragraphs or multi-line prompts work fine.
Inputs and output
- input_text - your text. Multiline.
Output: a STRING with exactly what you put in. Wire it into LLMPromptGenerator, a CLIP Text Encode, or anything else in the pack that eats a string.
Install
Same pack, standard route:
cd ComfyUI/custom_nodes
git clone https://github.com/gokayfem/ComfyUI_VLM_nodes
python -m pip install -r ComfyUI/custom_nodes/ComfyUI_VLM_nodes/requirements.txt
Or ComfyUI Manager → search VLM_nodes.
The honest take
Don't overthink it. If you already have a preferred text node from another pack, you don't need this one - a string is a string, and they're all compatible. But if you're keeping a workflow self-contained to VLM Nodes, this is the clean, dependency-free way to hold your text, and it saves you from typing the same prompt into five different widgets.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| input_text | STRING | Text passed to downstream nodes. | |
| trim_edgesopt | BOOLEAN | false | Remove whitespace only at the start and end. |
| normalize_newlinesopt | BOOLEAN | false | Convert CRLF and CR line endings to LF. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| text | STRING | The text value. |
| characters | INT | Unicode character count. |
| words | INT | Whitespace-delimited word count. |
| lines | INT | Line count. |