ComfyUI Node

Load Image In Seq

Re-run every old PNG in a folder without retyping a single prompt

By shinich39·Created 2 years ago·Updated 2 years ago· 5
Load Image In Seq
    • IMAGE
    • MASK
    • FILE_NAME
    • MODEL
    • CLIP
    • VAE
    • POSITIVE
    • NEGATIVE
    • SEED
    • STEPS
    • CFG
    • SAMPLER_NAME
    • SCHEDULER
    • DENOISE
    dir_path./ComfyUI/input
    mode
    index0
    filename
    ckpt_name
    positive
    negative
    seed0
    steps20
    cfg8.00
    sampler_name
    scheduler
    denoise1.00

    ComfyUI's built-in Load Image node is a one-shot: pick a file, get pixels, and if you want to reproduce how that image was made, you're retyping the prompt, seed, sampler and everything else from the PNG info tab by hand. That's the chore this node quietly deletes. Point Load Image In Seq at a folder and it hands you the image plus the exact generation settings ComfyUI baked into the file, as ready-to-wire outputs. Nothing to retype.

    What it's actually for

    It's a small, single-purpose utility from an indie node author (shinich39), built for the "review my own output folder and re-run or fix things" workflow. Every PNG ComfyUI writes carries its generation data embedded in the file's metadata. This node reads that data back out - checkpoint, prompt, seed, steps, cfg, sampler, scheduler, denoise - and splits it into typed outputs. Point it at a folder of past gens and you've effectively reconstructed the original workflow from the files themselves: no separate checkpoint loader, no CLIP Text Encode, just this node feeding a KSampler.

    How it works

    Mechanically it's Load Image with a metadata parser bolted on. ComfyUI stores the generation graph as a text chunk inside the PNG it saves. The node reads that chunk, pulls out the checkpoint name, and hands it to ComfyUI's internal loader - that's how a single node can emit MODEL, CLIP and VAE alongside IMAGE. Everything else in the output list comes straight from the saved KSampler's values.

    The README's usage line tells you the intended loop: "Inpaint > Arrow Right > Inpaint…" With focus on the node, arrow keys move the index, a preview shows the current file, and you can paint a quick inpaint mask on it before advancing. It's a poor man's batch editor for a folder of renders - and given that mask-based inpainting still wins whenever you need bit-identical unmasked pixels, that preview-inpaint step is the genuinely useful half.

    Inputs and outputs that matter

    Three inputs are worth touching:

    • dir_path - the folder to scan. Default is ./ComfyUI/input, a relative path that only resolves if your working directory is the ComfyUI root. Use an absolute path.
    • index - which file to load, 0-based. Arrow keys move it when the node has focus (added in 1.0.4).
    • mode - fixed (stay put) vs increment. Increment is the sleeper feature: every Queue Prompt advances to the next file, so queue repeatedly or enable Auto Queue and you get a folder-wide batch loop for free.

    Everything else is an optional override - filename pins a single file; positive, negative, seed, steps, cfg, sampler_name, scheduler, denoise let you replace what was read from the PNG instead of blindly replaying it.

    Outputs: IMAGE and MASK wire into a sampler or an inpaint workflow, FILE_NAME tells you which file you're on, and the metadata block (MODEL / CLIP / VAE plus POSITIVE / NEGATIVE / SEED / STEPS / CFG / SAMPLER_NAME / SCHEDULER / DENOISE) plugs straight into a KSampler. A full re-run graph is literally this node → KSampler → VAE Decode → Save Image.

    Install

    No model downloads, no heavy pip dependencies - it's a plain Python node. Either:

    • ComfyUI Manager → Install Custom Nodes → search comfyui-load-image-in-seq → install → restart, or
    • manually:
    cd ComfyUI/custom_nodes
    git clone https://github.com/shinich39/comfyui-load-image-in-seq
    

    then restart ComfyUI and grab it from Add Node > image > Load Image In Seq.

    Where people get burned

    The big trap, spelled out in the README: it only parses PNGs generated by ComfyUI (or a compatible writer - v1.0.3 adds files saved by the author's Model DB node). A1111 PNGs, exports, screenshots, JPEGs, WebPs - forget it. The file may preview fine, but the prompt and model outputs come back empty and your "re-run" silently falls back to defaults. Don't point it at a mixed folder and expect every file to reproduce.

    Second gotcha is the relative default dir_path. Launch ComfyUI from any other working directory and ./ComfyUI/input points nowhere - set the full path and confirm files show up before you blame the node.

    Verdict

    It won't be in every workflow, and it shouldn't be - it's a utility for a specific habit (hoarding and re-running your own output). But if you keep a folder of past gens and periodically re-render or fix a handful, it turns a five-minute copy-paste ritual into a two-click loop. For that niche, nothing in the stock node set comes close.

    Categoryimage

    Inputs (13)

    NameTypeDefaultDescription
    dir_pathSTRING./ComfyUI/input
    modeCOMBO2 options: fixed, increment
    indexINT0
    filenameoptSTRING
    ckpt_nameoptCOMBO0 options:
    positiveoptSTRING
    negativeoptSTRING
    seedoptINT00–18446744073709550000
    stepsoptINT201–10000
    cfgoptFLOAT8.000–100
    sampler_nameoptCOMBO34 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +28
    scheduleroptCOMBO9 options: normal, karras, exponential, sgm_uniform, simple, ddim_uniform, +3
    denoiseoptFLOAT1.000–1

    Outputs (14)

    NameTypeDescription
    IMAGEIMAGE
    MASKMASK
    FILE_NAMESTRING
    MODELMODEL
    CLIPCLIP
    VAEVAE
    POSITIVESTRING
    NEGATIVESTRING
    SEEDINT
    STEPSINT
    CFGFLOAT
    SAMPLER_NAMESTRING
    SCHEDULERSTRING
    DENOISEFLOAT