feat: link workflows to ComfyUI user directory with category prefixes

Update workflows/link-comfyui to link workflow files to the correct ComfyUI user directory (/workspace/ComfyUI/user/default/workflows/) instead of the non-standard /workspace/ComfyUI/workflows/ location.

Add category prefixes to maintain organization in ComfyUI's flat workflow browser:
- t2i_: Text-to-Image workflows
- i2i_: Image-to-Image workflows
- i2v_: Image-to-Video workflows
- t2m_: Text-to-Music workflows
- upscale_: Upscaling workflows
- adv_: Advanced workflows

Changes:
- Target correct ComfyUI user workflows directory
- Add category prefixes to all workflow symlinks
- Clean up old symlinks from previous location
- Workflows will now appear in ComfyUI's workflow browser sorted by category

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-22 14:37:42 +01:00
parent 6daca7329a
commit d719bcdfcf

View File

@@ -518,65 +518,84 @@ scripts:
ln -sf /workspace/huggingface_cache/models--stabilityai--stable-video-diffusion-img2vid-xt stable-video-diffusion-img2vid-xt ln -sf /workspace/huggingface_cache/models--stabilityai--stable-video-diffusion-img2vid-xt stable-video-diffusion-img2vid-xt
echo "Models linked to ComfyUI" 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: | workflows/link-comfyui: |
mkdir -p /workspace/ComfyUI/workflows # Create ComfyUI user workflows directory
cd /workspace/ComfyUI/workflows mkdir -p /workspace/ComfyUI/user/default/workflows
cd /workspace/ComfyUI/user/default/workflows
# Remove old directory symlinks if they exist # Remove old symlinks from previous location
rm -f text-to-image image-to-image image-to-video text-to-music upscaling advanced templates 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" 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 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 done
# Image-to-Image workflows # Image-to-Image workflows (prefix: i2i_)
for file in "$SOURCE_DIR/image-to-image"/*.json; do 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 done
# Image-to-Video workflows # Image-to-Video workflows (prefix: i2v_)
for file in "$SOURCE_DIR/image-to-video"/*.json; do 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 done
# Text-to-Music workflows # Text-to-Music workflows (prefix: t2m_)
for file in "$SOURCE_DIR/text-to-music"/*.json; do 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 done
# Upscaling workflows # Upscaling workflows (prefix: upscale_)
for file in "$SOURCE_DIR/upscaling"/*.json; do 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 done
# Advanced workflows # Advanced workflows (prefix: adv_)
for file in "$SOURCE_DIR/advanced"/*.json; do 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 done
# Link documentation files
ln -sf "$SOURCE_DIR/README.md" README.md
ln -sf "$SOURCE_DIR/WORKFLOW_STANDARDS.md" WORKFLOW_STANDARDS.md
# Count workflows # Count workflows
WORKFLOW_COUNT=$(ls -1 *.json 2>/dev/null | wc -l) 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 " Total workflows: $WORKFLOW_COUNT"
echo " Location: /workspace/ComfyUI/user/default/workflows/"
echo "" echo ""
echo " - 4 text-to-image workflows (FLUX, SDXL, SD3.5)" echo "Categories (by prefix):"
echo " - 3 image-to-image workflows (IP-Adapter)" echo " - t2i_ : 4 text-to-image workflows (FLUX, SDXL, SD3.5)"
echo " - 3 image-to-video workflows (CogVideoX, SVD)" echo " - i2i_ : 3 image-to-image workflows (IP-Adapter)"
echo " - 4 text-to-music workflows (MusicGen)" echo " - i2v_ : 3 image-to-video workflows (CogVideoX, SVD)"
echo " - 3 upscaling workflows" echo " - t2m_ : 4 text-to-music workflows (MusicGen)"
echo " - 3 advanced workflows (ControlNet, AnimateDiff, Batch)" echo " - upscale_: 3 upscaling workflows"
echo " - adv_ : 3 advanced workflows (ControlNet, AnimateDiff, Batch)"
echo "" 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) # Service Management (Supervisor-based)