Extensions/ComfyUI-EreNodes
ComfyUI Extension

ComfyUI-EreNodes

A collection of prompt managent nodes with advanced tag parsing. Prompt tag cloud, mutiselect, toggle list, randomizer, filter, autocompete.

By Erehr·Created about a year ago·Updated 4 days ago· 67
Erehr/ComfyUI-EreNodes
Nodes9
On cloudLocal install
CategoryEreNodes
Stars67
Updated4 days ago
Readme

🎨 ComfyUI-EreNodes

A powerful collection of custom nodes for ComfyUI that improve prompt management and organization

License: MIT ComfyUI

ComfyUI-EreNodes provides an intuitive and feature-rich solution for handling prompts in your ComfyUI workflows. These nodes are designed to work seamlessly together, offering everything from intelligent autocomplete to visual tag management.

Image

📚 Table of Contents

🧩 Available Nodes

| Node | Description | Key Features | |------|-------------|-------------| | Prompt Gallery | Grid-based visual browser for LoRAs, Embeddings and Tag Groups | Image previews, intuitive selection | | Prompt Cloud | Interactive tag cloud visualization | Dynamic sizing, click-to-select | | Prompt Toggle | Simple toggleable tag list | Easy enable/disable, clean interface | | Prompt MultiSelect | Multi-selection field for tags | Bulk selection, organized lists | | Prompt Randomizer | Randomize your prompt tags | Manual randomization button, Control after generate | | Prompt Multiline | Enhanced text input with EreNodes features | Full autocomplete, tag management | | Prompt Filter | CSV-based prompt validation | Tag filtering, validation | | Prompt Extractor | Recovers the prompt from a generated image as tag pills | Reads ComfyUI + A1111 metadata, positive-only, restores inactive tags | | Prompt to Lora Stack | Extracts and converts loras from prompt into lora_stack

✨ Key Features

👁️ Visual Previews

  • Node Integration: Direct image previews on Prompt Gallery node
  • Quick Edit Previews: Preview support in editing interfaces
  • Selection Previews: Visual feedback during file selection
  • Custom Previews: Easy custom preview image assignment

🖼️ Prompt Extractor

  • Drop an Image, Get Tags: Drop any previously generated image on the node and its positive prompt comes back as editable tag pills
  • Reads Everything: ComfyUI's embedded graph, the editor workflow, and A1111/Forge parameters in PNG text chunks or JPEG/WebP EXIF
  • Positive Only: Traces the graph backwards from the sampler's positive input — negatives and unconnected leftover nodes are never picked up
  • Recovers Toggled-Off Tags: If the image came from an EreNodes workflow, tags that were switched off come back as inactive pills, with their strengths and types intact
  • Just Tags After That: Fully editable — toggle, add, reorder, drag into another node, or save as a tag group

📁 Tag Groups Management

  • Favorite Prompts: Save and organize your most-used prompts with tags, LoRAs, and trigger words
  • Direct Node Integration: Create tag groups directly from nodes with subfolder organization
  • Quick Application: Easy loading of saved tag groups as convenient pills or their content
  • Import/Export: Seamless sharing and backup of your tag collections
  • Choose Where They Live: Keep tag groups in the node folder or in ComfyUI/models/tag_groups so they survive reinstalls and Manager updates

🗂️ EreNodes Sidebar

  • Native Sidebar Tab: Browse tag groups, LoRAs and embeddings in a proper ComfyUI sidebar tab
  • Search That Reads Inside: Filter tag groups by filename and by the tags they actually contain
  • Hover Previews: Hover any entry to see its thumbnail and its tags, drawn with the exact same pills the nodes use
  • Drag Both Ways: Drag an entry onto an existing node to add it — or drag a node's tag pills onto a sidebar folder to open the editor and save them as a new tag group
  • Group or Contents, Your Choice: A dragged tag group lands as one pill by default; hold Alt to drop its tags instead. The ghost tells you which
  • Drop an Image to Build a Group: Drop a generated image anywhere on the tree to create a group from its prompt, with the image kept as the cover
  • Pick Tags Out of a Preview: Hover a tag group, move into the preview, select tags you want and drag just those into a prompt node

✏️ Advanced Tag Editing

  • Missing File Warnings: LoRA, embedding and tag group pills turn red-bordered when the file they name isn't on disk
  • Effortless Replacement: Quick edit tags or replacement of LoRAs, embeddings and Tag Groups
  • Strength Control: Precise tag strength adjustment via buttons or intuitive click-dragging
  • Rich Previews: Set and view preview images for all content types
  • Dynamic Triggers: Toggle LoRA trigger words with familiar tag pill interface

Image

🖐️ Drag & Drop Tag Pills

  • Reorder by Dragging: Hold a pill for a moment (or just start moving it) to enter reorder mode — a live placeholder shows exactly where it will land
  • Move Between Nodes: Drag pills from one prompt node into another; hold Alt while dropping to copy instead of move
  • Multi-Select: Ctrl+click picks individual pills (they don't need to be next to each other), Ctrl+drag sweep a selected pill again to drop it, just like Explorer — and Shift+click selects a range
  • Bulk Actions: Right-click any pill in a selection for Enable / Disable / Toggle / Remove, or save and export just those tags as a group
  • Works Everywhere: Cloud, Toggle, MultiSelect, Randomizer and Gallery nodes all share the same behaviour

🔍 Smart Autocomplete

  • Comprehensive Dictionaries: Built-in tag lists from Danbooru and e621, plus support for custom CSV files in the __autocomplete__ folder
  • Intelligent Aliases: Automatic tag alias detection and replacement with canonical terms
  • Flexible Search: Partial matching support, including multi-word tag recognition
  • Visual Highlighting: Clear highlighting of filtered terms for enhanced clarity

Image

🧭 Compatibility

  • ComfyUI: registered via standard NODE_CLASS_MAPPINGS (works on current and older installs). Node IDs are stable — workflows remain interchangeable.
  • Subgraphs: supported. The prefix separator is passed as a real input instead of being read from workflow metadata.
  • Nodes 2.0 (Vue renderer): supported. Tag UI is DOM widgets in both the classic LiteGraph renderer and Nodes 2.0 (same implementation). The old canvas-drawn UI was removed; it remains available in git history.

📦 Installation

Quick Install (Recommended)

Via ComfyUI Manager:

  1. Open ComfyUI Manager in your ComfyUI interface
  2. Search for "EreNodes"
  3. Click Install
  4. Restart ComfyUI

Manual Installation

# Navigate to your ComfyUI custom_nodes directory
cd /path/to/ComfyUI/custom_nodes

# Clone the repository
git clone https://github.com/erehr/ComfyUI-EreNodes.git

# Restart ComfyUI

Tip: After installation, you'll find the new nodes under the "EreNodes" category in your ComfyUI node browser.

🚀 Getting Started

Quick Setup

  1. Custom Autocomplete: Place your custom CSV tag files in the __autocomplete__ folder within the EreNodes directory or choose existing one from Settings
  2. Preview Images: Add preview images to enhance your tag browsing experience
  3. Create Your First Tag Group: Use any EreNodes prompt node to save your favorite tag combinations

🎮 Basic Usage

Using Autocomplete:

  • Start typing in any EreNodes text or add tag field
  • Use Tab or arrow keys to navigate suggestions
  • Press Enter to select
  • Enjoy intelligent tag completion with aliases

Managing Tag Groups:

  • Click on any tag nodes ≡ menu button to "Save as Tag Group". Select (or create) folder, type filename and select optional image.
  • Access saved groups through the ≡ 'Load Tag Group' (loading content of tag group) or + button 'Add tag' (loading tag group as single combined pill)
  • Import/export tag groups for sharing with the community

LoRA Loading:

EreNodes provides flexible LoRA loading options to fit different workflow preferences:

| Method | Description | Compatible Nodes | Use Case | |--------|-------------|------------------|----------| | LoRA Stack | Use "Prompt to LoRA Stack" node to extract <lora:name:strength> tags and connect to stack-compatible nodes | • Efficiency Nodes<br>ComfyRoll Custom Nodes<br>LoRA Manager | Best for mixing multiple sources of LoRAs | | Direct Loading | Use nodes that load LoRAs directly from prompt text in place of standard LoRA loaders. | • LoRA Tag Loader<br>Impact Wildcard Encode<br>PCLazyLoRALoader | Best for simple workflows or when using wildcards |

💡 Pro Tips

  • Search Efficiently: Use partial matches or space for multi word phrases
  • Visual Organization: Set preview images for your most-used ta groups
  • Quick Edits: Right-click any tag for instant editing options
  • Rearrange Fast: Drag pills to reorder them, or straight into another prompt node — Ctrl+click first to move several at once
  • Experiment: Use the Randomizer node to discover new prompt combinations
  • Convertible: All tag nodes can be converted to another under ≡ menu
  • Customize output: Separators between nodes and individual tags can be set customized in node Properties

📋 Changelog

Version 3.3 - Latest

  • Tag group editor in sidebar.
  • Drop an image on the sidebar: extracts its prompt and keeps the image as the group's cover
  • Prompt Extractor node - image drop area prompt extraction
  • Missing file warnings - red border on lora / embedding / tag group pills whose file isn't on disk

Version 3.2

  • EreNodes sidebar: anative sidebar for managing tag groups / LoRAs / embeddings
  • Search inside tag groups: sidebar filter matching file names and the tags a group contains
  • Configurable tag group folder: node folder (default, unchanged) or in ComfyUI/models/tag_groups
  • Type-coloured drag feedback: ghost and target highlight during tag drag

Version 3.1

  • Drag & drop reorder: press-and-hold (or move) a tag pill to reorder it, with a live drop placeholder and drag preview
  • Drag between nodes: move pills across any pill-based prompt nodes; Alt while dropping copies instead of moving, duplicate names are skipped
  • Multi-select: Ctrl+click toggles individual pills, Ctrl+drag rubber-bands a box over them (Explorer-style — re-sweeping a selected pill deselects it), Shift+click selects a range, Esc or a click outside clears it — a drag started on a selected pill carries the whole set
  • Selection actions: right-clicking a selected pill opens bulk Enable / Disable / Toggle / Remove, plus "Save Selected as Tag Group" and "Export Selected"
  • Quick edit cleanup: Move Up / Move Down were dropped from the right-click menu now that pills can simply be dragged

Version 3.0

  • Nodes 2.0 ready: tag UI rendered as DOM widgets in both classic and Vue renderers
  • Subgraph support: prefix separator is a real (hidden) input; property panel remains the edit surface
  • Gallery performance: previews are plain <img> elements (browser cache, lazy loading) — no manual bitmap cache needed
  • Randomizer: "control after generate" now triggers once per completed prompt (works correctly with queued batches)
  • Many bug fixes: global autocomplete attachment, overwrite-confirm dialog, settings sync, stale text on workflow load, safer file-serving routes, gallery previews for filenames with special characters, button tooltips

Version 2.1

  • New Node: Prompt Gallery: Powerful and intuitive grid-based gallery for browsing and selecting tags
  • Tag Group Image on Save: You can now set a preview image when saving a Tag Group
  • Change Image in Quick Edit: Added the ability to change the preview image directly from the quick edit menu
  • Performance Boost: Implemented caching for previews, trigger words, and Tag Group content for a smoother experience

Version 2.0 - Major Overhaul

  • Major Refactor: Major overhaul of the codebase with rebuilt Autocomplete and Quick Edit systems

Version 1.4 - Enhanced Browsing

  • New Features: Folder browser for LoRAs, Embeddings and Tag Groups

Version 1.3 - Extended Support

  • New Features: LoRA and Embedding support for Autocomplete

Version 1.2 - Core Features

  • New Features: Introduced Randomizer node and Autocomplete functionality

Version 1.1 - Initial Release

  • Launch: Published to ComfyUI Registry and Manager

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

Special thanks to the amazing open-source community:


<div align="center">

⭐ If you find this project helpful, please consider giving it a star! ⭐

Report BugRequest FeatureDiscussions

</div>