Nodes/ComfyUI Ino Nodes/Ino Copy Files
ComfyUI Node

Ino Copy Files

Copy a folder's worth of files, with renaming, straight from the graph

By nobandegani·Created about a year ago·Updated 2 months ago· 6
Ino Copy Files
    • success
    • message
    • rel_path
    • abs_path
    • logs
    enabledtrue
    from_parent_folder
    from_folder
    to_parent_folder
    to_folder
    iterate_subfolderstrue
    rename_filestrue
    prefix_namefile

    Copying files inside ComfyUI is usually a sign you've left the app - a terminal, a file manager, a script. Ino Copy Files pulls it back in: it copies files from one folder to another, optionally recursing into subfolders and renaming as it goes. The description keeps it simple: "Copies files from one folder to another with optional renaming."

    It's the non-destructive sibling of InoMovePath. Move reallocates, copy duplicates - and because it's a copy, running it twice doesn't destroy your source. That makes it the safer default for staging, backups, and pre-upload assembly.

    How it works

    Give it a source (parent folder + folder) and a destination (parent folder + folder). It resolves both to real paths under ComfyUI's input/output/temp roots, then copies. Two toggles shape the behavior:

    • iterate_subfolders (default true) - recurse into subfolders of the source, or copy only the top level.
    • rename_files (default true) - rename each copied file using prefix_name (default file), so you get file_1, file_2, ... instead of clashing original names. Turn it off to keep original filenames.

    Outputs follow the family pattern: success, message, rel_path, abs_path - plus logs, a STRING listing what was copied, which is genuinely useful for verifying a batch.

    The inputs that matter

    • from_parent_folder / from_folder - the source.
    • to_parent_folder / to_folder - the destination.
    • iterate_subfolders - recurse or not.
    • rename_files + prefix_name - rename on copy and with what prefix.

    Where it wires in

    Staging before an upload (copy the finished set to a clean folder, then zip or push it), backing up a model or config folder before a workflow mutates it, or spreading one batch's results across per-run folders. Because it's a copy, it slots into pipelines where you want the originals intact for later passes.

    Installing it

    Part of ComfyUI-InoNodes. ComfyUI Manager → search "ComfyUI Ino Nodes" → install → restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/nobandegani/ComfyUI-InoNodes
    cd comfyui_ino_nodes
    pip install -r requirements.txt
    

    Restart after. No keys, no models.

    Common issues

    The rename default surprises people first. rename_files is on by default, so if you copy expecting original names, you'll get file_1, file_2... - flip the toggle if you want identity. Second, keep source and destination straight: copy into the source folder itself, or a folder inside it, and recursion can loop or duplicate. And check the logs output when a run looks off - it tells you exactly what was copied, which is faster than guessing. If success comes back false with a "Node is disabled" message, that's the enabled toggle doing its thing, not an error.

    CategoryInoFileHelper

    Inputs (8)

    NameTypeDefaultDescription
    enabledBOOLEANtrue
    from_parent_folderCOMBO3 options: input, output, temp
    from_folderSTRING
    to_parent_folderCOMBO3 options: input, output, temp
    to_folderSTRING
    iterate_subfoldersBOOLEANtrue
    rename_filesBOOLEANtrue
    prefix_nameSTRINGfile

    Outputs (5)

    NameTypeDescription
    successBOOLEAN
    messageSTRING
    rel_pathSTRING
    abs_pathSTRING
    logsSTRING