Nodes/comfyui-mixlab-nodes/Save Image To Local ♾️Mixlab
ComfyUI Node Runs on cloud

Save Image To Local ♾️Mixlab

Write ComfyUI output to any folder you point it at

By MixLabPro·Created 3 years ago·Updated 2 months ago· 1,859
Save Image To Local ♾️Mixlab
  • images
    file_path

    The stock SaveImage node is deliberately dumb: it drops everything into ComfyUI/output/, renames with a counter, and stamps the workflow into the PNG. Great for archiving, annoying the moment you actually want the file to land somewhere specific - a folder Photoshop is watching, a shared drive, a directory some other script picks up from. That's the whole reason SaveImageToLocal exists. You give it a path, it writes there. No counter games, no forced subfolder.

    It comes out of shadowcz007's mixlab pack, which is a sprawling grab-bag of utilities built around one theme: wiring ComfyUI into the rest of your machine and other apps. This node is the plumbing end of that - it's the counterpart to the pack's LoadImagesFromPath watcher, so you can build a folder-in / folder-out loop where Photoshop (or anything) drops a file, ComfyUI processes it, and the result lands back in a folder Photoshop is watching. Real-time round-trips, no manual export step.

    How it works

    There's not much mechanism to oversell. It takes the image tensor coming down the wire, and it writes the pixels to the filesystem path you hand it. The key thing to internalize is whose filesystem: the path is resolved on the machine running the ComfyUI server, not the machine your browser is open on. Locally those are the same box, so it's whatever folder you typed. On a remote or cloud instance they are very much not the same, and that trips people up (more below).

    The inputs that matter

    Only two, and both are required:

    • images (IMAGE) - the batch to write. Wire your VAE decode, your upscaler, whatever produced the final pixels.
    • file_path (STRING, multiline) - where to write. An absolute path is the safe move (D:\renders\out.png, /home/you/watched/frame.png). A bare or relative path resolves against ComfyUI's working directory, which is rarely where you think it is.

    It's an output node with no outputs - nothing comes out the other side, it's a terminal sink like SaveImage. So it goes at the end of a branch, not in the middle.

    How to install it

    Easiest path is ComfyUI Manager: open the Manager, search comfyui-mixlab-nodes, install, restart. Manual is the usual clone:

    cd ComfyUI/custom_nodes
    git clone https://github.com/shadowcz007/comfyui-mixlab-nodes.git
    

    then install the requirements (install.bat on the Windows portable build, or pip install -r requirements.txt inside your venv) and restart. One folder-name gotcha that applies to the whole pack: the directory has to be named exactly comfyui-mixlab-nodes. If you grabbed the zip instead of cloning, it'll be comfyui-mixlab-nodes-main and some of the pack's app features break - rename it and lose the -main.

    Common issues & troubleshooting

    "It saved but I can't find the file." You're almost certainly on a remote/cloud instance and the path wrote to that container's disk, not your laptop. On a serverless or hosted ComfyUI, a local-path save lands somewhere you can't reach and often disappears when the container recycles - if you need the file back on your side, use a normal SaveImage/upload path, not this. This node shines on your own machine.

    Nothing happens / no file appears. Check the folder actually exists and the server user can write to it - the node writes to the path, it won't merrily create a deep directory tree that isn't there or fix a permission error for you. Point it at a folder you know is writable and test with one image first.

    It overwrote my last render. By design it writes the filename you gave - if that's a fixed name, each run clobbers the previous. That's exactly what you want for a "latest frame" watcher loop, and exactly what you don't want for an archive. Vary the name (or just use SaveImage) if you're keeping every output.

    Category♾️Mixlab/Output

    Inputs (2)

    NameTypeDefaultDescription
    imagesIMAGE
    file_pathSTRING

    Outputs (0)

    No outputs