Load ImageX
The loader that lets you pick images by looking at them
- image
- mask
Stock ComfyUI's Load Image is a dropdown of every file in your input/ folder, sorted by filename. Fine when you have five images. A nightmare when you have five hundred, because you're choosing by text, not by what's in the picture. Load ImageX from the WorkflowX pack fixes the one thing that's actually painful about image input: it gives you a searchable, cached thumbnail grid so you pick by eye.
What it is
Load ImageX lives in the WorkflowX/Image Loader category, part of the WorkflowX-Configurator pack (34 nodes covering everything from loaders to video output to API calls - you only need this one). Under the hood it's a drop-in replacement for the core LoadImage node: same one-input, two-output contract, same image batch you feed to a sampler, VAE encode, or preview. What changes is the picking experience and a couple of safety details.
How it works
The single required input, image, is an enum ComfyUI fills from input/ and any nested subfolders - the author's own tooltip calls that out, and it matters if you keep images organized in per-project folders. You can also upload straight into the node. Hit Browse Thumbnails and you get a searchable grid of cached thumbnails; the backend serves that catalog through a small API route with a 5-second TTL, so it refreshes without you restarting anything.
Two behaviors worth knowing because they save you from real footguns:
- The backend validates that whatever path you picked stays inside ComfyUI's input directory before it touches the file. No path escapes.
- Change detection is content-based. Load ImageX hashes the actual file (SHA-256) rather than trusting the filename, so overwrite a file with a different picture and the node re-runs - ComfyUI's aggressive caching won't silently hand you the old pixels. That's the
IS_CHANGEDtrick from the plumbing layer, done properly.
Outputs and what to wire where
- image (
IMAGE) - the loaded RGB batch. Multi-frame files (GIF, animated PNG) load as a full batch, and EXIF rotation is applied so phone photos come in the right way up. - mask (
MASK) - derived from the alpha channel (1 - alpha, so transparent areas read as white). No alpha in the file? You get an empty all-black mask rather than an error, which is the correct behavior when you want one socket to feed both transparent PNGs and plain JPGs.
Feed image to anything that takes an IMAGE; feed mask to inpainting, background-removal, or cutout pipelines that want a region to work on.
Installing it
The pack ships with no pip dependencies declared and no model downloads, so install is painless. Via ComfyUI Manager, search "WorkflowX Configurator". Or the manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/haroonaslam/WorkflowX-Configurator
Then restart ComfyUI and hard-refresh the browser - the thumbnail browser is a frontend extension (web/js), and a stale page is the most common reason buttons don't show up.
Where people get burned
- Node missing after install - restart ComfyUI and confirm
WorkflowX_LoadImageXshows up in/object_info. If the backend registered but the UI looks wrong, refresh with Ctrl+Shift+R. - Thumbnails look stale - the catalog caches for a few seconds and thumbnails for a month. If you just dropped a new folder in
input/, give it a beat or trigger a refresh; it catches up on its own.
One honest caveat: WorkflowX is a young, low-traffic pack - this node has basically no community footprint yet, so you're adopting early. For a plain loader that's low risk: the code is small, the contract is the standard one, and if it ever breaks, the core LoadImage is one drag-and-drop away.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| image | COMBO | Image from ComfyUI input/ or one of its subfolders. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| mask | MASK | — |