Shima The Nothing
The any-type relay for keeping wires tidy
- any_input
- any_output
Shima The Nothing is a glorified wire. You feed it anything - an IMAGE, a LATENT, a MODEL, a CONDITIONING, a plain string - and it hands back the exact same thing. There is no transformation, no conversion, no cleverness. The name is a joke that's also accurate: it does nothing, and that's the point.
Why you'd want a node that does nothing
In a normal small workflow you'd never touch it. In a Shima workflow - the pack treats workflows as composable "islands" that auto-connect through Use Everywhere (Chris Goringe's cg-use-everywhere, which the pack auto-installs) - a type-agnostic relay earns its keep. The Shima docs describe passers and relays as "stable landing pads" at the edge of an island: a node with an any input that a Use Everywhere broadcast can target without forcing a specific type. The Nothing is that, for one wire.
Concretely, people reach for it to:
- Break an awkwardly routed wire without adding a reroute node, since it accepts and emits
*(ComfyUI's wildcard type, the escape hatch that lets any socket connect) - Give a broadcast a scoped landing point inside an island group
- Keep a chain "always connected" so the UI stops nagging about loose sockets
If you've used rgthree's reroute or a plain passthrough, this is the same instinct, minus the shape-drawing. It's organization, not logic.
How it works
Under the hood it's three lines: the input is declared as the ANY wildcard type, and execute() just returns (any_input,). No type checking, no validation, no memory. Because the wildcard type claims to accept anything, ComfyUI won't second-guess what you plug in - which is exactly why it's safe to drop into the middle of any wire.
The one input that does something real:
allow_external_linking(optional, default off) - the tooltip says it plainly: turn this ON and the node "broadcasts/receives OUTSIDE the Island (ignores group regex)." In plain terms, off keeps the relay scoped to its own island group (so Use Everywhere matching stays local), and on lets it participate in the global broadcast bus. If you're building an island and don't want it leaking into the rest of the canvas, leave it off.
Output: any_output, same value, same type. Nothing to wire downstream except wherever the data was going anyway.
Installing it
Part of the Shima pack (KDB-USJP/shima_wf). ComfyUI Manager → search "Shima" → install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/KDB-USJP/shima_wf
Restart after. The pack's install.py pulls in cg-use-everywhere and Impact-Pack if they're missing, so the islands actually auto-link.
Gotchas
Not many, because there's not much to break. The main one: because it's an any-type node, it won't catch type mistakes for you - if you route a MODEL where the next node wanted a VAE, The Nothing will happily pass your mistake along and the error shows up two nodes later. That's true of every wildcard passthrough, so just keep your wires honest. And if a workflow you downloaded seems to work but ignores allow_external_linking, check that cg-use-everywhere actually loaded - without it, the broadcast side of Shima quietly does nothing.
Worth the install if you're already in the Shima ecosystem. For stock ComfyUI, a reroute does 90% of the job.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| any_input | * | — | |
| allow_external_linkingopt | BOOLEAN | false | If ON, this node broadcasts/receives OUTSIDE the Island (ignores group regex) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| any_output | * | — |