Nodes/ComfyUI Sokes Nodes 🦬/Image Picker 🦬
ComfyUI Node

Image Picker 🦬

A real picker for source images, not just 'grab the newest file'

By m-sokes·Created 3 years ago·Updated 16 days ago· 4
Image Picker 🦬
    • image
    • mask
    • image_path
    â—„folder_path/tmp/ComfyUI/inputâ–º
    â—„current_imageâ–º
    â—„always_pick_lastfalseâ–º

    Most ComfyUI image loaders are "type a filename or browse". Image Picker is the "browse" version done properly: it lists every image in a folder in a natural sort, you click the one you want, and it loads as an IMAGE with a mask and the path. It's the deliberate counterpart to the pack's Load Random Image - that one's for randomness, this one's for choosing.

    It's part of Sokes Nodes 🦬, and it's one of the few nodes in the pack with a real UI touch: it registers a small API route (/sokes/get_image_list) that ComfyUI's frontend uses to fill the picker.

    How it works

    Three inputs:

    • folder_path - which folder to list. Default is /tmp/ComfyUI/input, which is worth double-checking; your actual input folder is usually inside the ComfyUI install directory. Set it to what you want (the pack's ComfyUI Folder Paths node can hand you the real path).
    • current_image - a hidden widget that holds whatever you picked in the UI. You don't normally type here.
    • always_pick_last - the automation mode. When on, it ignores your pick and loads the last image in the folder after a natural sort - which understands numbers, so frame9.png comes before frame10.png and "last" means the highest-numbered frame. This is your "always use the newest render" switch.

    Outputs: image (IMAGE), mask (MASK - alpha channel if present, otherwise all-ones), and image_path (STRING - the absolute path of what it loaded).

    Install

    Standard Sokes Nodes 🦬 install - ComfyUI Manager → "ComfyUI Sokes Nodes" → Install, restart:

    cd ComfyUI/custom_nodes
    git clone https://github.com/m-sokes/ComfyUI-Sokes-Nodes.git
    pip install -r requirements.txt
    

    Gotchas

    • The default folder is suspect. /tmp/ComfyUI/input suggests the author's own environment. If the picker shows nothing, set folder_path to your real input directory (or connect ComfyUI Folder Paths).
    • Bad paths return a black 64×64 image, not an error - same silent-fallback behavior as the pack's Load Random Image. If everything's black, it's the path.
    • EXIF orientation is handled - it calls exif_transpose, so phone photos load right-side-up. Small thing, real papercut avoided.

    Where it earns its keep: img2img or reference workflows where you cycle through a handful of source images while tuning a prompt. With always_pick_last on, you can even set it and forget it - every run grabs the freshest image in the folder. That's a surprisingly nice "auto-iterate on my latest render" loop.

    CategorySokes 🦬/Loaders

    Inputs (3)

    NameTypeDefaultDescription
    folder_pathSTRING/tmp/ComfyUI/input—
    current_imageSTRING—
    always_pick_lastBOOLEANfalse—

    Outputs (3)

    NameTypeDescription
    imageIMAGE—
    maskMASK—
    image_pathSTRING—