Add a 2026.11.04 notice to README explaining that many node inputs and outputs were renamed or reordered and need reconnecting, and update the ja/en/zh node docs and changelog for LIST/ARRAY, x / y_items, the new D2 List Converter and the deprecated list nodes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
17 KiB
17 KiB
- Top
- Node / Image Node / Text Node / XYPlot Node / Float Palet
- Workflow
Node
🍅 Sampler Nodes
D2 KSampler / D2 KSampler(Advanced)
Differences from standard KSampler
- Directly outputs images (VAE Decoder not required)
- Can input prompts in STRING format
- Supports A1111-style LoRA loading prompts
- Example:
<lora:foo.safetensors:1> - For format, refer to
D2 Load Lora - Note: When inputting
positive_cond/negative_condtoD2 KSampler Advanced, LoRA will not be applied to CLIP. It will only be applied to MODEL.
- Example:
- Has dedicated Controlnet input for simple application
- Supports
d2_pipewhich consolidates generation parameters- Can easily receive from
D2 XY Plot,D2 XY Plot Easy,D2 XY Plot Easy Mini - Can collectively receive
model/clip/vaefromD2 Checkpoint LoaderorD2 Load Diffusion Model Set - Can easily pass parameters to
D2 Save Image Eagle
- Can easily receive from
- Can change prompt weight algorithm (weight_interpretation)
Notes
- When
d2_pipeis connected,d2_pipeparameters take priority - For example, if you specify steps:20 in
D2 KSamplerand steps:15 inD2 XYPlot Easy, withd2_pipeconnected, steps:15 fromD2 XYPlot Easywill be used. - However,
model/clip/vae/positive_cond/negative_condgive priority to directly connected inputs (same handling aspositive/negative). Thed2_pipevalues are used only when there is no direct connection.
Input
- Same as standard KSampler
model/clip/latent_image/seed/steps/cfg/sampler_name/scheduler/denoisemodel/clipcan now be passed viad2_pipe, so both are optional
- Added in D2 KSampler
vae: optional, since it can be passed viad2_pipecnet_stack: For connecting toD2 Controlnet Loaderd2_pipe: Consolidated generation parameters. Received from nodes likeD2 XY Plotpreview_method: Preview display method during generationpositive/negative: Prompts in STRING format
- Added in D2 KSampler Advanced
token_normalization/weight_interpretation- Methods for adjusting prompt weights. Available in D2 KSampler Advanced
- Requires Advanced CLIP Text Encode to use
Output
- Same as standard KSampler
LATENT
- Added in D2 KSampler
IMAGE: Generated imageMODEL/CLIP: With LoRA appliedpositive/negative: Input passthroughformatted_positive: Positive prompt with A1111-style LoRA format removedpositive_cond/negative_cond: CONDITIONING with Controlnet applied- Since the Controlnet image covers the whole image, passing these to nodes that crop and redraw part of the image (such as FaceDetailer) may misalign the cropped area and the Controlnet, which can break the image
d2_pipe: Consolidated generation parameters- The CONDITIONING created inside D2 KSampler is not stored in
positive_cond/negative_condofd2_pipe. The input values (empty if not connected) are passed through as is
- The CONDITIONING created inside D2 KSampler is not stored in
D2 Pipe
- A node for modifying and extracting the contents of
d2_pipe d2_pipeis used to pass parameters collectively in nodes such as D2 XY Plot Easy, D2 KSampler, and D2 Save Image Eagle- In addition to
ckpt_name/positive/negative/seed/steps/cfg/sampler_name/scheduler/denoise/width/height, it now also supports input/output ofmodel/clip/vae/positive_cond/negative_cond- Connecting a direct input to these overwrites the corresponding item in
d2_pipe. If there is no connection, thed2_pipevalue is passed through as is
- Connecting a direct input to these overwrites the corresponding item in
🍅 Loader Node
D2 Checkpoint Loader
- A Checkpoint Loader that outputs the full path of model files
- Can automatically apply v_prediction settings when the filename contains "vpred"
Input
d2_pipe- Not used by this node itself, but adds
modeland others to the receivedd2_pipe
- Not used by this node itself, but adds
ckpt_name- Checkpoint name
auto_vpredtrue: Automatically applies v_prediction settings if the filename contains "vpred"
sampling/zsnr- Same settings as ModelSamplingDiscrete (details unknown)
multiplier- Same settings as RescaleCFG (details unknown)
Output
model/clip/vae- Same as the conventional CheckpointLoader.
ckpt_name/ckpt_hash/ckpt_fullpath- Checkpoint name, hash, and full path.
d2_pipe- Consolidates
model/clip/vae/ckpt_name. Can be connected toD2 KSamplerwith a single wire.
- Consolidates
D2 Load Diffusion Model
- A Load Diffusion Model that outputs the full path and filename of model files
Input
d2_pipe- Not used by this node itself, but adds
modeland others to the receivedd2_pipe
- Not used by this node itself, but adds
unet_name/weight_dtype: Same as the standardLoad Diffusion Model
Output
model- Same as the standard Load Diffusion Model.
ckpt_name/ckpt_hash/ckpt_fullpath- Checkpoint name, hash, and full path.
- Although it's technically
unet_name, it has been namedckpt_nameto align withD2 Checkpoint Loader
d2_pipe- Consolidates
model/ckpt_name. Can be connected toD2 KSampler. - Since this node does not load VAE / CLIP,
d2_pipecontains onlymodel(clip/vaeneed to be connected separately)
- Consolidates
D2 Load Diffusion Model Set
- A loader that combines
Load Diffusion Model+Load VAE+Load CLIPinto one - Loads
model/clip/vaetogether and can output them asd2_pipe - By connecting a single
d2_pipewire toD2 KSampler, individual connections formodel/clip/vaebecome unnecessary
Input
d2_pipe- Not used by this node itself, but adds
modeland others to the receivedd2_pipe
- Not used by this node itself, but adds
unet_name/weight_dtype: Same as the standardLoad Diffusion Modelvae_name: Same as the standardLoad VAEclip_name/clip_type: Same as the standardLoad CLIP
Output
model/clip/vae- Same as each standard loader.
ckpt_name/ckpt_hash/ckpt_fullpath- Diffusion Model name, hash, and full path.
- Although it's technically
unet_name, it has been namedckpt_nameto align withD2 Checkpoint Loader
d2_pipe- Consolidates
model/clip/vae/ckpt_name. Can be connected toD2 KSamplerwith a single wire.
- Consolidates
D2 Controlnet Loader
- Controlnet Loader that creates simple workflows when connected to
D2 KSampler controlnet_typeswitches betweenStableDiffusion(standard Controlnet) andAnima(kohya-ss's Anima-LLLite)- To use
Anima, you need to install ComfyUI-Anima-LLLite beforehand
- To use
Input
controlnet_typeStableDiffusion: Standard ControlnetAnima: kohya-ss's Anima-LLLite (requires ComfyUI-Anima-LLLite)
cnet_stack- For connecting to
D2 Controlnet Loader
- For connecting to
Output
cnet_stack- For connecting to
D2 KSamplerorD2 Controlnet Loader
- For connecting to
D2 Merge Cnet
- A node that merges multiple
cnet_stackinto one - The number of inputs increases or decreases according to
cnet_stack_count - Unconnected inputs are ignored, so you can use it with only some of them connected
- Useful when you are using several Controlnets and want to disable only a specific one
Input
cnet_stack_count- Number of
cnet_stackinputs (1-10)
- Number of
cnet_stack_1-cnet_stack_10- Connect the
cnet_stackfromD2 Controlnet Loaderetc.
- Connect the
Output
cnet_stack- For connecting to
D2 KSamplerorD2 Controlnet Loader
- For connecting to
D2 Load Lora
- A Lora loader that allows specifying Lora through text
- model_weight / clip_weight can also be specified
- There are two modes: one that uses the same format as StableDiffusion webui A1111 (a1111), and one that simply lists LoRA names (simple)
- For specific usage, refer to the sample workflow
Input
modea1111: Mode that allows using the same format as StableDiffusion webui A1111simple: Simple mode that just lists LoRA names. In this mode, theSTRINGoutput is not used
Output
MODEL/CLIP: MODEL and CLIP with LoRA appliedprompt: Outputs the input text as isformatted_prompt: Text with LoRA specification parts removed
Format differences based on mode
mode: a1111
Expressed as <lora:~>.
<lora:lora_name:1>
mode: simple No decorations needed before or after
lora_name:1
How to specify Weight
Write in the format {lora_name}:{model_weight}:{clip_weight}.
foo:0.8:1
If clip_weight is not specified, the same value as model_weight is applied. The following have the same meaning.
foo:0.8
foo:0.8:0.8
If weight is not specified, "1" is applied The following have the same meaning.
foo
foo:1:1
How to specify multiple LoRAs in simple mode
Separate with line breaks
foo:0.5
bar
When writing two types in one line, separate with ","
foo:0.5,bar
Comments
Lines that start with "//" or "#" are ignored.
//foo:0.5
#bar
🍅 Size Node
D2 Get Image Size
- Both outputs and displays size
D2 Size Selector
- Node for selecting image size from presets
- Can also get size from images
- Rounding method can be selected from
Ceil / Float / None
Input
images- Used when getting size from images
presetmust be set tocustom
preset- Size presets
- Must be set to
customwhen usingwidthheightbelow or image sizes - Edit
/custom_nodes/D2-nodes-ComfyUI/config/sizeselector_config.yamlto modify presets
width/height- Width/height dimensions
presetmust be set tocustom
swap_dimensions- Swap width/height
upscale_factor- Value passed to other resize nodes. Does nothing in this node
prescale_factor- Output width/height after resizing by this factor
round_methodRound: Round to nearestFloor: Round downNone: No rounding
batch_size- Batch size to set for empty_latent
Output
width / height- Input
width,heightmultiplied byprescale_factor
- Input
upscale_factor/prescale_factor- Passthrough of input
batch_size- Passthrough of input
empty_latent- Outputs latent created with specified size and batch size
D2 Image Resize
- Image and mask resizing and rotation
- Precision up to 3 decimal places for scaling
- Can select rounding, floor, or ceiling for decimal handling
- Capable of upscaling using upscale models
- Latent output is also possible (requires VAE)
- Rotation options: 90 / 180 / 270 degrees
D2 Resize Calculator
- Can select rounding, floor, or ceiling
🍅 Refiner Node
D2 Refiner Steps
- Node for outputting steps for Refiner
Input
steps- Total step count
start- Starting steps for first KSampler
end- Ending steps for first KSampler
Output
steps/start/end- Input passthrough
refiner_start- Starting steps for second KSampler
D2 Refiner Steps A1111
- Node that can specify denoise for Refiner in img2img
Input
steps- Total step count
denoise- Specify denoise for img2img
switch_at- What percentage of total steps to switch to next KSampler
Output
steps- Input passthrough
start- Starting steps for first KSampler
end- Ending steps for first KSampler
refiner_start- Starting steps for second KSampler
D2 Refiner Steps Tester
- Node for checking steps
🍅 Merge Node
D2 Model and CLIP Merge SDXL
- A node that combines ModelMergeSDXL and CLIPMergeSimple
- Allows comma-separated weight specifications for easier use with XYPlot
- In this figure,
0.85,0.85,1,1,0.4,0.4,1,0.4,0.4,0.4,1,0.4,0.4,0.4,0,0.55,0.85,0.85,0.85,0.85,0.85,0.85,1,1,0.65is specified
D2 Any Delivery
- A node that can pass multiple elements together
- Connect
D2 Any Deliverynodes to pass data as a package - You can dynamically add necessary inputs and outputs by writing them in
_label - Created because ComfyUI-0246's
Highwaybecame unusable with ComfyUI updates- It's probably better to use the original if it gets updated
Input
_package- Package received from other
D2 Any Deliverynodes
- Package received from other
_label- Define inputs and outputs
- Specified like
>width; >height; <width - Items starting with
>are added as inputs - Items starting with
<are added as outputs - Multiple items can be specified separated by
;
_update- Update inputs and outputs according to the content of
_label
- Update inputs and outputs according to the content of
Output
_package- Package to pass to other D2_AnyDelivery nodes
- All values received in inputs are stored
- Items specified with
<in_label- Values extracted from
_packageare output
- Values extracted from
_label Examples
Add width height to inputs
>width; >height
Add width height to outputs
<width; <height
Add prompt seed to inputs, width height to outputs
>prompt; >seed; <width; <height
D2 Preset Selector
- A node that defines presets of multiple parameters as text and outputs a whole set by picking one from a dropdown
- Intended for switching sets of recommended
steps/cfgetc. per Checkpoint - Enter the format into
preset_textand press_updateto rebuild the output slots and the dropdown
Input
preset- Dropdown. The currently selected preset
- The titles from line 3 onward of
preset_textbecome the choices
preset_name- Input that receives a preset name as a string from outside (forceInput)
- When connected and not an empty string, it takes priority over
preset(the dropdown selection)
preset_text- Preset definition text (format described below)
- A sample is filled in by default, so you can try it as is
_update- Updates the output slots and the dropdown according to
preset_text
- Updates the output slots and the dropdown according to
Output
- An output slot is created for each name defined on line 1 of
preset_text - The values of the selected preset are converted to the types specified on line 2 and output
preset_text Format
steps;cfg
INT;FLOAT
Anima;15;1.5
Illustrious;20;5.0
- Line 1: output names (separated by
;) - Line 2: output types (
INT/FLOAT/STRING/BOOLEAN) - Line 3 onward:
title;value1;value2…(one line per preset). The title (first cell) is required; leaving it empty causes an error
In the example above, selecting Anima outputs steps=15 and cfg=1.5.
Constraints
- The separator
;cannot be used insideSTRINGvalues - Connecting a Primitive node to the
presetdropdown is not supported (due to a ComfyUI limitation, the choices are not shown). Reloading, loading a workflow, and subgraph inputs all work normally
D2 Save Audio Eagle
- A node that sends audio files to Eagle
- Note that files are also saved to the regular folder, so be mindful of drive space
Input
audio- Audio to save
filename_prefix- Filename for saving
eagle_folder- Destination folder name in Eagle
format- Choose from FLAC / MP3 / Opus
mp3_quality- Bitrate used when
formatismp3
- Bitrate used when
opus_quality- Bitrate used when
formatisOpus
- Bitrate used when
memo_text- Text to save in Eagle's memo field
Output
audios- Outputs the input audio as it is
filenames- Array of full paths of saved audio files (
ARRAY)
- Array of full paths of saved audio files (