Nodes/ComfyUI-Flow-Assistor/Tile Manager (Crop)
ComfyUI Node

Tile Manager (Crop)

The passthrough that keeps your tile workflow from breaking

By Merserk·Created 9 months ago·Updated about a month ago· 6
Tile Manager (Crop)
  • image
  • mask
  • image
  • mask
  • tile_data
padding64
target_size1024

Let's be honest about what Tile Manager (Crop) does, because the name oversells it a little. It passes an image and a mask straight through and emits an empty TILE_DATA payload. That's it. No cropping, no resizing, no magic. The author's own description is more candid: it exists to "preserve the current image, mask, and TILE_DATA workflow contract."

In other words, it's a placeholder with a contract. Every node in this pack's tile family speaks the same TILE_DATA language - a crop source hands you a region, Tile Compositor pastes the processed result back. Tile Manager is the stand-in that lets you build and test that whole loop before you put an actual crop source in the graph, or the thing you drop in when you want the workflow to run without interrupting you for input.

How it works (barely)

Read the source and you'll see the whole game. It accepts image, mask, padding (default 64), and target_size (default 1024) - then immediately discards padding and target_size and returns (image, mask, {}). The two integer inputs are accepted for interface parity with a real crop node, but right now they're decorative. What you get out is exactly what you put in, plus an empty tile_data dict.

That empty dict is the whole point, and it's also the trap. Feed it into Tile Compositor and the compositor's invalid-data safety path kicks in: it returns the base image untouched. That's not a bug - it's the honest "I haven't picked a crop yet" state. If you wire this into a final graph expecting crops to happen, you'll get a confusingly unchanged image out.

Inputs and outputs

  • image - passed through unchanged.
  • mask - passed through unchanged.
  • padding, target_size - accepted, ignored. Don't fight them; set-and-forget.
  • Outputs: image, mask, and a tile_data that is {}.

Three outputs that mirror Visual Marquee's shape exactly, so you can swap Tile Manager out for the real thing without rewiring anything.

When to actually use it

Three legit cases: drafting a crop-merge workflow before you've decided on a crop source, sharing a template graph that should run unattended, and bypassing an interactive step when you don't want to click anything. If you want real region selection, this is not the node - grab the pack's Visual Marquee instead, which returns an actual cropped image and populated tile_data.

Install and gotchas

Same pack-wide install as the rest of ComfyUI-Flow-Assistor:

cd ComfyUI/custom_nodes
git clone https://github.com/Merserk/ComfyUI-Flow-Assistor.git

Restart ComfyUI, or use Manager and search "Flow-Assistor". V3-only (current ComfyUI build, Python 3.10+), no pip dependencies, no model downloads. The main thing to remember is the thing to forget: this node does not crop. Treat it as the training-wheels version of the tile pipeline and you'll never be surprised by it.

Categoryflow-assistor/image

Inputs (4)

NameTypeDefaultDescription
imageIMAGE
maskMASK
paddingINT64
target_sizeINT1024

Outputs (3)

NameTypeDescription
imageIMAGE
maskMASK
tile_dataTILE_DATA