Nodes/ComfyUI Eclipse/IO Sampler Settings v2.2 (Legacy)
ComfyUI Node

IO Sampler Settings v2.2 (Legacy)

The version that added a second seed

By r-vage·Created 12 months ago·Updated 14 days ago· 38
IO Sampler Settings v2.2 (Legacy)
  • pipe
  • sampler_name
  • scheduler
  • pipe
  • steps
  • cfg
  • sampler_name
  • scheduler
  • guidance
  • denoise
  • sigmas_denoise
  • noise_strength
  • upscale_steps
  • upscale_denoise
  • upscale_value
  • seed
  • prompt_seed
◄steps—►
◄cfg—►
◄guidance—►
◄denoise—►
◄sigmas_denoise—►
◄noise_strength—►
◄upscale_steps—►
◄upscale_denoise—►
◄upscale_value—►
◄seed—►
◄prompt_seed—►

Pipe IO Sampler Settings v2.2 [Eclipse] is v2.1 with one extra channel: prompt_seed. Everything else is identical - same twelve sampler channels, same incoming pipe, same merge behaviour, same thirteen outputs. It's deprecated and shipped only for backwards compatibility.

The reason that single addition got its own version number tells you a lot about how Eclipse workflows were built.

Why two seeds

seed is the generation seed - the number your sampler actually uses. prompt_seed is a separate integer channel for things that pick rather than render: wildcard expansion, prompt selection, seeded prompt variation. In a workflow that randomises both, keeping them distinct is the difference between "same prompt, new image" and "same image, new prompt".

Because both live in the pipe as ordinary keys, a wildcard or prompt node can read prompt_seed out of the same dict the sampler reads seed from, without a second wire crossing the graph. And because it's exported as a typed INT output on this node, you can also send it directly to a node that wants it as a socket. Two seeds, one pipe, no spaghetti.

Same merge logic as its predecessor

All inputs are optional and all numeric channels are forced inputs - sockets, not widgets. sampler_name and scheduler are untyped (*) and pass through whatever you connect.

The priority rule: if the incoming pipe carries _allow_overwrite = true, direct inputs beat the pipe's values; otherwise the pipe wins and direct inputs fill gaps. Like v2.1, there's no allow_overwrite input here - the flag has to arrive inside the pipe. That came with v2.3.

Outputs: pipe, then steps, cfg, sampler_name, scheduler, guidance, denoise, sigmas_denoise, noise_strength, upscale_steps, upscale_denoise, upscale_value, seed, prompt_seed.

Note the shape of that channel set. v2.2 still carries the separate upscale channels - upscale_steps and upscale_denoise alongside upscale_value - which the current IO Sampler Settings node dropped in favour of a single upscale value. If your old workflow runs a two-stage upscale pass where the upscale sampler has its own step count and denoise, that's exactly what these legacy versions preserve, and it's the main reason to keep loading them.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/r-vage/ComfyUI_Eclipse
pip install -r ComfyUI_Eclipse/requirements.txt

ComfyUI Manager users can search ComfyUI_Eclipse and restart instead. Look under 🌒 Eclipse/ Legacy.

Same traps, plus one more

Unwired input plus an empty pipe doesn't leave a channel untouched - it emits an empty value for that channel. Feed this node a pipe, then add overrides deliberately.

The extra one is the pair itself: prompt_seed and seed are separate channels, and nothing in the node keeps them in sync. If you wire the same seed value into both, you've just reinvented the unified seed the modern node ships with. If you wire them differently, understand which downstream node reads which - a prompt node pulling prompt_seed will happily ignore everything you did to seed, and the symptom is prompts that stop changing while images do.

And the standing upgrade caveat for everything in this category: Eclipse 4.0.0 removed the deprecated nodes wholesale, keeping only what saved workflows need. If you're loading a graph that predates that, run the Workflow Migration Tool (python tools/migrate_workflow.py <path>, with backups) or use the mapping in tools/migration_mapping.txt before you start debugging by hand.

Category🌒 Eclipse/ Legacy

Inputs (14)

NameTypeDefaultDescription
pipeoptPIPE—
stepsoptINT—
cfgoptFLOAT—
sampler_nameopt*—
scheduleropt*—
guidanceoptFLOAT—
denoiseoptFLOAT—
sigmas_denoiseoptFLOAT—
noise_strengthoptFLOAT—
upscale_stepsoptINT—
upscale_denoiseoptFLOAT—
upscale_valueoptFLOAT—
seedoptINT—
prompt_seedoptINT—

Outputs (14)

NameTypeDescription
pipePIPE—
stepsINT—
cfgFLOAT—
sampler_name*—
scheduler*—
guidanceFLOAT—
denoiseFLOAT—
sigmas_denoiseFLOAT—
noise_strengthFLOAT—
upscale_stepsINT—
upscale_denoiseFLOAT—
upscale_valueFLOAT—
seedINT—
prompt_seedINT—