Save Images No Display (Mikey)
Save Images No Display (Mikey Nodes) — save without clogging your preview panel
- images
If you've ever run a big batch and watched ComfyUI's UI slow to a crawl because it's trying to thumbnail forty images at once, you already know why a "no display" save node exists. This is Mikey Nodes' save-to-disk node with the on-screen preview switched off - same rich filename templating as its sibling Save Images Mikey, minus the gallery clutter.
What it actually does
It's a terminal node (it has no outputs - is_output_node is true, so nothing downstream connects to it) that writes your batch to disk using a positional filename builder instead of ComfyUI's plain prefix_00001_.png scheme. You get three free-text slots (filename_text_1/2/3), a timestamp, and a counter, and each one has its own _pos field that says where in the filename it lands - position 0, 1, 2, 3, 4 and so on, left to right. filename_separator (default _) glues the pieces together, and counter_type decides whether the counter increments per folder, per filename, or not at all.
The fields that actually matter for a beginner: images (wire your VAE Decode output in), sub_directory if you want this batch tucked into its own folder under the output root, and the three filename_text_* boxes - drop your seed, your checkpoint name, or a short prompt fragment into one of them and it becomes part of every saved filename. timestamp_type lets you choose between job (when the run started) and save_time (when this specific image hit disk) - useful if you're saving intermediate steps and want to tell them apart. extra_metadata gets embedded in the PNG info alongside whatever ComfyUI writes by default.
What's genuinely unclear
The README doesn't document "Save Images No Display" or "Save Images Mikey" by name at all - they only show up in the pack's node registry, and their info_schema is byte-for-byte identical. The honest read, going purely off the name, is that this variant skips whatever the base node does to echo the saved image back into the ComfyUI preview panel. I can't verify the exact mechanism from the schema alone, so treat "saves without a UI preview" as the working assumption, not a confirmed fact - worth confirming with a quick test run if it matters to your workflow.
Installing it
It ships inside the whole Mikey Nodes pack, not standalone. Easiest path: open ComfyUI Manager, search "Mikey Nodes," install, restart. Manual route: cd ComfyUI/custom_nodes && git clone https://github.com/bash-j/mikey_nodes, then restart ComfyUI. No extra model downloads, no heavy Python dependencies beyond what a normal ComfyUI install already has - this is a pure Python utility pack, not a model wrapper.
Where people get tripped up
- Position collisions. If two fields share the same
_posvalue, you'll get an unpredictable order in the resulting filename. Space your positions out (0, 2, 4, like the defaults) so you have room to insert something later without renumbering everything. - Missing subfolders.
sub_directoryis relative to your ComfyUI output folder, not an absolute path - if you type a path that doesn't exist, most save nodes in this family create it for you, but double-check on Windows where path separators can trip up a string field that was typed with the wrong slash. - Custom nodes and dependency conflicts generally. This is the standard ComfyUI custom-node tax: every pack installs into the same Python environment, so if you're chasing a
pipconflict after adding Mikey Nodes, it's rarely this specific node - check what else you installed around the same time. ComfyUI Manager's missing-node detector is your friend here if a shared workflow reports this node absent.
If all you need is "save this image with a sane, informative filename and don't flood my browser tab with thumbnails," this node does exactly that and nothing more.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| sub_directory | STRING | — | |
| filename_text_1 | STRING | Filename Text 1 | — |
| filename_text_2 | STRING | Filename Text 2 | — |
| filename_text_3 | STRING | Filename Text 3 | — |
| filename_separator | STRING | _ | — |
| timestamp | COMBO | true | 2 options: true, false |
| counter_type | COMBO | folder | 3 options: none, folder, filename |
| filename_text_1_pos | INT | 0 | — |
| filename_text_2_pos | INT | 2 | — |
| filename_text_3_pos | INT | 4 | — |
| timestamp_pos | INT | 1 | — |
| timestamp_type | COMBO | save_time | 2 options: job, save_time |
| counter_pos | INT | 3 | — |
| extra_metadata | STRING | Extra Metadata | — |
Outputs (0)
No outputs