ComfyUI Node

Motorway 1x10

The motorway's full-width fan-out

By agilly1989Β·Created 2 years agoΒ·Updated about a year agoΒ· 7
Motorway 1x10
  • MOTORWAY πŸšŒπŸ’¨
  • ANY_(A)
  • MOTORWAY πŸšŒπŸ’¨
  • ANY (A)
  • ANY (B)
  • ANY (C)
  • ANY (D)
  • ANY (E)
  • ANY (F)
  • ANY (G)
  • ANY (H)
  • ANY (I)
  • ANY (J)
β—„ANY_(A)_keyβ€”β–Ί
β—„ANY_(B)_keyβ€”β–Ί
β—„ANY_(C)_keyβ€”β–Ί
β—„ANY_(D)_keyβ€”β–Ί
β—„ANY_(E)_keyβ€”β–Ί
β—„ANY_(F)_keyβ€”β–Ί
β—„ANY_(G)_keyβ€”β–Ί
β—„ANY_(H)_keyβ€”β–Ί
β—„ANY_(I)_keyβ€”β–Ί
β—„ANY_(J)_keyβ€”β–Ί

The Motorway 1x10 is the pack's widest fan-out, period: one value in, ten values out. It's the node that says "I have one thing to add, and ten things to hand to the next stage" - and in the generated family of ramps from agilly1989/ComfyUI_agilly1989_motorway, it's the fullest expression of the single-input idea.

The pack is one author's reimplementation of ComfyUI's pipe as a keyed bag of values. Every Motorway AxB node is a ramp: A write lanes in, B read lanes out, all sharing one wire that carries the whole bag. The 1x10 is the most read-heavy ramp of all. You push a single value onto the bus, and it fans the bus's contents back out across ten outputs. Output A echoes the value you just wrote; outputs B through J read whatever earlier ramps have stored - model, clip, vae, latent, conditioning, whatever you've named.

How it works. The single ANY_(A) input is a write: connect a value, fill ANY_(A)_key, and it lands on the MotorwayClass under a sha256-hashed attribute. The ten outputs read by key - ANY (A) under your write key, ANY (B)–ANY (J) under their own. The bus is cloned before outputs are produced, so all ten reads come from one snapshot and no later write can retroactively change what this node returns. If you write a new value under an existing key further down the chain, the newest writer wins for everyone after it.

Inputs and outputs that matter. The required MOTORWAY πŸšŒπŸ’¨ input must already be live from a MotorwayStart or an earlier ramp. ANY_(A) in, ANY (A)–ANY (J) out, all wildcard-typed. The ten _key fields are the entire interface: A names the write and the echo, B–J name the other reads. This is the node to place right before a big subgraph - load one value, then hand the subgraph the ten things it needs from the bus in a single tidy bundle.

Install. ComfyUI Manager (search "ComfyUI_agilly1989_motorway") or:

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

Restart ComfyUI. No dependencies, no model files - pure Python.

Common issues. The signature error is 'MotorwayClass' object has no attribute 'hash_': a read key that never matched a write upstream. Keys are exact and case-sensitive, and a read can only see writes that came before it in the chain. With ten outputs, leaving a read key blank drops that output and shrinks the tuple - ComfyUI's fixed output count will complain. And remember what you've signed up for: the README opens by admitting the pack is broken and will be fixed "when I get the time/motivation". It's a clever little system that mostly works; treat updates with caution and keep your workflows saved.

Categoryagilly1989 Nodes/Motorways

Inputs (12)

NameTypeDefaultDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY_(A)opt*β€”
ANY_(A)_keyoptSTRINGβ€”
ANY_(B)_keyoptSTRINGβ€”
ANY_(C)_keyoptSTRINGβ€”
ANY_(D)_keyoptSTRINGβ€”
ANY_(E)_keyoptSTRINGβ€”
ANY_(F)_keyoptSTRINGβ€”
ANY_(G)_keyoptSTRINGβ€”
ANY_(H)_keyoptSTRINGβ€”
ANY_(I)_keyoptSTRINGβ€”
ANY_(J)_keyoptSTRINGβ€”

Outputs (11)

NameTypeDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY (A)*β€”
ANY (B)*β€”
ANY (C)*β€”
ANY (D)*β€”
ANY (E)*β€”
ANY (F)*β€”
ANY (G)*β€”
ANY (H)*β€”
ANY (I)*β€”
ANY (J)*β€”