New Taggers:
- LandmarkTagger: 150+ famous landmarks (monuments, natural wonders, bridges)
- SkyWeatherTagger: clouds, sun/moon, weather, celestial elements
- Places365Tagger: scene recognition with 365 categories
- CLIPSceneTagger: photo style, camera type, subject, mood
- WildlifeTagger: animals, pets, nature, biomes
Scene Detection Improvements:
- Fixed "no humans" tag override for human detection
- Fixed scene type detection for animal/wildlife photos
- Wildlife/landscape taggers now skip for portrait/fashion scenes
- Canonical structurer respects "no humans" + "animal" tags
Analysis Node Improvements:
- Added analysis_enabled toggle (skip taggers for quick caption)
- Added prompt output (florence_description)
- Progress bar now starts during taggers phase
- Progress callback passed through pipeline
Bug Fixes:
- Fixed abstract method error in Places365/CLIPScene/Wildlife taggers
- Added load() method to new CLIP-based taggers
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update CLAUDE.md status table
- Check off Phase 1 tasks in implementation_plan.md
- Add commit reference for traceability
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
New Features:
- SID_PromptCompose node with Standard and Enhance with AI modes
- SID_PromptSynthesis node for VLM-based prompt generation
- SID_ImageAnalysis node for comprehensive image analysis
- Text LLM support (Qwen2.5 0.5B-7B) for prompt enhancement
- PixAI tagger integration
Documentation:
- docs/image_tokenization_spec.md - Full technical specification
for tokenization → classification → assembly pipeline
- docs/implementation_plan.md - 8-phase implementation roadmap
- docs/SID_PromptCompose.md - Node usage documentation
Infrastructure:
- core/compose/ module with base, pipeline, standard, llm generators
- core/log.py centralized logging
- Config files for Qwen2.5 text models (YAML)
- Web assets for ComfyUI integration
This commit establishes the foundation for rewriting the compose
pipeline based on the tokenization specification.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Merge simple and advanced features into one unified SID_Caption node.
The node now includes model selection, quantization, quality tiers,
style, and length options all in one place.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add modular core architecture with plug-and-play model support
- Implement Florence-2 model with config-driven prompts and settings
- Add platform layer for GPU detection, memory management, and state isolation
- Support transformers >= 4.51.0 via kijai's bundled Florence2 implementation
- Add caption cleaning and output formatting utilities
- Update architecture docs with KISS principle design decisions
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- architecture.md: 3-node design (Caption, CaptionAdvanced, CaptionOptions)
- mvp.md: 6-phase implementation plan (~935 lines total)
- history.md: analysis of v4.x issues and lessons learned
- research.md: survey of existing captioning nodes in ComfyUI ecosystem
Key decisions:
- Embedded WD14 tagging in pipeline (not separate node)
- Qwen-focused model lineup with tier-based selection
- Flow-based pipeline for easy modification
- ComfyUI V1 API for maximum compatibility
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove all nodes and code
- Keep only minimal __init__.py with empty extension
- Update to v5.0.0-dev
- Clean requirements and pyproject.toml
Starting fresh for new architecture.
Generated with Claude Code
## New Features
- Add web-based Prompt Editor at /sid/prompt-editor
- Monaco editor with TOML syntax highlighting
- File browser for prompt templates
- Save with TOML validation and auto-backup
- Reset to git default functionality
- Add prompt_generator_core.py for standalone batch processing
- Add sid_prompt_generator_v2.py with simplified interface
- Add sid_prompt_debug.py for prompt quality evaluation
- Add cv_analyzer.py for YOLO-based human detection
## Prompt Template Improvements
- Restructure prompts into separate TOML files (portrait, scene, classification)
- Add sentence-by-sentence structure for local models
- Add comprehensive hair texture vocabulary (straight/wavy/curly/bangs)
- Add makeup vocabulary (smoky eyes, lipstick colors)
- Improve basic tier prompts to output sentences instead of keyword lists
## API Call Optimization
- Standard mode: Single API call (ignores reasoning)
- Detailed + reasoning OFF: Single API call with detailed prompts
- Detailed + reasoning ON: Multi-step agentic analysis
## Dependencies
- Add aiohttp for web routes
- Add tomlkit for TOML editing with comment preservation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>