A comprehensive ComfyUI custom node that extends the standard text encoder with persistent prompt storage, advanced search capabilities, automatic image gallery system, and powerful ComfyUI workflow metadata analysis using SQLite.
V2 development will take longer as life has taken me in other directions for the moment. I will still work on it but not as actively as before. In the meantime, I will backport some of the features users have requested from v2 over to v1. Once v2 is ready, I will update here. Thank you for your continued support!
ComfyUI Prompt Manager provides two powerful node types for comprehensive prompt management:
A drop-in replacement for ComfyUI's standard CLIPTextEncode node with database features:
- 🔄 Drop-in Replacement: Works exactly like the standard text encoder
- 🤖 CLIP Encoding: Outputs CONDITIONING for use with samplers and other CLIP-dependent nodes
A text-focused variant that outputs raw STRING for maximum flexibility:
- 📝 Pure Text Output: Outputs STRING type for use with any text-accepting node
- 🔗 Text Concatenation: Built-in prepend/append functionality for dynamic text assembly
- ⚡ Lightweight Processing: No CLIP encoding overhead for text-only workflows
A search node that outputs prompts as a list for batch processing workflows:
- 🔍 Database Search: Search prompts by text, category, tags, and rating
- 📋 List Output: Uses
OUTPUT_IS_LISTfor native batch processing support - 🔗 Batch Compatible: Connect directly to batch processing nodes like String OutputList
- ⚡ Read-Only: Lightweight search operation without database writes
This node enables powerful batch workflows by allowing you to search your prompt database and process multiple prompts in a single execution.
Both nodes include the complete PromptManager feature set:
- 💾 Persistent Storage: Automatically saves all prompts to a local SQLite database
- 🔍 Advanced Search: Query past prompts with text search, category filtering, and metadata
- 🖼️ Automatic Image Gallery: Automatically links generated images to their prompts
- 🏷️ Rich Metadata: Add categories, tags, ratings, notes, and workflow names to prompts
- 🚫 Duplicate Prevention: Uses SHA256 hashing to detect and prevent duplicate storage
- 🌐 Advanced Web Interface: Comprehensive admin dashboard with metadata analysis
- 📊 Analytics: Track prompt usage patterns and effectiveness over time
- 🔬 Workflow Analysis: Extract and analyze ComfyUI workflow data from PNG images
- 📋 Metadata Viewer: Standalone tool for analyzing ComfyUI-generated images
- 🛠️ System Management: Built-in diagnostics, backup/restore, and maintenance tools
- 🏷️ AI AutoTag: Automatically tag your image collection using JoyCaption vision models
- Text Encoding: Standard CLIP text encoding for ComfyUI workflows
- Conditioning Output: Produces CONDITIONING for samplers and generation nodes
- Full Compatibility: Drop-in replacement for CLIPTextEncode nodes
- String Output: Produces STRING for use with any text-accepting node
- Text Concatenation: Prepend and append fields for dynamic text assembly
- Lightweight: No CLIP encoding overhead for pure text workflows
- Flexible Integration: Works with custom nodes, text processors, and other STRING inputs
- Auto-Save: Every prompt is automatically saved to the database
- Metadata Support: Optional categories, tags, ratings (1-5), notes, and workflow names
- Hash-based Deduplication: Prevents storing identical prompts multiple times
The comprehensive gallery system provides complete management of all ComfyUI output with professional viewing capabilities:
- Complete Output Monitoring: Automatically scans and displays ALL content from your ComfyUI output directory
- Multi-Format Support: Handles images (.png, .jpg, .jpeg, .webp, .gif) and videos (.mp4, .webm, .avi, .mov, .mkv, .m4v, .wmv)
- Intelligent Organization: View all generated content regardless of which workflow created it
- Advanced Filtering: Filter by media type, date range, file size, and generation parameters
- Performance Optimized: Efficient scanning with thumbnail generation and lazy loading
- Native Video Playback: HTML5 video player with custom controls for all supported formats
- Video Thumbnails: Automatic thumbnail generation with OpenCV, ffmpeg, or placeholder fallback
- Playback Controls: Autoplay, mute, loop settings with persistent preferences
- Video Navigation: Seamless navigation between videos with keyboard shortcuts
- Video Metadata: Display duration, resolution, aspect ratio, and file information
- Mixed Media Gallery: Videos and images integrated seamlessly in the same interface
- Full-Featured Viewing: Zoom, rotation, slideshow modes with professional controls
- Advanced Navigation: Smooth transitions, thumbnail strip, and keyboard shortcuts
- Zoom Controls: Mouse wheel zoom, drag to pan, and touch gesture support
- Toolbar Features: Comprehensive toolbar with zoom, rotate, flip, reset, and fullscreen
- Dark Theme Integration: Seamless styling that matches the admin interface
- Real-time PNG Parsing: Extract ComfyUI workflow data from any generated image
- Integrated Metadata Panel: Live workflow analysis with copy functionality
- Generation Parameters: CFG scale, steps, sampler, seed, and model information
- One-click Copying: Copy prompts, parameters, and workflow data directly
- File Path Integration: Direct access to files in your output directory
- Cross-Platform Support: Works on desktop, tablet, and mobile devices
- Smart Thumbnail System: Generates optimized thumbnails for faster loading
- Lazy Loading: Load content as needed for smooth browsing of large galleries
- Grid & List Views: Choose between compact grid or detailed list display
- Pagination: Efficient browsing of thousands of generated files
- Search & Filter: Real-time search across filenames and metadata
Powered by ViewerJS for professional image viewing capabilities.
- PNG Metadata Parsing: Advanced PNG chunk analysis to extract embedded ComfyUI data
- Workflow Data Extraction: Complete ComfyUI workflow JSON recovery from images
- Prompt Recovery: Extract positive/negative prompts from any ComfyUI-generated image
- Generation Parameters: Recover steps, CFG scale, sampler, seed, and model information
- Multi-Node Support: Handles PromptManager, CLIPTextEncode, and other node types
- Copy & Export: One-click copying of prompts and workflow JSON download
- Standalone Viewer: Dedicated metadata analysis tool at
/prompt_manager/metadata.html - Drag & Drop Interface: Easy analysis by dropping PNG files directly into the viewer
- Error Handling: Robust parsing with NaN value cleaning and malformed JSON recovery
- Independent Tool: Access at
http://localhost:8188/prompt_manager/metadata.html - Real-time Analysis: Instant PNG metadata extraction and display
- Comprehensive Display: Shows all discoverable ComfyUI workflow information
- Export Capabilities: Download workflow JSON files for reuse
- File Path Integration: Click to reveal file locations in your system
- Visual Interface: Clean, organized presentation of complex workflow data
- Full-text search across all stored prompts
- Category filtering for organized prompt collections
- Tag-based search with support for multiple tags
- Rating filters to find your best prompts
- Date range filtering for temporal searches
- Recent prompts quick access
- Top-rated prompts for quality discovery
- Image search by file properties and metadata
- Admin Dashboard: Comprehensive browser-based management interface with modern dark theme
- Responsive Design: Works on desktop, tablet, and mobile devices
- Real-time Search: Instant search results as you type
- Bulk Operations: Edit multiple prompts simultaneously with batch tools
- Settings Panel: Configure behavior and display options
- System Management: Complete toolset for database operations:
- 🔍 Metadata Viewer: Launch standalone PNG analysis tool
- 📸 Scan Images: Bulk scan output directories for ComfyUI images
- 💾 Backup/Restore: Database backup and recovery operations
- 🔧 Maintenance: Database optimization and cleanup tools including orphaned prompt removal
- 📋 Logs: Comprehensive logging system with download capability
- 🔍 Diagnostics: System health checks and troubleshooting
- Export Tools: Download prompts and metadata in various formats
- Progress Tracking: Real-time progress indicators for long operations
- Error Handling: Graceful error display with recovery suggestions
- SQLite backend for reliable local storage
- Automatic schema creation and management
- Database optimization with proper indexing and maintenance tools
- Export functionality to JSON or CSV formats
- Backup and restore capabilities
- Relationship tracking between prompts and generated images
- Orphaned prompt cleanup to remove prompts without linked images
-
Clone the repository into your ComfyUI custom_nodes directory:
cd ComfyUI/custom_nodes/ git clone https://github.com/ComfyAssets/ComfyUI_PromptManager cd ComfyUI_PromptManager
-
Install dependencies:
pip install -r requirements.txt
-
Restart ComfyUI to load the new node
-
Add the nodes to your workflow:
- PromptManager: Look for "Prompt Manager" in the conditioning category - use exactly like "CLIP Text Encode"
- PromptManagerText: Look for "Prompt Manager Text" in the PromptManager/Text category - outputs STRING for any text node
-
Access the web interface:
- Admin Dashboard:
http://localhost:8188/prompt_manager/admin- Full management interface - Metadata Viewer:
http://localhost:8188/prompt_manager/metadata.html- Standalone PNG analysis tool - Simple Interface:
http://localhost:8188/prompt_manager/- Basic prompt browser
- Admin Dashboard:
- ComfyUI installation
- Python 3.8 or higher
- SQLite3 (included with Python)
watchdoglibrary for automatic image monitoring
Replace any CLIPTextEncode node with PromptManager:
- Add the PromptManager node to your workflow
- Connect CLIP model (same as standard text encoder)
- Enter your prompt in the text field
- Connect the CONDITIONING output to your sampler node
For text-only workflows or when you need STRING output:
- Add the PromptManagerText node to your workflow
- Enter your prompt in the text field
- Optionally use prepend/append for dynamic text assembly:
- Prepend Text: Text added before your main prompt
- Append Text: Text added after your main prompt
- Connect the STRING output to any node that accepts text input
For batch processing workflows that need multiple prompts:
- Add the PromptSearchList node to your workflow
- Configure search filters:
- text: Search for prompts containing this text
- category: Filter by specific category
- tags: Comma-separated tags to filter by (e.g., "anime, detailed")
- min_rating: Minimum rating (0-5) to include
- limit: Maximum number of results (1-1000, default 50)
- Connect the prompts output to batch-compatible nodes like String OutputList
- Each matching prompt will be processed as a separate batch item
Both nodes support the same metadata fields:
- Category: "portraits", "landscapes", "abstract", etc.
- Tags: "detailed, anime, masterpiece" (comma-separated)
- Rating: 1-5 stars for prompt quality (web interface only)
- Notes: Any additional information (web interface only)
- Workflow Name: Name of your workflow for organization (web interface only)
Both nodes will automatically save prompts to the database and link any generated images to the prompt.
The comprehensive gallery system provides complete access to all your ComfyUI output:
- Open the admin interface at
http://localhost:8188/prompt_manager/admin - Click the "🖼️ Gallery" button to open the output-wide gallery
- Browse all content from your ComfyUI output directory
- Mixed Media Viewing: Images and videos appear together in the same gallery
- Video Thumbnails: Videos show with play button overlays and 🎬 icons
- Smart Filtering: Filter by media type (All, Images, Videos) using the dropdown
Configure your viewing experience in the settings panel:
- Performance Settings: Grid columns, image quality, lazy loading
- Video Settings: Autoplay, mute by default, loop videos
- Thumbnail Management: Generate optimized thumbnails for faster loading
- Click any image to open the professional viewer with:
- Full-screen viewing with zoom, rotation, and slideshow controls
- Integrated metadata panel showing workflow data and generation parameters
- Navigation arrows and keyboard shortcuts (←/→ arrow keys)
- Copy functionality for prompts, parameters, and workflow data
- Use keyboard shortcuts:
- Arrow keys (←/→) for navigation
- ESC to close viewer
- Space for slideshow mode
- Click any video to open the video player with:
- HTML5 video controls with play, pause, seek, and fullscreen
- Custom control buttons for mute/unmute and loop toggle
- Video information panel showing duration, resolution, and file details
- Navigation between videos using arrow keys or buttons
- Playback settings are remembered across sessions
- Real-time Search: Search across filenames and metadata
- View Modes: Switch between grid and list views
- Sorting Options: Sort by date, size, or filename
- Pagination: Efficiently browse thousands of files
- Thumbnail Generation: Create optimized thumbnails for better performance
Use the standalone metadata viewer to analyze any ComfyUI-generated PNG:
- Open the metadata viewer at
http://localhost:8188/prompt_manager/metadata.html - Drag and drop any PNG file with ComfyUI workflow data
- View extracted information:
- Prompts: Copy positive/negative prompts with one click
- Parameters: See all generation settings used
- Model Info: Identify checkpoint and settings
- Workflow: Download complete workflow JSON
- Copy data using the built-in copy buttons
- Export workflow as JSON file for reuse in ComfyUI
Import existing ComfyUI images into your database:
- Open admin dashboard and click "📸 Scan Images"
- Start scan to analyze your entire output directory
- Monitor progress with real-time status updates
- Review results showing:
- Images found and processed
- Prompts extracted and linked
- Any errors or issues encountered
- Access imported data through the normal gallery interface
Automatically tag your entire image collection using JoyCaption vision models:
- JoyCaption Beta One FP16: Full precision model for highest quality tagging (requires more VRAM)
- JoyCaption Beta One GGUF (FP8): Quantized model for lower VRAM usage with minimal quality loss
-
AutoTag (Batch Mode): Tag your entire collection automatically
- Click "🏷️ AutoTag" in the admin dashboard
- Choose your model type (FP16 or GGUF)
- Select how to handle already-tagged images:
- Skip images with existing tags: Preserve your meticulous manual tagging work
- Re-tag all images: Overwrite existing tags with fresh AI analysis
- Customize the system prompt to match your collection style
- Monitor real-time progress as images are processed
-
Review Mode: Tag images one-by-one with approval
- Review each image and its AI-generated tags before applying
- Edit, add, or remove tags before saving
- Skip images you don't want to tag
- Perfect for curating high-quality tag assignments
For users who have meticulously tagged their collections from the start:
- AutoTag respects your existing work with the "Skip tagged" option
- "auto-scanned" placeholder tags don't count as real tags
- Choose to re-tag specific images while preserving others
- Review mode asks before overwriting on each image
Adjust the system prompt to match your tagging style:
- Focus on specific attributes (style, mood, composition, subjects)
- Match your existing tag vocabulary
- Optimize for your collection's theme (anime, photography, landscapes, etc.)
- Sufficient VRAM for the chosen model (FP16 requires more, GGUF is lighter)
- Models are downloaded automatically on first use
- Feature requests and improvements are welcome!
The comprehensive web interface provides:
- Search Bar: Real-time search across all prompts
- Filter Options: Filter by category, tags, rating, and date
- Bulk Operations: Select multiple prompts for batch editing
- Export Tools: Download your prompt collection
- Settings Panel: Configure auto-save and display options
- Diagnostics: System health checks and troubleshooting
Keep your database optimized with built-in maintenance tools:
- Open the admin dashboard and click "🔧 Maintenance"
- Select maintenance operations:
- Remove Duplicates: Find and merge duplicate prompts while preserving images
- Vacuum Database: Optimize database file size and performance
- Clean Orphaned Images: Remove image records for missing files
- 🚮 Prune Orphaned Prompts: Remove prompts that have no linked images
- Check Consistency: Verify database integrity and relationships
- Database Statistics: Generate detailed database reports
- Run selected operations and monitor progress in real-time
- Review results showing detailed information about each operation
By default, the database is saved as example_prompts.db in the node directory. This file contains all your prompts and linked images and can be backed up or shared.
Use the web interface for intuitive searching, or access the database directly:
from database.operations import PromptDatabase
db = PromptDatabase()
# Search for landscape prompts
results = db.search_prompts(text="landscape", limit=10)
# Find highly rated prompts
results = db.search_prompts(rating_min=4)
# Search by category and tags
results = db.search_prompts(
category="portraits",
tags=["anime", "detailed"]
)
# Get recent prompts
recent = db.get_recent_prompts(limit=20)
# Get images for a prompt
images = db.get_prompt_images(prompt_id="123")Input: "A beautiful sunset over a mountain lake"
Category: "landscapes"
Tags: "nature, sunset, mountains, water"
→ Outputs: CONDITIONING for sampler nodes
Input: "Portrait of a cyberpunk hacker with neon implants"
Category: "characters"
Tags: "cyberpunk, portrait, sci-fi, neon"
→ Outputs: CONDITIONING for sampler nodes
Main Text: "beautiful landscape"
Prepend Text: "masterpiece, ultra detailed,"
Append Text: ", 8k resolution, trending on artstation"
→ Final Output: "masterpiece, ultra detailed, beautiful landscape, 8k resolution, trending on artstation"
Input: "A serene mountain lake at sunset"
Category: "landscapes"
Tags: "nature, peaceful, golden hour"
→ Outputs: STRING for use with text processors, style nodes, or other custom nodes
PromptManagerText → Text Processor → Style Applicator → Final Text Node
"cyberpunk city" → style processing → "neon-lit cyberpunk metropolis at night"
Tags: "anime, detailed"
Limit: 10
→ Outputs: List of up to 10 prompts with both "anime" and "detailed" tags
→ Each prompt is processed as a separate batch item
Category: "portraits"
Min Rating: 4
Limit: 20
→ Outputs: List of up to 20 highly-rated portrait prompts for batch generation
Input: "Swirling colors in an abstract geometric pattern"
Category: "abstract"
Tags: "geometric, colorful, pattern, modern"
Rating: 3 (set via web interface)
Notes: "Good for experimental art" (set via web interface)
-- Prompts table
CREATE TABLE prompts (
id INTEGER PRIMARY KEY AUTOINCREMENT,
text TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
workflow_name TEXT,
category TEXT,
tags TEXT, -- JSON array of tags
rating INTEGER CHECK(rating >= 1 AND rating <= 5),
notes TEXT,
hash TEXT UNIQUE -- SHA256 hash for deduplication
);
-- Generated images table
CREATE TABLE generated_images (
id INTEGER PRIMARY KEY AUTOINCREMENT,
prompt_id TEXT NOT NULL,
image_path TEXT NOT NULL,
filename TEXT NOT NULL,
generation_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
file_size INTEGER,
width INTEGER,
height INTEGER,
format TEXT,
workflow_data TEXT, -- JSON workflow metadata
prompt_metadata TEXT, -- JSON prompt parameters
parameters TEXT, -- JSON generation parameters
FOREIGN KEY (prompt_id) REFERENCES prompts(id)
);prompt_manager.py- Main ComfyUI node implementation (CLIP encoding)prompt_manager_text.py- Text-only node implementation (STRING output)prompt_search_list.py- Batch search node implementation (LIST output)database/models.py- Database schema and connection managementdatabase/operations.py- CRUD operations and search functionalitypy/api.py- Web API endpoints for the interfacepy/config.py- Configuration managementutils/hashing.py- SHA256 hashing for deduplicationutils/validators.py- Input validation and sanitizationutils/image_monitor.py- Automatic image detection systemutils/prompt_tracker.py- Prompt execution trackingutils/metadata_extractor.py- PNG metadata analysis engineutils/logging_config.py- Comprehensive logging systemutils/diagnostics.py- System diagnostics and health checksweb/admin.html- Advanced admin dashboard with metadata panelweb/index.html- Simple web interfaceweb/prompt_manager.js- JavaScript functionalityweb/metadata.html- Standalone PNG metadata viewer
ComfyUI_PromptManager/
├── __init__.py # Node registration
├── prompt_manager.py # Main node implementation (CLIP encoding)
├── prompt_manager_text.py # Text-only node implementation (STRING output)
├── prompt_search_list.py # Batch search node implementation (LIST output)
├── database/
│ ├── __init__.py
│ ├── models.py # Database schema
│ └── operations.py # Database operations
├── py/
│ ├── __init__.py
│ ├── api.py # Web API endpoints
│ └── config.py # Configuration
├── utils/
│ ├── __init__.py
│ ├── hashing.py # Hashing utilities
│ ├── validators.py # Input validation
│ ├── image_monitor.py # Automatic image detection
│ ├── prompt_tracker.py # Prompt execution tracking
│ ├── metadata_extractor.py # PNG metadata analysis
│ ├── logging_config.py # Logging system
│ └── diagnostics.py # System diagnostics
├── web/
│ ├── admin.html # Advanced admin dashboard
│ ├── index.html # Simple web interface
│ ├── metadata.html # Standalone metadata viewer
│ └── prompt_manager.js # JavaScript functionality
├── tests/
│ ├── __init__.py
│ └── test_basic.py # Test suite
├── requirements.txt # Dependencies
├── example_usage.py # Standalone examples
├── example_prompts.db # Example database
└── README.md # This file
You can customize the database path by modifying the configuration:
# In py/config.py
DATABASE_PATH = "custom_path/prompts.db"Configure the automatic image detection and gallery system:
# Gallery monitoring configuration (GalleryConfig class)
MONITORING_ENABLED = True
MONITORING_DIRECTORIES = [] # Auto-detect ComfyUI output if empty
SUPPORTED_EXTENSIONS = ['.png', '.jpg', '.jpeg', '.webp', '.gif']
PROCESSING_DELAY = 2.0 # Delay before processing new images
PROMPT_TIMEOUT = 120 # Seconds to keep prompt context active
CLEANUP_INTERVAL = 300 # Seconds between cleanup of expired prompts
# Performance settings
MAX_CONCURRENT_PROCESSING = 3
METADATA_EXTRACTION_TIMEOUT = 10 # Seconds for PNG analysis
IMAGES_PER_PAGE = 20
THUMBNAIL_SIZE = 256Configure the web interface behavior:
# Web UI settings (PromptManagerConfig class)
RESULT_TIMEOUT = 5 # Seconds to auto-hide results in ComfyUI node
WEBUI_DISPLAY_MODE = 'newtab' # 'popup' or 'newtab' for Web UI button
SHOW_TEST_BUTTON = False # Show API test button in node UI- The database automatically creates indexes for optimal search performance
- Regular
VACUUMoperations keep the database optimized - Consider backing up the database periodically
from database.operations import PromptDatabase
db = PromptDatabase()
# Export to JSON
db.export_prompts("my_prompts.json", format="json")
# Export to CSV
db.export_prompts("my_prompts.csv", format="csv")info = db.model.get_database_info()
print(f"Total prompts: {info['total_prompts']}")
print(f"Average rating: {info['average_rating']}")# Create backup
db.model.backup_database("backup_prompts.db")
# The database file can be copied directly for backupcd KikoTextEncode
python -m pytest tests/ -vThe project follows PEP 8 guidelines with:
- Black formatter (88 character line limit)
- Type hints for all functions
- Comprehensive docstrings
- Proper error handling
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Ensure all tests pass
- Submit a pull request
Database Permission Errors
- Ensure the ComfyUI process has write permissions to the node directory
- Check that the database file isn't locked by another process
Import Errors
- Verify ComfyUI is properly installed
- Check that all required dependencies are available
Performance Issues
- Run
VACUUMon the database occasionally - Consider archiving old prompts if the database becomes very large
For debugging, you can enable verbose logging in the node:
# Add to kiko_text_encode.py
import logging
logging.basicConfig(level=logging.DEBUG)MIT License - see LICENSE file for details.
- Issues: Report bugs and request features via GitHub Issues
- Documentation: See the Wiki for detailed guides
- Community: Join the discussion in ComfyUI Discord
- ✅ PNG Metadata Analysis: Complete ComfyUI workflow extraction from images
- ✅ Standalone Metadata Viewer: Dedicated tool for analyzing any ComfyUI image
- ✅ Advanced Admin Dashboard: Comprehensive management interface with modern UI
- ✅ Integrated Metadata Panel: Real-time workflow analysis in image viewer
- ✅ Bulk Image Scanning: Mass import of existing ComfyUI images
- ✅ System Management Tools: Backup, restore, diagnostics, and maintenance
- ✅ Enhanced Error Handling: Robust PNG parsing with NaN value cleaning
- ☁️ Cloud Sync: Optional cloud backup and sync
- 🤝 Collaboration: Share prompt collections with other users
- 🧠 AI Suggestions: Recommend similar prompts based on metadata analysis
- 📈 Advanced Analytics: Detailed usage statistics and trends with workflow insights
- 🔌 Plugin System: Support for third-party extensions and custom analyzers
- 🎨 Enhanced Batch Processing: Advanced bulk operations with metadata editing
- 🔄 Workflow Templates: Save and reuse common workflow patterns
- 📊 Visual Analytics: Charts and graphs for prompt effectiveness analysis
- Workflow linking: Connect prompts to specific workflow templates
- Image analysis: Analyze generated images to improve suggestions
- Version control: Track prompt iterations and effectiveness
- 🔘 Top Bar PM Button: Added a "PM" button to the ComfyUI top bar for quick access to the admin dashboard
- 🚀 No Node Required: Open PromptManager without having to add the node to your workflow first
- 🎨 Teal Button Design: Distinctive teal-colored button positioned before the settings gear
- 🔄 Frontend Compatibility: Works with both new ComfyUI frontend (v1.3.1+) and legacy versions
- 🎞️ Film Strip Preview: Backported from V2 - thumbnail strip under each prompt showing linked images
- 🖼️ Quick Image Viewer: Click any filmstrip thumbnail to open full-size image viewer
- 📸 Smart Thumbnails: Automatically uses generated thumbnails for faster loading, falls back to full images
- ⬆️ Auto-Scroll on Pagination: Page navigation now smoothly scrolls to top after loading
- ➕ Add Prompt Button: New "Add Prompt" button in the admin dashboard Bulk Actions bar
- 📝 Direct Prompt Creation: Create prompts directly from the UI without generating images
- 🛡️ Protection from Pruning: New prompts are automatically protected from orphan cleanup by default
- 🏷️ Full Metadata Support: Set category, tags, rating, and notes when creating prompts
- 🔒 Orphan Protection Toggle: Option to protect or unprotect prompts from maintenance cleanup
- 🏷️ AI AutoTag: Automatically tag your entire image collection using JoyCaption vision models
- 🤖 Dual Model Support: Choose between JoyCaption Beta One FP16 (high quality) or GGUF FP8 (lower VRAM)
- 📋 Two Tagging Modes: Batch mode for bulk tagging, Review mode for one-by-one approval
- ⚙️ Smart Tag Handling: Skip already-tagged images or re-tag all - respects your existing work
- ✏️ Customizable Prompts: Adjust the system prompt to match your collection style and tag vocabulary
- 🔄 Real-time Progress: SSE-based streaming progress updates during batch operations
- 📦 Tag Accordion UI: Collapsible tag display shows first row with expandable section for large tag sets
- 🎯 Review Confirmation: Prompts before overwriting existing tags in review mode
- 📋 PromptSearchList Node: New node that searches the prompt database and outputs results as a list
- 🔗 Batch Processing Support: Uses
OUTPUT_IS_LISTfor native ComfyUI batch processing compatibility - 🔍 Full Search Capabilities: Search by text, category, tags, minimum rating, and result limit
- ⚡ Lightweight Operation: Read-only search with no database writes
- 🎯 Workflow Integration: Connect directly to batch processing nodes like String OutputList
- 📁 Output-Wide Gallery Mode: Complete gallery redesign to show ALL content from ComfyUI output directory
- 🎬 Full Video Support: Native video playback with HTML5 player for .mp4, .webm, .avi, .mov, .mkv, .m4v, .wmv formats
- 🖼️ Video Thumbnail Generation: Automatic video thumbnails using OpenCV, ffmpeg, or placeholder fallback
- ⚙️ Video Settings Panel: Configurable autoplay, mute, and loop settings with persistent preferences
- 🎮 Video Navigation: Seamless navigation between videos with keyboard shortcuts and custom controls
- 📊 Video Metadata Display: Show duration, resolution, aspect ratio, and detailed file information
- 🔄 Mixed Media Integration: Videos and images seamlessly integrated in the same gallery interface
- ⚡ Enhanced Performance: Optimized thumbnail generation for both images and videos
- 🎛️ Advanced Gallery Settings: Comprehensive settings panel with video controls and performance options
- 🖱️ Improved Click Handling: Fixed thumbnail failures to preserve click functionality
- 📱 Mobile Compatibility: Enhanced responsive design for video playback on all devices
- 📝 PromptManagerText Node: New text-only variant that outputs STRING instead of CONDITIONING
- 🔗 Text Concatenation: Built-in prepend/append functionality for dynamic text assembly
- ⚡ Lightweight Processing: No CLIP encoding overhead for pure text workflows
- 🔄 Dual Node Architecture: Choose between CLIP encoding (PromptManager) or text-only (PromptManagerText)
- 🏷️ Shared Metadata System: Both nodes use the same database and metadata features
- 🖼️ Unified Gallery: Images from both node types appear in the same gallery system
- 📊 Enhanced Tracking: Improved prompt tracking with prepend/append context preservation
- 📊 Enhanced Tracking: Improved prompt tracking with prepend/append context preservation
- 🖼️ Professional Image Viewer: Complete gallery redesign with ViewerJS integration
- ⚡ Advanced Image Navigation: Zoom, rotation, slideshow, and professional viewing controls
- 🎨 Dark Theme Integration: Seamless ViewerJS styling that matches the admin interface
- 🔬 Enhanced Metadata Parsing: Improved ComfyUI workflow parameter extraction with targeted parsing
- 📊 Real-time Parameter Display: Live CFG, steps, sampler, and seed extraction from workflow nodes
- 📋 Integrated Copy Functionality: One-click copying of prompts and generation parameters
- 🛠️ Robust Value Detection: Smart parsing that targets specific node types and validates parameters
- ⌨️ Keyboard Navigation: Full keyboard support for gallery navigation and viewer controls
- 📱 Responsive Design: Enhanced mobile and tablet compatibility
- 🔬 PNG Metadata Analysis: Advanced ComfyUI workflow extraction from PNG images
- 📋 Standalone Metadata Viewer: Dedicated tool at
/web/metadata.htmlfor analyzing any ComfyUI image - 🖼️ Integrated Metadata Panel: Real-time workflow analysis in the image viewer
- 📸 Bulk Image Scanning: Mass import and analysis of existing ComfyUI output directories
- 🛠️ System Management Suite: Complete backup, restore, maintenance, and diagnostic tools
- 🚮 Orphaned Prompt Cleanup: Remove prompts that have no linked images for database optimization
- 📋 Advanced Logging: Comprehensive logging system with web-based log viewer
- 🎨 Enhanced Admin Dashboard: Modern dark theme with improved UX and management tools
- 🔧 Robust Error Handling: Advanced PNG parsing with NaN value cleaning and error recovery
- 📁 File Path Integration: Direct file path display and system integration
- ⚡ Performance Optimizations: Improved metadata extraction and database operations
- 🖼️ Automatic Image Gallery: Complete image tracking and gallery system
- 🌐 Advanced Web Interface: Comprehensive admin dashboard with responsive design
- 📱 Image Viewer: Full-screen modal with navigation and keyboard shortcuts
- 🔍 Enhanced Search: Real-time search with advanced filtering options
- ⚡ Performance Improvements: Optimized database operations
- 🛠️ Basic Diagnostics: Initial system diagnostics and health monitoring
- 📊 Bulk Operations: Multi-select prompt editing and management
- Core text encoding with database storage
- Search and filtering functionality
- Metadata support (categories, tags, ratings, notes)
- Hash-based deduplication
- SQLite backend with optimized schema
- Basic web interface
- Export functionality