ComfyUI ImagePlus is a custom unified nodes pack primarily for Image to Image generation with a toggleable Text to Image option for easy switch back. It allows for CivitAI image inspection, local image upload/drop, metadata extraction, prompt syncing, and ImagePlus workflow helper nodes. It is a unified (combined nodes) successor to ComfyUI CivitAI ImagePlus, https://github.com/CovertBannana/ComfyUI_CivitAI_ImagePlus Since CivitAI released their own node pack, with different functions to ImagePlus, it still seemed necessary to change the naming relation to CivitAI, for this new unified node pack.
The new nodes feature Model, Clip and VAE pass through for a smoother work flow. The KSampler Adv includes a VAE encode for direct image input and built-in empty latent image options that combined with a toggle will instantly switch between I2I and T2I. The effort was to eliminate the common vae encode, empty latent image and clip text encode (prompt) that are used in almost all workflows. The Nodes are not restricted to being used exclusively with the packs other nodes and should incorporate the necessary outputs to be used with standard nodes.
- ImagePlus Inspector
- ImagePlus Prompt
- ImagePlus KSampler Adv
- CivitAI gallery browsing
- Fetch image/post URL support
- Local image upload and drag/drop
- Image preview with dimensions
- Metadata tabs
- Positive and negative prompt extraction
- Prompt conditioning outputs
- Model/VAE pass-through
- ImagePlus KSampler Adv node for switching between Image In and Empty Latent sampling paths
Clone this repository into your ComfyUI custom_nodes folder:
Open a command prompt in: ComfyUI/custom_nodes
git clone https://github.com/CovertBannana/ComfyUI-ImagePlus.git
Restart ComfyUI after installation.
The package currently uses:
aiohttp>=3.9.0ComfyUI normally provides torch, numpy, and Pillow.
To use a CivitAI API key, add your CivitAI API to this file inside the node folder api_key.txt
ImagePlus Inspector provides the image selection, upload, preview, metadata, and prompt inspection workflow.
image: IMAGE output for downstream image or latent workflowspositive: extracted positive prompt stringnegative: extracted negative prompt stringinfo: filtered info/metadata string
- Browse/select CivitAI images
- Fetch an image/post URL
- Upload or drag/drop a local image
- Preview selected image and dimensions
- Extract prompts and metadata
- Send image output into img2img workflows
ImagePlus Prompt receives model, clip, and vae inputs, then outputs prompt conditioning and pass-through model/VAE connections.
model: MODELclip: CLIPvae: VAE
model: MODEL pass-throughvae: VAE pass-throughpositive_conditioning: CONDITIONING for KSampler positive inputnegative_conditioning: CONDITIONING for KSampler negative inputpositive_prompt: extracted positive prompt stringnegative_prompt: extracted negative prompt string
Checkpoint Loader:model
→ ImagePlus Prompt:model
Checkpoint Loader:clip
→ ImagePlus Prompt:clip
Checkpoint Loader:vae
→ ImagePlus Prompt:vae
ImagePlus Prompt:model
→ ImagePlus KSampler Adv:model
ImagePlus Prompt:vae
→ ImagePlus KSampler Adv:vae
ImagePlus Prompt:positive_conditioning
→ ImagePlus KSampler Adv:positive
ImagePlus Prompt:negative_conditioning
→ ImagePlus KSampler Adv:negative
ImagePlus KSampler Adv is an ImagePlus workflow helper node that combines the common img2img/txt2img latent setup with KSampler execution.
It can operate in two modes using the image_in toggle:
-
image_in = true
Encodes the connectedIMAGEinput through the connected VAE, then runs sampling. -
image_in = false
Creates an empty latent internally using the selected width, height, and batch size, then runs sampling.
This replaces the need for a separate VAE Encode, Empty Latent Image, and latent switch node.
model: model input fromImagePlus Promptor Checkpoint Loadervae: VAE input fromImagePlus Promptor Checkpoint Loaderpositive: positive conditioningnegative: negative conditioningimage_in: toggle between image input mode and empty latent modewidth: empty latent widthheight: empty latent heightbatch_size: empty latent batch countseed: sampler seedsteps: sampler stepscfg: CFG scalesampler_name: sampler selectionscheduler: scheduler selectiondenoise: denoise strengthimage: optional image input used whenimage_inis enabled
samples: latent output for VAE Decodevae: VAE pass-through output for VAE Decode
When using image_in = true, this behaves like an img2img workflow. Typical denoise values are usually below 1.0, such as:
0.35 to 0.75
When using image_in = false, this behaves like a txt2img workflow from an empty latent. Typical denoise is:
1.0
The node does not automatically change denoise. The user controls denoise manually.
MIT License. See LICENSE for details.