Remove the seed input parameter and automatically resolve the seed value
from the first KSampler node in the workflow prompt. Supports following
link chains for connected seed inputs (Seed (rgthree), ImpactInt, etc).
- Date folder {yyyy-mm-dd} is always the direct parent of the file
- Prefix directories nest above the date folder
- Trailing slash means directory-only, no filename prefix
- No slash means filename prefix only, no subdirectory
- Middle slash: before=directory, after=filename prefix
- Filename: {name_part}{counter:05d}-{seed}.{ext} (no underscore)
- Restore path traversal safety check
When prefix ends with '/' or '\' (e.g. "comfy-txt2img/"), append
default filename "ComfyUI" so it's treated as a subdirectory path
rather than a bare filename.
- Fix WebP workflow embedding: serialize EXIF to bytes via .tobytes(),
use WAS-convention tags (0x010f=Make for prompt, 0x010e=Desc for workflow)
- Fix prefix path splitting: use folder_paths.get_save_image_path() for
consistent nested directory handling with built-in SaveImage
- Add .gitignore for Python project