Filename from Flow
Studio-correct filenames without asking anyone for the naming convention
- flow
- filename
- output_folder
- info
Every VFX studio has a filename convention, and every VFX studio has a file that violates it. Filename from Flow is the comfyui_vfx-flow pack's attempt to make the second one impossible: it generates your output filename from the pipeline context instead of asking you to type it.
The idea is clean. Your shot, sequence and project live in the flow pipe, so a name like ProjectX_SEQ01_SH010_comp_v004 can be derived, not memorized. The node takes that context, optionally appends a suffix, and hands you a filename plus an output_folder you can wire straight into a save node. The pack's README pairs it with the VFX Bridge EXR Save node, so "load the plate, process, save with the right name" becomes a closed loop.
The inputs and outputs
flow- the pipe from upstream (Project Browser → Shot Browser, or through Task Selector if you're using it).suffix- appended to the base name, e.g._beautymakesProjectX_SEQ01_SH010_comp_v004_beauty. Handy when one shot produces several layers.base_path- where the output folder starts, default~/renders.
Outputs:
filename(STRING) - the derived name, no extension.output_folder(STRING) -base_path/<project>/<sequence>/<shot>.info(STRING) - a breakdown showing the filename and the full.exrpath it's suggesting, so you can see the convention in one glance.
That info output is worth mentioning because it's the node's sanity check: run once, read what it would name things, then wire the real outputs.
Installing it
Same as the rest of the pack: ComfyUI Manager, search VFX Flow, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/beverlyhillscop90210/comfyui_vfx-flow
cd comfyui_vfx-flow
pip install -r requirements.txt
Only shotgun_api3>=3.3.0, no model downloads.
Where people get burned
Right now, the naming only works if the context actually carries the data - and as shipped, it might not. This is the honest catch. Reading the pack's source, Shot Browser computes the shot, sequence and version number into a new pipe object but returns the original flow, so the updated context doesn't reliably make it downstream. Wire Filename from Flow straight after Shot Browser today and you may get a generic output filename, or a NoneType error where the shot should be, until the author fixes the propagation. The node's design is exactly right - derive the name from pipeline data, never hand-type it - but treat the happy-path diagram in the README as aspirational for now. Test on a dummy project first, and check the info output to see what the context actually contains.
A couple of softer notes: the base name carries no extension, which is deliberate (you add .exr or .png at the save node), and base_path expands ~, so ~/renders works on both Windows and Linux. The suffix convention is yours to invent - pick one and make it a standard, or the "consistent naming" promise quietly dies.
Filename from Flow is a genuinely good idea inside a young pack. If the context propagation gets tightened upstream, this becomes the most quietly valuable node in the set - the one that deletes an entire class of "why is this file named gen_1234_v5_final_really_final" problems.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| flow | FLOW_CONTEXT | — | |
| suffixopt | STRING | — | |
| base_pathopt | STRING | ~/renders | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| filename | STRING | — |
| output_folder | STRING | — |
| info | STRING | — |