ComfyUI Extension: ComfyUI-Ichis-Pack
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.
Looking for a different extension?
Custom Nodes (7)
README
ComfyUI Ichis Pack
A collection of utility nodes for ComfyUI.
Installation
-
Clone this repository to your ComfyUI's
custom_nodesdirectory:cd /path/to/ComfyUI/custom_nodes git clone https://github.com/yourusername/ComfyUI_Ichis_Pack.git -
Restart ComfyUI
-
(Optional) To set up a development environment, run the
setup_venv.shscript (requires theuvCLI tool for virtualenv and package management):./setup_venv.shEnsure you have
uvinstalled before running this script. -
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.