CRZ Dropdown
The dropdown that fills its own menu from whatever it's plugged into
- value
CRZ Dropdown is the node that makes the rest of the CRZ pack feel like magic. Most dropdowns in ComfyUI are hardcoded - you pick a combo widget on a loader and you're stuck with its list. This one does the opposite: you wire its output into some other node's combo input, and it quietly reads that input's list and builds its own menu from it. Connect it to a checkpoint loader's ckpt_name and the dropdown suddenly lists every model you have. That's the entire trick, and it's a genuinely handy one once you're building control-panel-style workflows.
It's part of ComfyUI-CRZnodes, the dashboard-node pack by CoreyCorza that landed on r/comfyui in September 2025 and got a warm reception for exactly this idea: tiny, neat widgets instead of digging through a graph's sprawl. The whole pack exists to let you collect the settings you actually touch into one tidy row - and a dropdown that self-populates is what makes that row usable instead of a chore to maintain.
How it works
The Python side is nearly empty: one input, one output, pass the value through. All the cleverness lives in the frontend JavaScript. When the node's connection changes, it looks at whatever node is on the other end of its output wire and tries to find that input's option list - first from the target node's widget, then from the node's registered definition, then from the global node registry. Whatever it finds becomes the dropdown's menu. If it finds nothing, the dropdown shows a single empty option until you wire it somewhere useful.
The output is typed * (any), which is the standard ComfyUI trick for "I'll match whatever I'm plugged into." So it doesn't care whether the target wants a model name, a sampler, a scheduler, or a VAE - it hands over the selected string and the target accepts it.
The input and output you actually touch
value(input) - the hidden widget holding the current selection. You don't set this by typing; you click the dropdown box on the node.value(output) - the selected string, ready to wire into any combo input.
One input, one output, that's the whole schema. Double-click on the label area (the left side) to rename the node - useful when you have three dropdowns on one dashboard and need to tell them apart.
Installing it
This is a CRZ pack node, so install the pack once and every node here comes with it. In ComfyUI Manager search for ComfyUI-CRZnodes (or just "CRZ"), install, and restart. No requirements, no models, no heavy dependencies - the README is explicit that there are none. If you'd rather do it by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/CoreyCorza/ComfyUI-CRZnodes.git
Restart ComfyUI, then search the node menu for crz - everything in the pack is prefixed that way.
Common issues
The README itself hedges on this node: dropdowns should auto-inherit their list from whatever they're connected to, "there may be cases where they don't - let me know." It's genuinely a known rough edge. If you plug one in and the menu stays empty, try disconnecting and reconnecting, or double-clicking the node to force a refresh of the options. One person on r/comfyui reported the CRZ dropdowns not working for them at all, so this is not a node where you should trust the inheritance blindly - always check that the menu actually populated before you rely on it in a shared workflow.
Also remember the pack's default: CRZ nodes hide their connection wires, which makes the dropdown look disconnected when it isn't. Press alt+backtick to toggle link visibility while you're wiring, then turn it back off for the clean dashboard look.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| value | COMBO | 1 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| value | * | — |