Nodes/Dehypnotic/🧘 Text (Dehypnotic)
ComfyUI Node

🧘 Text (Dehypnotic)

A text node with a save button (finally)

By DehypnoticΒ·Created about a month agoΒ·Updated 9 days agoΒ· 4
🧘 Text (Dehypnotic)
    • text
    β—„textβ–Ί
    β—„text_inβ€”β–Ί
    β—„input_ontrueβ–Ί

    Text (Dehypnotic) is a plain multi-line text node with the three buttons every text node should have had from day one: save, load, and copy/paste. If you've ever spent ten minutes rebuilding a prompt after a misclick or a swapped workflow, you already know why this exists.

    Core ComfyUI's text handling has always been thin - prompts live in widgets that vanish when you drag in someone else's workflow or fat-finger a node deletion. The community's answer is a small army of text-utility packs (the whole "node plumbing" layer exists to fix exactly this kind of repetition and illegibility), and Dehypnotic's contribution is one of the simplest and most practical: a text field that persists to disk as a .txt file, with clipboard buttons bolted on.

    How it works

    It's about as mechanical as a node gets. You type in the editor, hit save, and the text lands in ComfyUI/user/Dehypnotic/text/ as a .txt file you can reload from a dropdown. Because it lives in your user folder rather than the node's own directory, it survives node updates. The output socket just echoes the editor content as a STRING.

    The slightly clever part is the text_in override. If you connect another node's text into it, that incoming text replaces the editor content on every run - by default. That's great for chaining a prompt-builder into a stable, reviewable block, but it will absolutely confuse you the first time you wire something in and watch your carefully typed prompt vanish. That's what the input_on toggle is for: flip it to OFF and incoming text is ignored, so the node becomes a pure, stable text source that ignores everything upstream.

    Inputs and outputs

    • text (required) - the multi-line editor itself.
    • text_in (optional) - incoming text that overwrites the editor when input_on is ON.
    • input_on (optional BOOLEAN, default true) - the master switch for that override behavior.
    • Output: text (STRING) - wire it into a CLIP Text Encode, a prompt scheduler, a filename prefix, whatever takes a string.

    Installing it

    ComfyUI Manager: search "Dehypnotic", install, restart. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Dehypnotic/ComfyUI-Dehypnotic
    

    Then restart ComfyUI. Before you restart, check for leftovers: this repo merged several older Dehypnotic packs, so delete any comfyui-aspect-ratio-advanced, comfyui-numbered-text, comfyui-range-to-string, or comfyui-dehypnotic-save-nodes folders you have - the README explicitly warns they conflict. There's no requirements.txt and no models to download; this node only needs core ComfyUI.

    Common issues

    • "My text keeps getting overwritten!" That's text_in doing its job. Toggle input_on off, or just don't connect anything into it.
    • Where did my saves go? ComfyUI/user/Dehypnotic/text/, as plain .txt. Back those up if you care; they're just files.
    • Is this a replacement for a prompt book? No - it holds one block of text, not a library. If you need to toggle between many saved prompts with checkboxes, the same pack's NumberedText is the one you actually want. This node is the "one solid text field that won't lose your work" option.

    Worth it? For a node this simple, the save button alone justifies the install - and it ships bundled with the pack's video and audio tools anyway, so you'll probably have it either way.

    CategoryDehypnotic/πŸ“ Text Utils

    Inputs (3)

    NameTypeDefaultDescription
    textSTRINGβ€”
    text_inoptSTRINGβ€”
    input_onoptBOOLEANtrueβ€”

    Outputs (1)

    NameTypeDescription
    textSTRINGβ€”