ComfyUI Node

Prompt Bus

Stop dragging the same two text boxes across the canvas

By rhdunn·Created 2 years ago·Updated 2 years ago· 2
Prompt Bus
    • positive
    • negative
    positive
    negative

    A typical SD1.5 workflow has your positive and negative prompt strings feeding a CLIPTextEncode node. A workflow with ControlNet, or any post-processing, has them feeding several. Do it with primitive nodes and you're copying the same prompt into two or three text boxes, and when you edit one you forget the others. The Prompt Bus is the fix: one place holds both prompts, and both come out the far side as plain string outputs you can wire anywhere.

    That's it. This is a pure pass-through - positive string in, positive string out; negative string in, negative string out. It adds no capability; it exists so the graph stays honest. It's one node from the comfyui-bus-plugin pack, a small collection of these "bus" junction nodes from author rhdunn, built because ComfyUI has no generic way to route a bundle of values down one connection. Where rgthree's Context nodes are the heavyweight version of this idea, these typed buses are the minimal one - nothing custom, nothing to learn.

    The inputs that matter

    • positive - STRING, multiline. The prompt text. This is where you actually type.
    • negative - STRING, multiline. The negative prompt.

    Both default to empty and are widgets, but they're marked so you can convert either to an input connection and feed a prompt from elsewhere - a wildcard processor, a text loader, an API input. Right-click the widget and choose "Convert to input" if you need that.

    The outputs are the same two strings, positive and negative, each a plain STRING port. Wire them into every CLIPTextEncode that needs them. Edit in one place, and all the encoders downstream see the change.

    One thing to know: this node passes strings, not conditioned embeddings. The encoding still happens in CLIPTextEncode. If you'd rather bundle the already-encoded conditioning plus the model, that's the CLIP Encoded Prompt Bus from the same pack. And if you're on SDXL, grab the Prompt SDXL Bus instead - SDXL wants the G and L variants, which this node can't give you.

    Installing it

    Same install as every node in this pack. Through ComfyUI Manager, search "comfyui-bus-plugin", hit Install, restart. Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/rhdunn/comfyui-bus-plugin
    

    and restart. There are no dependencies - no requirements.txt, no model downloads, nothing extra to configure. If you can install any custom node, you can install this.

    Common issues

    The main trap is treating it as a merger - it's not. Each input needs its own wire and each output goes to its own destination; the node just organizes that fan-out in one place. Also, don't expect prompt syntax processing or wildcard expansion here; it passes text through untouched, so whatever your wildcard/text node emits is what reaches the encoders. For the pack's size it's rock solid - there's genuinely not much to go wrong with a node that returns exactly what you gave it.

    CategoryComfyBus

    Inputs (2)

    NameTypeDefaultDescription
    positiveSTRING
    negativeSTRING

    Outputs (2)

    NameTypeDescription
    positiveSTRING
    negativeSTRING