Nodes/ComfyUI-Jumper/Send String
ComfyUI Node

Send String

Make your local ComfyUI the remote control for your cloud GPU

By myonmu0·Created 11 months ago·Updated 9 months ago· 0
Send String
    • order
    addr127.0.0.1:8282
    modeClient
    string
    order0

    Prompts, seeds, negative prompts, filenames, metadata - so much of what you actually type in ComfyUI is just text. Send String is how you get that text from one ComfyUI to another, which in practice means your local machine becomes the remote control for a rented cloud GPU. Type the prompt on your box, it lands in a CLIPTextEncode on the RunPod box, generation happens up there, and the results come back. You never touch the remote UI at all.

    How it works

    The mechanics are dead simple: Send String takes its string input, encodes it to UTF-8, wraps it in the pack's standard payload (size prefix, a string format tag, a SHA-256 hash, base64), and pushes it over a plain TCP socket to a Receive String on the other machine. The receiving node checks the hash, confirms the format is string, and hands you the text back. It's a pipe, not an API - no keys, no auth, no configuration beyond an address and a mode.

    The mode and addr inputs are the pack's usual pair. Client connects to the address; Server binds and waits. Standard layout per the README: Client on your local machine, Server on the remote, with everything riding an SSH tunnel (ssh root@REMOTE_IP -p REMOTE_PORT -NL 8282:localhost:8282) so nobody can sniff your prompts mid-flight. The string input is multiline, so paste a whole prompt or a JSON blob without fighting the widget.

    The chain bit you can't skip

    Send String's only output is order (an INT), and the order input is how you wire the nodes into a sequence. The rule across all six Jumper nodes is: one Jumper chain per workflow, identical on both sides, in the same order. Chain them by wiring one node's order output into the next's order input - start with a Primitive Int at 0 - and anchor the end of the chain in something like a PreviewAny so the sequence actually executes. order increments by one per node per run, which is exactly how a Send on one machine knows it's talking to the matching Receive on the other. Get the chains out of sync and you'll see Receive unexpected data. or, worse, prompts arriving at the wrong node.

    The pack's example workflow does precisely this: your local machine sends the positive and negative prompts as two chained Send String nodes, and the remote machine's two Receive String nodes feed them into its CLIPTextEncode nodes. Same chain, both sides, order keeping them honest.

    Installing it

    This pack is about as light as custom nodes get - empty requirements.txt, no model files, nothing to download beyond the code. Grab it via ComfyUI Manager (search ComfyUI-Jumper) or:

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

    Then restart ComfyUI.

    Where people get burned

    Send String has the pack's known issue baked in: the job cancel button stops working while the node is running, so the README's answer is to restart ComfyUI if you get stuck. Also keep the privacy note in mind - if you're running the remote side of this over a rented box, don't wire your received data into preview/save nodes up there if you don't want it written to the remote disk. And repeat after me: plain TCP, no encryption, SSH tunnel or don't bother. The ComfyUI community's history with unauthenticated remote instances should be warning enough.

    CategoryJumper

    Inputs (4)

    NameTypeDefaultDescription
    addrSTRING127.0.0.1:8282
    modeCOMBOClient2 options: Client, Server
    stringSTRING
    orderoptINT0

    Outputs (1)

    NameTypeDescription
    orderINT