ComfyUI Extension: ComfyUI-Ichis-Pack

Authored by ichabodcole

Created

Updated

2 stars

Run ComfyUI workflows without the setup

No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.

A collection of ComfyUI Nodes, most to make dynamic prompting a bit easier.

README

ComfyUI Ichis Pack

A collection of utility nodes for ComfyUI.

Installation

  1. Clone this repository to your ComfyUI's custom_nodes directory:

    cd /path/to/ComfyUI/custom_nodes
    git clone https://github.com/yourusername/ComfyUI_Ichis_Pack.git
    
  2. Restart ComfyUI

  3. (Optional) To set up a development environment, run the setup_venv.sh script (requires the uv CLI tool for virtualenv and package management):

    ./setup_venv.sh
    

    Ensure you have uv installed before running this script.

  4. Run tests

    • Run the full test suite:

      pytest
      
    • Run a quick targeted test (by keyword):

      pytest -q -k text_selector --maxfail=1
      
    • Run a single test file:

    pytest tests/test_text_selector.py -q

Nodes

ICHIS Aspect Ratio Plus

A node that provides a selection of common SDXL-optimized aspect ratios with advanced control options.

Features:

  • Preset aspect ratios optimized for SDXL
  • Upscale multiplier
  • Dynamic modes: normal, step, and random
  • Size mode filtering (all, portrait, landscape, square)
  • Individual toggles for each aspect ratio
  • Step index reset

ICHIS Extract Tags

A node that extracts text segments from a comma-separated list based on matching concepts/tags.

Features:

  • Extract segments containing specified tags/concepts
  • Support for multiple concepts at once
  • Concepts can be separated by commas and/or newlines
  • Case-insensitive matching
  • Custom delimiter for combining extracted segments

Example:

Input Text:

portrait of a woman, beautiful eyes, big blue eyes, wearing big red clown nose, red lips, face paint, tall, running toward viewer, photorealistic, 8k

Input Tags/Concepts:

eyes
nose
lips
face

Output with ", " delimiter:

beautiful eyes, big blue eyes, wearing big red clown nose, red lips, face paint

This node is particularly useful for extracting specific attributes from longer prompts or creating detail-focused prompts by filtering out certain elements.

ICHIS Text Selector

A node that allows selecting text segments from a multi-line input with various selection modes.

Features:

  • Split text by @ markers
  • Selection modes: normal, step, and random
  • Index-based selection
  • Excludable indices with range support (e.g., "1,3-6,8" excludes indices 1, 3, 4, 5, 6, and 8)
  • Step mode with automatic progression
  • Random selection with seed control

Example of Exclude Indices:

  • Single indices: 1,3,5 (excludes items 1, 3, and 5)
  • Range notation: 2-5 (excludes items 2, 3, 4, and 5)
  • Mixed format: 1,3-6,8 (excludes items 1, 3, 4, 5, 6, and 8)

ICHIS Tag File Loader

Parse CSV/JSON tag catalogs once, cache the metadata, and broadcast category lists for other nodes.

Features:

  • Supports CSV (row-per-tag, row-per-category list, tag-only) and JSON array formats
  • Optional base directory resolution and case-insensitive categories
  • Refresh toggle to force re-read when files change
  • Emits metadata payload, category list, all tags, resolved path, and cache-hit flag

ICHIS Tag Category Select

Consume loader metadata and pick one or more categories through dynamic combo widgets.

Features:

  • Dynamic dropdowns populated from loader metadata (via PromptServer event)
  • Multi-category selection with newline-separated hidden string for compatibility
  • Outputs selection payload, selected categories, and tags for the chosen categories

ICHIS Tag Sampler

Sample tags using metadata provided by the loader + selector pipeline (or legacy file inputs).

Features:

  • Accepts loader metadata plus optional selection payload or category list
  • Random or deterministic sampling with min/max bounds
  • Returns joined string, count, and list of sampled tags

ICHIS Save Tags

Persist tag strings or lists to disk for reuse in other tools.

License

MIT

Run ComfyUI workflows without the setup

No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.

Learn more