Save Mask Bridge (Non Output) (Yogurt Nodes)
The flexible mask saver that keeps its head down
- masks
- masks
- width
- height
- batch
- saved_paths
Save Mask Bridge Ex (Non Output) is the mask saver for the automation crowd: the full Ex feature set - the Custom extension option - with the node's "this is a workflow output" status stripped away.
Let's decode the name once, because it applies to the whole family. "Ex" = the suffix dropdown has three choices (.png, .jpg, Custom) plus a custom_suffix string that overrides the dropdown when filled, so masks can leave ComfyUI as just about any image format Pillow supports. "Non Output" = is_output_node is false, so ComfyUI doesn't collect this node's result as a workflow deliverable. The disk write happens regardless; only the API/frontend treatment changes.
Why you'd pick this combo
The exact shape of the use case: you have an inpainting or repaint pipeline that dumps a mask artifact into a shared folder for another tool to pick up, and you don't want that dump showing up as a "result" every run. The image passes through the node - masks, width, height, batch, saved_paths all come out - the file lands silently, and the saved_paths output gives your downstream automation the definitive record of where it went. Non-output is precisely the right call when the save is bookkeeping, not a deliverable.
Inputs otherwise mirror the Ex mask saver: masks, output_dir (blank → ComfyUI output), filename_prefix with %date:yyyy-MM-dd% tokens, disable_metadata, overwrite, png_compression, jpeg_quality. Remember: non-empty custom_suffix beats the dropdown.
Install
Whole pack, one install:
cd ComfyUI/custom_nodes
git clone https://github.com/yogurt7771/ComfyUI-YogurtNodes.git
cd ComfyUI-YogurtNodes
pip install -r requirements.txt
Or ComfyUI Manager → ComfyUI-YogurtNodes → install → restart. Under Yogurt Nodes → IO.
The traps
Family rule number one: Custom selected in the dropdown with an empty custom_suffix means no extension - keep them paired. Number two: non-output means the file won't appear in the frontend gallery; that's expected behavior, check the folder or saved_paths, don't assume the save failed. Number three, mask-specific: keep the format lossless (PNG or webp) unless you have a reason not to - JPEG artifacts on a mask can push borderline pixels over your threshold on reload.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| masks | MASK | The masks to save. | |
| output_dir | STRING | The directory to save the images to, leave blank to save to the ComfyUI output directory. | |
| filename_prefix | STRING | ComfyUI | The prefix for the file to save. This may include formatting information such as %date:yyyy-MM-dd% or %Empty Latent Image.width% to include values from nodes. |
| disable_metadata | COMBO | false | Disable saving metadata to the PNG file. |
| overwrite | COMBO | false | Overwrite existing files. |
| suffix | COMBO | .png | The file extension to save the images as. |
| custom_suffix | STRING | The file extension to save the images as. If this is not empty, the suffix option will be ignored. Otherwise, the suffix option will override above suffix option. | |
| png_compression | INT | 40–9 | The level of compression to use for PNG images. |
| jpeg_quality | INT | 1000–100 | The quality of the JPEG image. |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| masks | MASK | — |
| width | INT | — |
| height | INT | — |
| batch | INT | — |
| saved_paths | LIST | — |