diff --git a/arty.yml b/arty.yml index ae5c63e..fc9c36f 100644 --- a/arty.yml +++ b/arty.yml @@ -518,65 +518,84 @@ scripts: ln -sf /workspace/huggingface_cache/models--stabilityai--stable-video-diffusion-img2vid-xt stable-video-diffusion-img2vid-xt echo "Models linked to ComfyUI" - # Workflow linking (link production workflows from git repo - flattened structure) + # Workflow linking (link production workflows with category prefixes) workflows/link-comfyui: | - mkdir -p /workspace/ComfyUI/workflows - cd /workspace/ComfyUI/workflows + # Create ComfyUI user workflows directory + mkdir -p /workspace/ComfyUI/user/default/workflows + cd /workspace/ComfyUI/user/default/workflows - # Remove old directory symlinks if they exist - rm -f text-to-image image-to-image image-to-video text-to-music upscaling advanced templates + # Remove old symlinks from previous location + rm -f /workspace/ComfyUI/workflows/*.json 2>/dev/null || true + + # Clear existing workflow symlinks to avoid conflicts + find . -type l -name "*.json" -delete - # Link all JSON workflow files directly to workflows root SOURCE_DIR="/workspace/ai/models/comfyui/workflows" - # Text-to-Image workflows + # Text-to-Image workflows (prefix: t2i_) for file in "$SOURCE_DIR/text-to-image"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "t2i_${basename}" + fi done - # Image-to-Image workflows + # Image-to-Image workflows (prefix: i2i_) for file in "$SOURCE_DIR/image-to-image"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "i2i_${basename}" + fi done - # Image-to-Video workflows + # Image-to-Video workflows (prefix: i2v_) for file in "$SOURCE_DIR/image-to-video"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "i2v_${basename}" + fi done - # Text-to-Music workflows + # Text-to-Music workflows (prefix: t2m_) for file in "$SOURCE_DIR/text-to-music"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "t2m_${basename}" + fi done - # Upscaling workflows + # Upscaling workflows (prefix: upscale_) for file in "$SOURCE_DIR/upscaling"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "upscale_${basename}" + fi done - # Advanced workflows + # Advanced workflows (prefix: adv_) for file in "$SOURCE_DIR/advanced"/*.json; do - [ -f "$file" ] && ln -sf "$file" "$(basename "$file")" + if [ -f "$file" ]; then + basename=$(basename "$file") + ln -sf "$file" "adv_${basename}" + fi done - # Link documentation files - ln -sf "$SOURCE_DIR/README.md" README.md - ln -sf "$SOURCE_DIR/WORKFLOW_STANDARDS.md" WORKFLOW_STANDARDS.md - # Count workflows WORKFLOW_COUNT=$(ls -1 *.json 2>/dev/null | wc -l) - echo "Production workflows linked to ComfyUI (flattened structure)" + echo "Production workflows linked to ComfyUI user directory" echo " Total workflows: $WORKFLOW_COUNT" + echo " Location: /workspace/ComfyUI/user/default/workflows/" echo "" - echo " - 4 text-to-image workflows (FLUX, SDXL, SD3.5)" - echo " - 3 image-to-image workflows (IP-Adapter)" - echo " - 3 image-to-video workflows (CogVideoX, SVD)" - echo " - 4 text-to-music workflows (MusicGen)" - echo " - 3 upscaling workflows" - echo " - 3 advanced workflows (ControlNet, AnimateDiff, Batch)" + echo "Categories (by prefix):" + echo " - t2i_ : 4 text-to-image workflows (FLUX, SDXL, SD3.5)" + echo " - i2i_ : 3 image-to-image workflows (IP-Adapter)" + echo " - i2v_ : 3 image-to-video workflows (CogVideoX, SVD)" + echo " - t2m_ : 4 text-to-music workflows (MusicGen)" + echo " - upscale_: 3 upscaling workflows" + echo " - adv_ : 3 advanced workflows (ControlNet, AnimateDiff, Batch)" echo "" - echo "Access workflows at: /workspace/ComfyUI/workflows/" + echo "Workflows will appear in ComfyUI's workflow browser, sorted by category prefix" # # Service Management (Supervisor-based)