ComfyUI Node

Motorway 8x1

Throw eight things at the bus, take one thing back

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

Motorway 8x1 is the collector node of the Motorway family: eight inputs to add values to the shared bus, and one output to fetch a single value back off it. It's part of ComfyUI_agilly1989_motorway, agilly1989's "pipe" implementation for ComfyUI, where a named-value dictionary rides a single MOTORWAY πŸšŒπŸ’¨ wire through the graph instead of a hundred parallel wires.

The asymmetry is the point. Inputs write onto the bus; the single output reads whatever key you name. So an 8x1 is what you use when you want to bundle a bunch of stuff onto the bus and pull one specific thing off at the same spot - say, dump your checkpoint, clip, vae, positive, negative, latent, seed and scheduler onto the bus, then immediately grab the seed back out to feed a save node or a display. It's a merge-with-a-pickup.

How it works

Same machinery as every Motorway node, and it's unglamorous. The bus is a dict-like object whose keys are sha256 hashes of the names you type. The node takes the incoming bus, stores each connected input under its _key name, clones the bus, and emits the clone plus the one value whose key you typed into the output's _key field. Values persist downstream until a later write to the same key overwrites them, which is why you can collect at the top and spend at the bottom.

That single output socket is a lookup, not a passthrough of anything you just plugged in - type any key that's riding the bus and it comes out there. The eight input keys and the one output key are independent fields, so there's no ordering constraint between them. The only ordering rule that matters is the usual one: keep output keys contiguous, and here there's just one, so it's hard to get wrong.

The inputs and outputs that matter

  • MOTORWAY πŸšŒπŸ’¨ - required bus input and the bus output that keeps the line going.
  • ANY (A) through ANY (H) - eight inputs; each has a _key field that names the value being stored.
  • ANY (A) - the single output; type a key into its _key field to pull that value off the bus.

Connect your eight values, name them, name the one you want back, and wire that output where it needs to go. Under a minute of setup for a node that tidies a whole corner of the canvas.

Installing it

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

Restart ComfyUI, or install via ComfyUI Manager (search "motorway"). No pip packages and no model files - it's pure Python, and the clone registers the entire ~120-node Motorway family at once.

Common issues

  • 'MotorwayClass' object has no attribute 'hash_' - the key you asked the output to read was never written to the bus. Check spelling and case; keys are exact and case-sensitive.
  • Needs a bus first. An 8x1 can't be the first node in the chain - start with MotorwayStart (or a Motorway primitive that can start one).
  • Last writer wins on duplicate keys. If two ramps store the same name, the later value replaces the earlier one without any warning.
  • Beta with loud disclaimers. The README flags async as broken and says things break because the author broke them. Fine for ordinary single-run workflows.
Categoryagilly1989 Nodes/Motorways

Inputs (17)

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

Outputs (2)

NameTypeDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY (A)*β€”