ComfyUI Node

Motorway 4x9

Four in, nine out β€” the distribution hub

By agilly1989Β·Created 2 years agoΒ·Updated about a year agoΒ· 7
Motorway 4x9
  • MOTORWAY πŸšŒπŸ’¨
  • ANY_(A)
  • ANY_(B)
  • ANY_(C)
  • ANY_(D)
  • MOTORWAY πŸšŒπŸ’¨
  • ANY (A)
  • ANY (B)
  • ANY (C)
  • ANY (D)
  • ANY (E)
  • ANY (F)
  • ANY (G)
  • ANY (H)
  • ANY (I)
β—„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β€”β–Ί

Motorway 4x9 is the near-top fan-out of the agilly1989 Motorway pack: four inputs, nine outputs. Five of those nine (E–I) are exits with no matching input, so this is really a distribution hub - one place where the graph hands the same few values, plus anything the bus has been carrying, out to a wide set of consumers. If the back half of your workflow has a crowd of nodes that each need a piece of what the front half built, this is the ramp they all pull from.

The pack is a pipe implementation. A MotorwayClass bus travels node to node carrying values under string keys, and each Motorway AxB is an on/off ramp. The bus starts with MotorwayStart (or a Motorway primitive like MotorwayInt), always continues out of the first output socket, and gets cloned at every node - so forking one bus into two ramps gives each branch its own snapshot, and writes don't leak sideways. It's marked beta in the README with the author's own "IF THINGS BREAK ITS BECAUSE I BROKE IT," so expect rough edges and keep a copy of any workflow you love.

The layout

Required input MOTORWAY πŸšŒπŸ’¨; four data inputs ANY_(A) through ANY_(D) (typed * - any type); nine key fields ANY_(A)_key through ANY_(I)_key; outputs ANY (A) through ANY (I) with the bus always first.

Slots A–D are write-through: input A files under key A, output A reads key A back out. Slots E–I are pure exits - no input lane, just a key that pulls a value off the bus. Want output F to be the seed? Type seed into ANY_(F)_key. The remaining inputs can stay disconnected; everything you pull just needs a matching key somewhere upstream. That's the full pattern in one sentence: file early, pull late, reuse keys to connect them.

Install

ComfyUI Manager, search "ComfyUI_agilly1989_motorway". Or:

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

Restart ComfyUI. No models, no pip packages - pure Python.

Where it bites

The README's signature error 'MotorwayClass' object has no attribute 'hash_...' means you pulled a key nobody wrote - usually a typo, and because keys are hashed internally the typo reads an empty slot instead of failing on the spelling. With nine key fields, double-check them all before you queue a big render. And remember: an output wired with a blank key is a blank output.

Categoryagilly1989 Nodes/Motorways

Inputs (14)

NameTypeDefaultDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY_(A)opt*β€”
ANY_(B)opt*β€”
ANY_(C)opt*β€”
ANY_(D)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β€”

Outputs (10)

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