Tojioo Passthrough
Typed passthrough nodes to reduce wire clutter in subgraphs. Includes a multi-type dynamic passthrough, and utility nodes for batch switching among other various quality-of-life improvements.
Nodes (40)
A boolean switch with no selector to fiddle with
Swap CLIP models by slot order instead of re-wiring
Merge several conditioning streams into one
One ControlNet input, several models, zero selector
Pick a float by slot order — strength, denoise, cfg, whatever
Batch multiple images in one go, no manual re-wiring
The first-non-null image switch you'll actually use
Route seeds, steps and batch sizes by connection order
Stack latents into a batch without touching the batch size
Which latent feeds the sampler? Slot order decides
Combine masks into one batch for batch inpainting
Pick between mask sources by which one is connected first
Swap models without a selector widget
Swap SAM checkpoints by slot order
First connected prompt wins
Route the VAE you actually want, by slot order
A boolean that lives on a wire, not a widget
The bool passthrough with a checkbox you can actually flip
Carry your CLIP through a subgraph without tangling wires
One node that carries positive and negative conditioning together
A clean wire for the most dragged-around object in your graph
Positive and negative conditioning from one node, one CLIP
The wildcard passthrough for wires that refuse to pick a type
Pack a dozen values onto one wire and unpack them anywhere
The node that grows sockets as you wire it
See what's actually inside any wire, in-graph
A decimal that travels by wire, not by typing
Type your decimal once, share it everywhere
The most-wired type in ComfyUI, given a clean way to travel
A number that travels by wire, not by typing
One number box, typed once, fanned everywhere
Route the compressed image without touching it
Route the thing your inpainting and detailing live on
Keep your loader as the single source of truth
14 typed sockets, one node, wire only what you need
A clean lane for the Segment Anything model
Carry a string across a graph without retyping it
A text box that turns one string into a shared wire
Four tiling numbers as wires, so a subgraph can share them
Carry the decoder where the decode happens
Tojioo Passthrough Nodes for ComfyUI
Typed passthrough nodes to reduce wire clutter in subgraphs. Includes a multi-type dynamic passthrough, and utility nodes for batch switching among other various quality-of-life improvements.
Nodes
- Simple Passthroughs: Image, Mask, Latent, CLIP, Model, VAE, ControlNet, SAM Model, String, Int, Float, Bool, and Conditioning (positive/negative). Muted or bypassed predecessors are treated as
None. - Multi-Passthrough Hub: Optional inputs with typed outputs.
- Dynamic Passthrough: Multi-input passthrough with automatic type mirroring.
- Dynamic Any: Single-input passthrough with type mirroring.
- Dynamic Bus: Carries multiple typed values through a single bus connection.
- Dynamic Preview: Tabbed viewer for inspecting any data type in-graph.
- Batch Switch Nodes: Combine compatible inputs into a single batch (Image, Mask, Latent, Conditioning).
- Switch Nodes: Return the first valid connected input by slot order.
- Dual CLIP Text Encode: Encodes positive and negative prompts using a shared CLIP model.
- Tiled VAE Settings: Exposes tiled VAE parameters as connectable outputs.
Install
Manager
Open ComfyUI → Manager → Install Custom Nodes → search "Tojioo Passthrough" → Install → Restart.
Git
cd ComfyUI/custom_nodes
git clone https://github.com/Tojioo/tojioo_passthrough.git
Restart ComfyUI.
Usage
Category Structure:
Tojioo Passthrough: Multi-Passthrough hubTojioo Passthrough/Simple Passthrough: All typed passthroughs, Conditioning PassthroughTojioo Passthrough/Simple Passthrough/Widget Variants: Widget-based versions of primitive passthroughsTojioo Passthrough/Dynamic Nodes: Dynamic Passthrough, Dynamic Bus, Dynamic AnyTojioo Passthrough/Dynamic Nodes/Batch Switch Nodes: Batch switching nodesTojioo Passthrough/Dynamic Nodes/Switch Nodes: First-valid switching nodes
Dual CLIP Text Encode
- Purpose: Encode a positive and negative text prompt into conditioning using a single shared CLIP model, keeping the two encode nodes consolidated.
- Behaviour:
- Accepts one CLIP input and two text widgets (positive, negative)
- Outputs separate
positiveandnegativeCONDITIONING values
Tiled VAE Settings
- Purpose: Bundle tiled VAE encoding/decoding parameters into connectable outputs so they can be routed cleanly through subgraphs without wiring individual widgets.
- Behaviour:
- Exposes
tile_size,overlap,temporal_size, andtemporal_overlapas typed outputs - Default values: tile_size 512, overlap 64, temporal_size 64, temporal_overlap 8
- All values are adjustable via the built-in widget controls
- Exposes
Example:
<img alt="v1 7 0_Nodes" src="https://github.com/user-attachments/assets/6c7f84a6-14dd-4578-bb8d-503e928fe6c7" />Batch Switch Nodes
- Purpose: Combine multiple compatible inputs into a single batch while keeping wiring tidy.
- Behaviour:
- Starts with one slot, adds a new slot when the last one gets connected
- With a single connected input, passes through unchanged
- With multiple connected inputs, builds a batch when shapes are compatible
- Muted or bypassed upstream nodes are treated as missing and ignored
Example:
<img alt="image" src="https://github.com/user-attachments/assets/97cf66cd-307e-40e6-a8be-9a014b70a3c5" />Switch Nodes
- Purpose: Select the first valid connected input, based on slot order.
- Behaviour:
- Dynamic inputs auto-add slots
- Returns the first connected input by slot number
- Muted or bypassed upstream nodes are treated as missing and ignored
Example:
<img alt="image" src="https://github.com/user-attachments/assets/4eabfea0-4ec4-4a38-83e8-fb391b60afeb" />Dynamic Passthrough
- Purpose: A flexible multi-input passthrough where slot types mirror what you connect.
- Behaviour:
- Dynamic inputs and outputs, slots grow as you connect
- Output slot types mirror their corresponding connected input types
- Updates live as connections change
Example:
<img alt="image" src="https://github.com/user-attachments/assets/311f7d35-2895-4527-9113-d8c4eaa3aa96" />Dynamic Preview
- Purpose: In-graph viewer for inspecting any value across multiple inputs.
- Behaviour:
- Accepts any input type — slots grow dynamically as you connect
- Images and masks display visually; all other types (strings, tensors, conditioning, etc.) display as formatted text
- Switch between inputs via the built-in tab selector, which scrolls horizontally when tabs overflow the node width
- No outputs, this node is a pure viewer
Example (together with Dynamic Bus Node):
<img alt="image" src="https://github.com/user-attachments/assets/14202fa5-741a-417c-908c-2589086b2d4a" />License
GPL-3.0-only. See LICENSE.
Changelog
See CHANGELOG.