Extensions/ComfyUI-lhyNodes
ComfyUI Extension

ComfyUI-lhyNodes

Some useful nodes for ComfyUI.

By lihaoyun6·Created 12 months ago·Updated 13 days ago· 20
lihaoyun6/ComfyUI-lhyNodes
Nodes49
On cloudLocal install
CategorylhyNodes/Utils, lhyNodes/Mask
Stars20
Updated13 days ago

Nodes (49)

Any To Any

A Python eval in your graph — powerful, and the pack will warn you about it

lhyNodes/Utils
Blockify Mask

Pixelate a mask into chunky blocks in one node

lhyNodes/Mask
Checkpoint Name

One dropdown controls every checkpoint loader in your graph

lhyNodes/Utils
CLIP Name

Pick your text encoder once, use it everywhere

lhyNodes/Utils
CLIP Name (GGUF)

A clean dropdown for your GGUF text encoders only

lhyNodes/Utils
CLIP Text Encode (Cached)

The text encoder that stops re-doing work it already did

lhyNodes/Conditioning
CLIP Vision Name

Pick the vision model behind your control and identity nodes

lhyNodes/Utils
CodeableString

Prompts with comments, the way code should have them

lhyNodes/Utils
ControlNet Name

One dropdown to choose which ControlNet your whole graph uses

lhyNodes/Utils
CSV RandomPicker

Roll a random prompt fragment from a CSV, seeded so you can reproduce it

lhyNodes/String
CSV RandomPicker (Advanced)

Same random pick, but now the count rolls too

lhyNodes/String
Set CUDA Device

Set CUDA_VISIBLE_DEVICES mid-run, without restarting ComfyUI

lhyNodes/Utils
Draw Mask On Image

See your mask. Actually see it, in color, on the image

lhyNodes/Mask
Draw ViT Pose

Redraw WanAnimate pose skeletons without burning your VRAM

lhyNodes/Wan
Dynamic Parameter Panel

One JSON config spawns a whole control panel of native widgets

lhyNodes/UI
Grow Mask

GrowMask, but it doesn't make you wait

lhyNodes/Mask
Image Batch to Image List

Unpack an image batch into an actual list of images

lhyNodes/Image
Image Batch to Images

Staple a folder of images into one fixed-size batch tensor

lhyNodes/Image
Image Offset

Shave a fixed number of pixels off every side

lhyNodes/Image
Image Overlay

Composite one image onto another with real blend modes

lhyNodes/Image
ImageScaleToTotalPixels

Scale to a target megapixel count, rounded to a size the model likes

lhyNodes/Image
Latent Preview (Tiny VAE)

Watch your video render — without the full VAE decode

lhyNodes/Preview
Live Previewer

A Floating TV for Whatever ComfyUI Is Drawing Right Now

PowerLoader
Load Image Batch

Load one image at a time from a folder — without reconnecting wires

lhyNodes/Image
Load Image from Zip

Load Image from Zip

Custom/Image
LoRA Name

LoraName Does Exactly One Thing

lhyNodes/Utils
Mask to Coordinates (SAM2)

Turn a Painted Mask Into SAM2 Click Points, Automatically

lhyNodes/Mask
Mask to Coordinates V2 (SAM2)

Mask to Coordinates V2

lhyNodes/Mask
MiniMax H3 Image to Video 2-Pass

MiniMax H3 image-to-video in two passes

model/conditioning/minimax
Morse Code

Morse code, in seven languages, without leaving the graph

string
None

When 'None' Is the Right Answer

lhyNodes/Utils
Parameter Unpacker

Your Workflow's Control Panel, Unpacked Into Real Sockets

lhyNodes/UI
WanAnimate Pose Reformer

Fix the Black Frames Killing Your Wan Animate Motion Transfer

lhyNodes/WanAnimate
Preview String (Bypass)

See the text that's actually flowing without breaking the wire

lhyNodes/Utilities
Queue Handler

Make ComfyUI Wait Before It Runs the Next Thing

lhyNodes/Utils
RemoteCLIP Client

RemoteCLIP Client

RemoteCLIP
RemoteCLIP Server

Your Second Machine, Lending Out Its Text Encoder

Remote Server
Request URL

Make an HTTP Call Mid-Workflow and Keep Your Data Moving

lhyNodes/Utils
Save Image as Zip

Batching Your Outputs Into a Downloadable Archive

lhyNodes/File
Save Text as Zip

When Your Output Is a Thousand Text Files, Zip Them First

lhyNodes/File
String Format

String Format, the Quiet Workhorse

lhyNodes/String
String Format (Advanced)

String Formatting With a Kill Switch Per Slot

lhyNodes/String
UNet Name

A Clean Dropdown for Diffusion Models, and a String Out

lhyNodes/Utils
UNet Name (GGUF)

The Name Dropdown for Your Quantized UNets

lhyNodes/Utils
UpscaleModelName

Name the Upscaler, Wire the Name Into Your Filenames

lhyNodes/Utils
VAE Name

One Less Typed String in Your Workflow

lhyNodes/Utils
WanAnimate Best Frame Window

Wan Animate too long to fit? Let the math pick your chunk size

lhyNodes/Wan
WanAnimate Mask Preprocessor

Wan Animate masking is fiddly — this node is the cleanup step

lhyNodes/Wan
WanAnimate Face Reformer

Wan Animate dropped a frame's face? This node holds the last good one

lhyNodes/WanAnimate
Readme

<p align="center"> <img src="https://avatars.githubusercontent.com/u/16348097" width="200" height="200" /> <h1 align="center">ComfyUI-lhyNodes</h1> <h3 align="center">Welcome to my ComfyUI efficiency node suite<br>[<a href="./README_zh.md">📃中文版</a>] </p> <p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="./res/img/preview_dark.png"> <source media="(prefers-color-scheme: light)" srcset="./res/img/preview.png"> <img alt="Screenshots" src="./res/img/preview.png"/> </picture> </p>

Installation

You can:

⭐️ Search for lhyNodes in ComfyUI-Manager and install it.

or

  • Install it manually in command line:

    cd ComfyUI/custom_nodes
    git clone https://github.com/lihaoyun6/ComfyUI-lhyNodes.git
    python -m pip install -r ComfyUI-lhyNodes/requirements.txt
    

Nodes

Load Image Batch

Upload multiple images directly through the browser and generate a image batch or image list.

Image Batch to Images

Convert the image_batch object into a batch of images.

Image Batch to Image List

Convert the image_batch object into a list of images.

Load Image from ZIP

Read images from uploaded zip file and generate image_batch object.

Save Image as ZIP

Save the image (with optional additional text) as a ZIP file and provide it for download.

String Format

Format and output the text containing placeholders {} according to the variables.

String Format (Advanced)

Format and output the text containing placeholders {} according to the variables.
And you can enable or disable any variable.

CSV Random Picker

Randomly select elements from a CSV string by seed.

CSV Random Picker (Advanced)

Randomly select elements from a CSV string by seed with more options.

Queue Handler

Use triggers to control when any node executes.

None

Do nothing, just output None

Set CUDA Device

Modify the value of the environment variable CUDA_VISIBLE_DEVICES during runtime.

Image Overlay

Overlay an image onto another image.

Grow Mask

Growing input masks extremely fast.

Blockify Mask / Draw Mask On Image

Just like their names.

WanAnimate Mask Preprocessor

All-in-one Wan Animate mask preprocessor.

WanAnimate Face Reformer

Remove faceless frames from the facial frame sequence and restore its coherence.

WanAnimate Pose Reformer

Use it to remove all-black frames from any frame sequence and restore its coherence.

WanAnimate Best Frame Window

Calculate the optimal frame window size based on the total frames count.

Mask to Coordinates

Generate SAM conditions by drawing points in ComfyUI's Mask Editor.

Mask to Coordinates V2

Generate positive and negative SAM conditions using mask brush and colored brush.

Credits