Save/Load Image
Save an image and keep it in the graph — flip to Load and reuse the last save
- images
- IMAGE
- MASK
ComfyUI's built-in Save Image is a terminal node - it writes the file and that's it, the image dies at the end of the wire. Save/Load Image is the version that refuses to be terminal: it saves your image to the output folder and passes it onward, so the same node can be the end of one pass and the start of the next stage of the graph.
The headline feature is the use_saved toggle - Save vs Load. In Load mode it re-reads the last image it saved and outputs that instead, which makes it a handy loop-closer: save pass one, flip to Load, and re-run the graph against your own previous output without dragging in a separate Load Image node and re-selecting the file.
How it works
In Save mode it does the standard ComfyUI save - PNG to ComfyUI/output, with the workflow prompt and extra_pnginfo embedded in metadata - then returns the image. It also stashes the filepath in a module-level dictionary keyed by the node instance. In Load mode it looks up that path, reads the file back, and returns it as IMAGE plus a MASK (from the alpha channel, if any).
The important caveat about Load: that "last saved" path lives in memory for the session, keyed to that specific node instance. Restart ComfyUI and Load has nothing to find - it returns a dummy 64×64 black image with an empty mask until you run a Save through the same node again. Also, it's per-instance, so a brand-new Save/Load node won't recover what an older one saved. Treat Load as "undo last save in this session," not as a persistent file browser.
Inputs and outputs that matter
Required: images (whatever you want to save) and use_saved (Save / Load). Optional: filename_prefix (default ComfyUI, prepended to the file name with the usual counter).
Outputs: IMAGE and MASK. Because it's an output node, it also shows the saved images in the UI history - which is where the privacy toggle comes in.
The privacy mask
Click the 👁 icon in the title bar and it becomes 🫣 - the image preview goes blank while the generation keeps running untouched. This is the pack's signature feature (it ships on Save/Load, Toggle Load, and Toggle Preview), implemented in the frontend by intercepting the node's imgs property so the preview shows nothing without touching the actual image data. The state is saved into the workflow JSON, so it persists across sessions and shares. It's purely cosmetic - handy if you're screen-sharing or streaming and don't want reference images on display - but it has zero effect on what gets generated or saved.
Installing it
Part of the Toggle-Pass pack:
cd ComfyUI/custom_nodes
git clone https://github.com/electricty00/ComfyUI-Toggle-Pass
restart ComfyUI, or use ComfyUI Manager and search ComfyUI-Toggle-Pass. No requirements.txt, no pip dependencies - it leans entirely on ComfyUI's bundled image libraries. Small personal pack, so don't expect a changelog page - but for a save node, "does the standard save and then hands you the image back" is exactly the feature you want and this one does it cleanly.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| use_saved | COMBO | 2 options: Save, Load | |
| filename_prefixopt | STRING | ComfyUI | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |
| MASK | MASK | — |