A collection of custom nodes and UI extensions for ComfyUI, featuring Multi-Switch, Multi-Pipe, Slider, Slider 2D, Save Image, Save Video, Save Audio, Save HDR Image, Save HDR Video, Combo Selector, Show Any nodes, and Node Execution Time helper.
- Nodes 2.0 Support: Modern UI and compatibility for latest ComfyUI versions.
- FFmpeg: Required for
Save HDR ImageandSave HDR Videonodes. Ensureffmpegis installed and available in your system's PATH.
-
Clone this repository into your
ComfyUI/custom_nodesdirectory:cd ComfyUI/custom_nodes git clone https://github.com/xeinherjer-dev/ComfyUI-XENodes.git xenodes -
Start (or restart) ComfyUI.
A general-purpose switch node that selects one input from many and routes it to a single output.
- Nodes 2.0 Compatible: Dynamic UI that stays clean and responsive in the latest ComfyUI.
- Autogrow: Input slots automatically increase as you connect more nodes.
- Custom UI: Convenient selection buttons are displayed directly on the node, showing the source node names of connected inputs.
- Hide Connections: Toggle the visibility of connection slots via the right-click menu to keep your workflow clean and compact.
Bundle multiple inputs into a single XE_MULTI_PIPE connection and unpack them later.
- Autogrow: Input slots on
Multi-Pipe Inautomatically increase as you connect more nodes. - Dynamic Sync:
Multi-Pipe Outautomatically synchronizes its output names with the connectedMulti-Pipe Innode.
A versatile slider node where the output port type dynamically switches between INT and FLOAT based on the step setting.
- Dynamic Type Switching: Automatically sets the output type to
INTfor integer steps andFLOATfor decimal steps, ensuring seamless connectivity with other nodes. - Automatic Casting: During backend execution, numerical values are appropriately output as
intfor whole numbers andfloatfor fractional ones.
An intuitive 2D slider node for manipulating X and Y values simultaneously on a coordinate plane.
- Precision Auto-Detection: Automatically adjusts the display precision (number of decimal places) based on the
stepXandstepYsettings. - Dynamic Type Switching: Similar to the Slider node, the output port types for each axis change dynamically based on their respective step settings.
- Snap Feature: Enable the
snapproperty to snap the handle to the specified step increments.
An image saving node with configurable format (png, webp), lossless encoding, and quality settings.
A video saving node with configurable format (mp4, webm), codec (h264, h265, av1), and crf settings.
Save audio clips natively with professional codec support.
- Format Support: Encode to
mp3,opus, orflac. - Bitrate Control: Select from standard bitrates or use variable bitrate (V0) for MP3.
- Native Preview: Includes a built-in audio player for immediate feedback in the ComfyUI interface.
Save images in HDR format (AVIF) with support for PQ (SMPTE ST 2084) color space.
Save videos in HDR format with support for high bit-depth and PQ color space.
A utility node that allows selecting a COMBO (dropdown) value by its numerical index.
- Auto-Discovery: Dynamically reads the available options from the connected target node.
- Index Selection: Input an
INTto select items by index. - Dual Output: Provides both COMBO and STRING types for flexible connectivity.
A visual debug node that displays any input value as text directly on the node.
- Any Input: Accepts any data type and converts it to a readable string representation (JSON for complex objects).
- Composite ID Support: Fully compatible with Nodes 2.0 Group Nodes, ensuring progress is saved correctly even when nested.
Measures and displays the execution time for each node in your workflow directly on the node itself.
- Subtle Badges: Renders non-intrusive gray badges displaying execution times in milliseconds (
ms) or seconds (s). - Subgraph Support: Recursively calculates and sums up the execution times for ComfyUI GroupNodes and standard LiteGraph subgraphs.
- Double Counting Prevention: Automatically detects if other extensions (e.g.
comfyui-easy-use) have already measured the time, avoiding double counting. - Toggleable: Easily enable or disable the display via the ComfyUI Settings panel under
XENodes -> Node Execution Time.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
