Project Setting JK๐
Keep your output folders and filenames from becoming chaos
- Image_Name
- Path_Name
- Counter
If you generate a lot, your output folder becomes a landfill fast: hundreds of ComfyUI_00001_, ComfyUI_00002_ images with no way to tell which project or run they came from. Project Setting JK is a small bookkeeping node that gives your saves a name - a project prefix, an image-name pattern, a folder path, and a seed to anchor a run.
How it works
You set a project_name (say portrait_study), an image_name pattern like v%counter_%seed_%time, and a path_name pattern like %date. The node returns:
Image_Name- the project name joined with your image pattern (portrait_study_v%counter_%seed_%time).Path_Name- the project name joined with your path pattern (portrait_study/%date).Counter- an integer you can use as a run identifier.
Wire those strings into a save node that supports naming patterns (JakeUpgrade's save nodes, Image Saver, and similar all take filename/path strings), and your outputs land in per-project, per-day folders with recognizable names instead of one flat dump.
Two honest caveats from how it's built:
- This node returns patterns; the substitution happens downstream. The
%counter,%seed,%timevariables aren't expanded here - the node hands back the pattern string and aCountervalue, and the save node does the expansion. If your save node doesn't understand%counter, you'll get literal%counterin filenames. Countercurrently just echoes yourseed. The source returns the seed you typed as the Counter output. So it's a stable per-run identifier, but don't expect it to auto-increment per image - that behavior (if any) belongs to the save node's own counter logic.
Inputs and outputs
project_name- the project label.image_name- filename pattern (supports%counter,%seed,%time).path_name- folder pattern (supports%date).seed- an integer for the run.Image_Name(STRING),Path_Name(STRING),Counter(INT).
Installing it
Ships in ComfyUI-JakeUpgrade:
- ComfyUI Manager โ search "JakeUpgrade" โ install โ restart.
- Or:
cd ComfyUI/custom_nodes
git clone https://github.com/jakechai/ComfyUI-JakeUpgrade
cd ComfyUI-JakeUpgrade
pip install -r requirements.txt
Windows portable: run install.bat or ../../../python_embeded/python.exe -s -m pip install -r requirements.txt.
Common issues
- Filenames come out with literal
%counter. That means the downstream save node doesn't do pattern substitution - check that your save node supports the variables, because this node doesn't expand them. - The seed is a random seed, not a sequence number.
Counterequals whatever seed you typed. Set it deliberately per run if you want it to differentiate runs. - It's a convenience, not a necessity. If you never re-run projects or only save interactively, this node is dead weight. It earns its place in batch/API workflows where organized outputs matter.
It's the least glamorous node in the pack - a string combiner with a seed - but it's the kind of discipline that keeps a workflow reproducible three weeks later when you're hunting for "the good run from that project."
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| project_name | STRING | myproject | Name of the project for organization |
| image_name | STRING | v%counter_%seed_%time | Image naming pattern (supports %counter, %seed, %time variables) |
| path_name | STRING | %date | Path naming pattern (supports %date variable) |
| seed | INT | 00โ18446744073709550000 | Random seed for project |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| Image_Name | STRING | โ |
| Path_Name | STRING | โ |
| Counter | INT | โ |