Nodes/comfyui_vfx-flow/Project Browser
ComfyUI Node

Project Browser

Pick your Flow project before a single frame is generated

By beverlyhillscop90210·Created 7 months ago·Updated 7 months ago· 1
Project Browser
  • session
  • flow
  • info
filter

The second node in the comfyui_vfx-flow chain, and the first one that does anything with your studio's data. Once Flow Login has a live connection, Project Browser asks your Flow site "which project is this run for?" and stuffs the answer into a context object that every downstream node reads.

It's a selector, not a filter you'll revisit. You set it up, it remembers the project, and you move on - which is exactly the point. In a real VFX pipeline your renders, filenames, shot links and published versions all have to land under the right project, and this node is what makes that automatic instead of a copy-paste error.

How it works

Project Browser queries Flow for projects whose status is Active, and filters by a partial match on your filter string. It picks the first match, then hands back a FLOW_CONTEXT - the pack's pipe object. That context is the same "one wire instead of forty" pattern you'll see across the ComfyUI ecosystem: instead of dragging session, project, shot, task and user as five separate wires across the graph, everything travels down one typed pipe. The KB's plumbing essay calls this the context-bus design, and the trade-off is the same here as everywhere: your graph stays readable, but you can't see inside the wire, so when a value is wrong it's a quiet kind of wrong. That's a price worth paying in a production workflow that would otherwise be a noodle plate.

The info output is where the visibility comes back. It lists the selected project and - if more than one matches - the first ten matches with an arrow marking your pick, so you can sanity-check that the fuzzy match grabbed the right project before you render into it.

The inputs and outputs that matter

Only two inputs exist, and one of them is the session:

  • session - wire in the session output from Flow Login. Required, and the node politely tells you if you skip it.
  • filter - a partial project-name match, e.g. pixar to match Pixar_Show_2026. Leave it blank to grab the first active project, which is fine if you work on one show at a time.

Outputs:

  • flow (type FLOW_CONTEXT) - the pipe carrying your session plus the selected project. This feeds Shot Browser, and it's the same flow input that every other node in the pack accepts.
  • info (STRING) - the selection report.

The node also renders well as its own little dashboard: the pack's web extension swaps in a live project dropdown on this node, backed by the same query, so you can pick from an actual list instead of typing a filter string. Same data, nicer gesture.

Installing it

Same path as the rest of the pack - ComfyUI Manager, search VFX Flow, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/beverlyhillscop90210/comfyui_vfx-flow
cd comfyui_vfx-flow
pip install -r requirements.txt

Only dependency is shotgun_api3>=3.3.0; no models to fetch.

Where people get burned

  • No session wired. The node returns No Flow session - connect Flow Login first. Make sure the session wire is actually connected and that Flow Login ran successfully upstream.
  • "No projects found". Either the filter matches nothing, or your account genuinely has no active projects. Remember the filter is a contains match, so show won't match Show_X only if the letters aren't contiguous.
  • Context staleness. Because everything rides one pipe, it's easy to build a workflow where Project Browser's output is bypassed and a stale context flows through. If shots come back from the wrong project, trace the wire back - the problem is usually a second flow path you forgot about. This is the classic failure mode of any context-bus design, and it's worth knowing before it bites at 5pm on a deadline.

Project Browser is unglamorous and that's the compliment. It's the node that turns "ComfyUI is connected to Flow" into "ComfyUI knows which show we're on."

CategoryVFX Flow

Inputs (2)

NameTypeDefaultDescription
sessionFLOW_SESSION
filteroptSTRING

Outputs (2)

NameTypeDescription
flowFLOW_CONTEXT
infoSTRING