Freezable Input
One string, one freeze toggle — the simplest lock in the pack
- STRING
Freezable Input is the minimal unit of the comfyui-easy-randomize idea: one text slot, one frozen checkbox, one string out. If Freezable String Combiner is the ten-slot workhorse, this is the single-slot version for when you just want to lock one piece of a prompt without dragging a combiner into the graph.
How it works
There are three moving parts, and the logic is small enough to hold in your head. frozen decides the source of truth: checked, and the node outputs whatever is in the display widget, ignoring the text wire even if one is connected. Unchecked, it outputs the text wire's value - or an empty string if nothing is connected (the pack calls this the "flush" behavior). The display widget doubles as the readout: the pack's JS extension updates it after each run so you can see what's flowing through, and because it's a normal widget, a frozen value is saved inside the workflow JSON and survives reloads.
That's the whole mechanism, and honestly, that's the appeal. It's a lock, not a puzzle.
The inputs that matter
frozen- the toggle. Check to keep the current value, uncheck to let the wire through.text(optional) - connect a Random Selector or any string output here for the live value.display- the widget showing the current/frozen value. Normally you don't touch it; you read it.
Output is a single STRING, ready for a CLIP Text Encode or a combiner.
Where it fits (and where it doesn't)
The realistic use is a prompt where one segment comes from a selector and you want the ability to "pencil it in" mid-run: wire a random pick in, like it, freeze it, keep generating. It's also handy as a visible label/value holder in a graph since it's an output node that displays its value.
Where it doesn't fit: if you have several slots to manage, the ten-slot Freezable String Combiner is strictly better - this node is just its single-slot cousin, and the pack's own docs treat the combiner as the real tool. Don't wire three Freezable Inputs where one combiner would do.
How to install
Same pack, same trivial install - no pip dependencies, no model files, nothing to download besides the repo:
cd ComfyUI/custom_nodes
git clone https://github.com/Ckrest/comfyui-easy-randomize.git
Restart ComfyUI (or install "comfyui-easy-randomize" from ComfyUI Manager). The node registers under Local Custom/Utilities. One install note: the pack's JS extension is what keeps the display widget in sync, so if widgets ever stop updating, that's the first thing to check.
The honest verdict
It's a tiny utility node with near-zero buzz (the whole pack has basically no community footprint - solo dev, AI-assisted code). But for the specific job of locking one prompt segment while everything else re-rolls, it's clean, predictable, and has no surprises. Just don't expect more from it than a toggle and a text box - that's the entire point.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| frozen | BOOLEAN | false | — |
| display | STRING | — | |
| textopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |