RunningHub_ZImageI2L_Saver
The output node that's really a file copier — with a name check that bites
- lora_path
The Saver is the terminal node of the Z-Image image-to-LoRA chain, and it has the most humble job in the pack: take the LoRA the generator just wrote into models/loras, copy it into ComfyUI's output folder with a tidy counter-based filename, and tell the RunningHub platform where it went. If you're running locally, that's honestly all it does - the generator already saved the file, so this node is mostly about giving it a proper name and a place you can find it.
It has two inputs and no outputs:
lora_path- theLORA_PATHsocket from the LoraGenerator. It's markedforceInput, so you wire it rather than type it.filename_prefix(defaultzimage_lora) - the base name for the copied file. Run it twice and you getzimage_lora_00001_.safetensors, then..._00002_, and so on, the same counter convention SaveImage uses.
Under the hood the flow is: validate the source file exists, copy it via shutil.copy2 into the output directory with the counter filename, then return a UI dict flagged as type "output" so RunningHub's cloud backend can capture the file and hand it back to you in the browser. If you're on a local ComfyUI install, that UI dict is just metadata - the actual file lands in your output folder like any generated image would.
Here's the gotcha that bites people: the Saver won't copy just any LoRA. The source checks that the path contains the string zimage_i2l_lora (the exact prefix this pack's generator stamps on its random filenames) and raises ValueError: illegal lora path otherwise. So you can't use this node as a generic "save any LoRA somewhere nice" utility - it only accepts files this pack made. That's by design, to keep the RunningHub platform's output capture from grabbing the wrong thing, but it's worth knowing before you try to point it at some other .safetensors you had lying around.
So, is it necessary? On the RunningHub cloud platform, yes - that platform-compatible UI dict is how the site returns your generated LoRA to you, and the README positions this node as the intended end of the workflow. Locally, you can happily skip it and just grab the file from models/loras (though you'll be digging through zimage_i2l_lora_* random names instead of a clean zimage_lora_00001_). Either way, the one real troubleshooting note is that "illegal lora path" error - it means you didn't feed it the generator's own output.
Install is the same as the rest of the pack: ComfyUI Manager (search "ComfyUI_RH_ZImageI2L") or git clone https://github.com/HM-RunningHub/ComfyUI_RH_ZImageI2L.git into custom_nodes, pip install -r requirements.txt, restart. Like the other nodes in the pack, expect the ModelScope model downloads on first run - the Saver itself doesn't trigger them, but the Loader upstream will.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| lora_path | LORA_PATH | — | |
| filename_prefix | STRING | zimage_lora | — |
Outputs (0)
No outputs