Nodes/arkennemasis Nodes/arkennemasis Catalogue Save (the CSV's own filename)
ComfyUI Node

arkennemasis Catalogue Save (the CSV's own filename)

Writing each image to exactly the filename the CSV promised

By Hishamahmer·Created about a month ago·Updated a day ago· 6
arkennemasis Catalogue Save (the CSV's own filename)
  • image
  • path
filename
output_dircatalogue

ArkCatalogueSave is the catalogue path's writer, and its whole personality is one decision: it writes each generated image to the filename its catalogue row specified, and it overwrites in place. No _v2, no timestamps, no -final-final. The pack's reasoning is worth quoting, because it's a real opinion: several plausible files with no way to tell which is live is worse than one that is simply current.

For the catalogue use case that's exactly right. The deliverable isn't "a folder of images" - it's a folder where the file named m01_front.png is product m01's front shot, because the spreadsheet says so and the store export reads it that way. Version suffixes would silently break the mapping between the CSV and the disk.

How it works

Two required inputs: image (the generated frame from your chain) and filename (the CSV's output_filename, fanned in from ArkCatalogueFanOut). Add output_dir (default catalogue) and it resolves under ComfyUI's output folder. That's the entire API - which is the point. The filename is the contract, so the node doesn't invent naming conventions of its own.

The node is INPUT_IS_LIST and an output node, which means it receives every row's image and filename in one call from the fanned-out chain and writes them all. It creates the output directory if needed and returns path - the absolute path of what was written - which matters more than it looks: ArkCatalogueBoard's after input exists purely to be wired to this path, forcing the board to run after the saves.

Installing

cd ComfyUI/custom_nodes
git clone https://github.com/Hishamahmer/comfyui-arkennemasis
pip install replicate httpx

Restart ComfyUI. No models, no keys - this node only touches disk.

Troubleshooting

  • Files appear to be "lost": re-check the CSV. This node overwrites on purpose. If you need the old version, that's what version control or a separate output_dir is for.
  • "That filename is wrong" - change it in the CSV, not here. The node's job is to obey the row, and the Board node and any store export read the same source of truth.
  • Missing output after a partial run: Catalogue Load's skip_existing looks at this node's output_dir to decide what's already done. Keep the output_dir values in sync between the two nodes, or a resume will happily re-render and overwrite.
Categoryarkennemasis/Variation

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
filenameSTRING
output_diroptSTRINGcatalogue

Outputs (1)

NameTypeDescription
pathSTRING