Nodes/ComfyUI-WJNodes/Folder Operations CH
ComfyUI Node

Folder Operations CH

Create, delete, check, or move folders from inside your graph

By 807502278·Created 2 years ago·Updated 11 months ago· 21
Folder Operations CH
  • Signal
  • Signal
  • success
  • message
operation查询
folder_path
new_path
recursivetrue
batch_paths

Folder_Operations_CH is a one-node Swiss army knife for folder management: create a folder (recursively, if needed), delete one, check whether it exists, or rename/move it - all without leaving your ComfyUI graph. The "CH" in the name is a real hint, not decoration: the operation dropdown itself is in Chinese, so don't be surprised the first time you open it and see 创建/删除/查询/重命名/移动 instead of English words.

It's one of the file-and-path utilities in ComfyUI-WJNodes, a sprawling personal pack from GitHub user 807502278 that also handles image cropping, video slicing, and color filtering. There's no meaningful public discussion of this pack anywhere - it's a personal toolkit shared openly, and the README says as much: "a simple node package that I use myself."

How it works

Pick an operation from the dropdown - 创建 (create), 删除 (delete), 查询 (query/check), or 重命名/移动 (rename/move) - point it at folder_path, and it does that one thing, reporting back success and a message. new_path is where rename/move sends things. recursive (on by default) governs both directions: for create, it makes parent directories as needed; for delete, it means removing a folder wipes its entire contents, not just the empty shell. batch_paths lets you run the same operation across a whole list of paths in one node call, instead of chaining several.

The inputs and outputs that matter

  • operation (default 查询/query) - which action to run. Starting the default at "query" rather than something destructive is a sane, deliberate choice.
  • folder_path - the target for the operation.
  • new_path (optional) - destination for rename/move; irrelevant for the other three operations.
  • recursive (default on) - controls recursive create and recursive delete. This is the setting most worth double-checking before you run 删除.
  • batch_paths (optional, multiline) - a list of paths to operate on in a single call, for bulk operations.
  • Signal (*, in and out) - pass-through used purely to force execution order against other side-effecting nodes in your graph.

Outputs: Signal (unchanged pass-through), success (BOOLEAN), and message (STRING) describing what happened.

How to install it

Via ComfyUI Manager, search "ComfyUI-WJNodes." Or:

cd ComfyUI/custom_nodes
git clone https://github.com/807502278/ComfyUI-WJNodes.git

Restart ComfyUI. No models needed - it's pure filesystem code.

Common issues & troubleshooting

Operation dropdown shows Chinese text. That's expected, not a broken install - this specific node's UI wasn't translated. 创建 = create, 删除 = delete, 查询 = query, 重命名/移动 = rename/move. Match the characters to the position in the list rather than the text itself if you don't read Chinese.

A delete removed more than you expected. recursive defaults to on, so picking 删除 against a folder wipes everything inside it, not just an empty directory. This is the opposite default from this pack's del_file node, which defaults its delete switch to off - don't assume the two behave the same way just because they're both in the Path category.

batch_paths doesn't seem to do anything for a single-path operation. It's additive to folder_path, meant for running the same operation across many targets at once - leave it empty for a normal single-folder operation and use folder_path alone.

No community reports to check against. This node has essentially no public footprint. Given it does real, recursive, irreversible filesystem operations, test any delete or move on a throwaway folder before pointing it at anything that matters.

CategoryWJNode/Path

Inputs (6)

NameTypeDefaultDescription
Signal*
operationCOMBO查询4 options: 创建, 删除, 查询, 重命名/移动
folder_pathSTRING
new_pathoptSTRING
recursiveoptBOOLEANtrue
batch_pathsoptSTRING

Outputs (3)

NameTypeDescription
Signal*
successBOOLEAN
messageSTRING