LayerUtility: Seed
Seed — one seed value, wired everywhere you need it
- seed
The Seed node holds exactly one thing: a seed number. No min/max, no float, no string output - just an INT in, the same INT out. The reason it's worth a dedicated node instead of typing the number into every sampler separately is centralization: wire one Seed node to every KSampler, custom sampler, or random-driven node in your graph that needs to march in lockstep, and you only ever have to change the value in one place to reroll the whole workflow together.
How it works
There's no processing here - it's a source node holding a widget value and passing it straight through. Because it's a plain seed-typed INT widget, you get ComfyUI's usual right-click seed controls (fixed, increment, decrement, randomize) on it for free, exactly like you'd get on a KSampler's own seed field. That's the actual value of using a dedicated Seed node over a generic number node: seed-specific tooling, in one wire you can fan out to as many downstream nodes as you want.
The inputs and outputs that matter
seed- the number itself, with a huge allowed range (up into the quintillions), so it'll never actually run out of unique values in practice.
Output: seed, an INT you plug into any sampler's seed input, or into any other node in the pack (like Random Generator's optional randomization hooks) that wants a numeric seed.
How to install it
Part of LayerStyle. ComfyUI Manager: search ComfyUI Layer Style, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/chflame163/ComfyUI_LayerStyle
pip install -r ComfyUI_LayerStyle/requirements.txt
Restart, find it under 😺dzNodes → LayerUtility → Data. Nothing to download - it's a pure widget node.
Common issues
Honestly, there's almost nothing to go wrong with a node this simple. If two samplers you thought were sharing a seed are producing different results anyway, double-check they're actually both wired to this same Seed node's output and not each holding their own independent seed widget - it's an easy thing to miss in a busy graph, and a dangling wire silently falls back to whatever default the downstream node had.
The one thing that does bite people, and it's pack-wide rather than specific to this node: if Seed (or anything else under LayerUtility) is missing from your node search entirely, LayerStyle failed to import. It's a large pack with a long dependency chain, and a transformers/tensorflow conflict pulled in by some other custom node sharing your environment is the usual cause - especially likely if you installed before the pack split into base LayerStyle and the separate, dependency-heavier LayerStyle Advance repo. Reinstall clean, or hit "Try Fix" in ComfyUI Manager and actually read what failed before assuming this node is at fault.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| seed | INT | 00–1000000000000000000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| seed | INT | — |