Nodes/ComfyUI-CozyGen/CozyGen Choice Input
ComfyUI Node

CozyGen Choice Input

Pick a model or sampler from your phone — CozyGen Choice Input explained

By gsusgg·Created about a year ago·Updated 11 months ago· 24
CozyGen Choice Input
    • *
    param_nameChoice Parameter
    priority10
    choice_type
    default_choice
    display_bypassfalse

    CozyGenChoiceInput is the dropdown you wish every ComfyUI workflow had. CozyGen is a mobile-friendly web controller - you build your graph once on the desktop, then drive it from a browser at http://<your-comfyui-ip>:8188/cozygen. This node is what turns a hardcoded model name or sampler into a dropdown you can change without ever touching the node graph. Point it at "checkpoints" and the web UI shows every checkpoint you own; point it at "sampler" and it lists euler, dpmpp_2m, and friends.

    It's the "static" sibling of CozyGenDynamicInput: the dynamic node guesses a control type from what it's plugged into, while this one is explicitly a dropdown. That makes it the one you reach for when a hard choice - which LoRA, which checkpoint, which sampler - is the thing you want to fiddle with from the couch.

    How it works

    The node's choice_type selects a model folder from your ComfyUI install (checkpoints, loras, controlnet, clip, and a couple dozen more) or one of two built-ins, sampler and scheduler. The web UI asks CozyGen's API endpoint for the file list in that folder and renders it as a dropdown. When you hit Generate, the selected value is sent back into the workflow as the node's output. The output type is * (ANY), so it plugs into any input that takes a string - model loader names, KSampler's sampler/scheduler, CLIP loader paths.

    The inputs that matter:

    • param_name - the label shown on the web page. Make it human, like "Checkpoint" or "LoRA".
    • choice_type - the folder to list. If your models live in a non-default subfolder, this is the field to point at the right place (e.g. loras).
    • priority - where the field sits on the page. 0 pins it near the top, higher numbers sink it.
    • display_bypass - adds a "bypass this" toggle in the web UI. It's aimed at LoRA chains: keep several LoRA loaders in the graph and pick which one actually loads from the phone.
    • default_choice - the value used when the web UI sends nothing.

    The one thing that's broken

    default_choice doesn't work. The author says so flat-out in the README's known-issues list. Worse, the dropdown it generates isn't just the files from your choice_type - it's a giant flat union of every model file across every folder. Ignore it. In practice you select the value once in the web UI and CozyGen caches it in your browser, so it behaves fine as long as you pick a choice_type you're actually using. If you reopen the workflow in the node graph and rerun without touching the web page, the node falls back to the first sampler/scheduler or the first file in the folder - so your saved workflow isn't broken, just unopinionated.

    Install & common gotchas

    Install the whole pack: ComfyUI Manager, search "CozyGen", or clone the repo into custom_nodes:

    cd ComfyUI/custom_nodes
    git clone https://github.com/gsusgg/ComfyUI_CozyGen.git
    

    then restart ComfyUI. It needs only aiohttp for the choice plumbing (the README's requirement line is right here; the video node is the one that pulls in imageio).

    Where people get burned: the dropdown comes up empty if choice_type doesn't match a real ComfyUI model folder - double-check the subfolder name. And this is a vibe-coded project (built with Gemini, GPL-3.0, "I don't plan to support this forever" is basically in the README), so expect rough edges. It's the lightweight version of something like SwarmUI - perfect for "change the checkpoint and hit go" from a phone, not for graph surgery on the train.

    CategoryCozyGen/Static

    Inputs (5)

    NameTypeDefaultDescription
    param_nameSTRINGChoice Parameter
    priorityINT10
    choice_typeCOMBO28 options: audio_encoders, background_removal, checkpoints, clip, clip_vision, configs, +22
    default_choiceCOMBO65 options: None, anything_v3.yaml, beta, ddim, ddim_uniform, ddpm, +59
    display_bypassBOOLEANfalse

    Outputs (1)

    NameTypeDescription
    **