ComfyUI Extension: ComfyUI-ParamNodes

Authored by FaraamFide

Created

Updated

0 stars

ComfyUI-ParamNodes is a lightweight, dependency-free collection of custom nodes for ComfyUI, designed to parameterize your workflows for API-driven generation. It provides a clean set of input nodes to control strings, numbers, booleans, and model/LoRA selections, along with a simple logic switch for conditional execution.

Custom Nodes (0)

    README


    ComfyUI-ParamNodes

    ComfyUI-ParamNodes is a lightweight, dependency-free collection of custom nodes for ComfyUI, designed to parameterize your workflows for API-driven generation. It provides a clean set of input nodes to control strings, numbers, booleans, and model/LoRA selections, along with a simple logic switch for conditional execution.

    This toolkit is ideal for developers who need to integrate ComfyUI into-backend services, offering precise control over generation parameters without any external dependencies.

    Inspired by the input node concepts from the comfy-pack project, this implementation has been rewritten from scratch to be minimal, standalone, and focused entirely on providing clean API entry points.

    Features

    • Parameter-focused Nodes: A complete set of input nodes (ParamString, ParamInt, ParamFloat, ParamBoolean) to define your workflow's public API.
    • Universal Combo Selector (ParamUniversal): A versatile node that can connect to any COMBO widget, perfect for dynamically selecting models, LoRAs, samplers, etc.
    • Image Path Input (ParamImage): Load images by providing a file path, essential for image-to-image or control workflows.
    • Conditional Logic (HelperModelSwitch): A simple switch to route data streams (like models) based on a boolean parameter, allowing you to enable or disable parts of your workflow on the fly. alt text
    • Clean and Minimal: No UI, no complex logic—just the essential nodes for backend integration.

    Installation

    1. Navigate to your ComfyUI custom_nodes directory.

      cd ComfyUI/custom_nodes/
      
    2. Clone this repository.

      git clone https://github.com/FaraamFide/ComfyUI-ParamNodes.git
      
    3. Restart ComfyUI.

    The new nodes will be available under the Params/Input and Helpers/Logic categories in the "Add Node" menu.

    Usage

    1. Build your workflow in the ComfyUI interface.
    2. Replace static values (like prompt text, seed, steps, or model names) with the corresponding nodes from this pack (e.g., ParamString, ParamInt, ParamUniversal).
    3. Give each parameter node a unique title (Right-click -> "Title"). This title will become the parameter name you use in your API calls (e.g., prompt, seed, lora_name).
    4. Save the workflow in "API Format".
    5. From your backend service:
      • Load the workflow JSON file.
      • Identify the parameter nodes by their class_type (e.g., ParamString).
      • Replace the value in their inputs dictionary with the data from your API request.
      • Queue the modified workflow for generation.

    Example:

    To control a prompt, replace a standard CLIPTextEncode's text input with a ParamString node titled "prompt". Your backend can then load the workflow and set workflow['node_id']['inputs']['value'] = "your dynamic prompt" before sending it to the ComfyUI queue.