Releases: Chaoses-Ib/ComfyScript
v0.5.1
Docs
- Installation: Add Comfy-Cli and Modal example (#68, #69, @the-dream-machine)
- Models: Add example code to list all checkpoints (#65, #69)
Fixes
- Runtime: comfyui package not load comfyui-legacy nodes (all additional nodes) (#68)
v0.5.0: Previews, CivitAI nodes, ImageViewer and MetadataViewer
Note
ComfyScript is a Python frontend and library for ComfyUI. See README for details and examples.
New features
-
Runtime
-
Add node preview display and callbacks (#36) (experimental)
Example usage from @ambocclusion:
325685398-57d92290-eefb-49b2-80e8-ceefd76425c1.mp4
-
Show progress bar by tqdm instead of custom
print()
-
Virtual mode:
when_empty()
accepts callback without args (#48) -
Real mode: Add support for node cache (#34) (experimental)
-
Docs
- Add troubleshooting for type stubs not working (#44)
- Add retrieving images examples (#64, #36)
- Update
ComfyUIArgs
docs (#64)
-
-
Transpiler
-
Support converting workflow JSON to runnable scripts via CLI (#43)
Usage:
python -m comfy_script.transpile "tests\transpile\default.json" --runtime > script.py
-
Add settings for hook (#27, #38, #42)
settings.toml
:[transpile.hook] # When ComfyScript is installed as custom nodes, `SaveImage` and similar nodes will be hooked to automatically save the script as the image's metadata. The script will also be printed to the terminal. # To disable a feature, change its value to `false`. save_script = true print_script = true # Use workflows in API format instead of web UI format when possible. # Web UI format contains more information, but may also contain some UI-only virtual nodes (e.g. custom Reroute, PrimitiveNode, Note nodes) that cannot be properly transpiled. API format has better compatibility at the cost of less readable output. prefer_api_format = false
These settings can also be overriden by environment variables and Python code, see
settings.example.toml
for details.
-
-
Nodes: Add civitai_comfy_nodes to load checkpoints/loras from CivitAI
Examples:
model, clip, vae = CivitAICheckpointLoader('101055@128078') model, clip, vae = CivitAICheckpointLoader('https://civitai.com/models/101055?modelVersionId=128078') model, clip, vae = CivitAICheckpointLoader('https://civitai.com/models/101055/sd-xl?modelVersionId=128078') model, clip = CivitAILoraLoader(model, clip, '350450@391994', strength_clip=1, strength_model=1) model, clip = CivitAILoraLoader(model, clip, 'https://civitai.com/models/350450?modelVersionId=391994', strength_clip=1, strength_model=1) model, clip = CivitAILoraLoader(model, clip, 'https://civitai.com/models/350450/sdxl-lightning-lora-2step?modelVersionId=391994', strength_clip=1, strength_model=1)
-
UI
-
ipywidgets: Add ImageViewer (#51)
A simple image viewer that can display multiple images with optional titles.
-
Solara: Add MetadataViewer (#49)
A widget for viewing the metadata of an image generated by ComfyScript / ComfyUI / Stable Diffusion web UI. Workflow JSON files are supported too, including both the web UI format and the API format.
-
-
Docs
- Add installation troubleshooting (#41)
- Bump comfyui package tested version (#65)
Changes
-
Runtime: Virtual mode: Arguments of
queue.watch_display()
are changed (#36, #52)Before:
def watch_display(self, display_node: bool = True, display_task: bool = True): ... queue.watch_display(False, False)
Now:
def watch_display(self, all: bool | None = None, *, preview: bool | None = None, output: bool | None = None, task: bool | None = None): ... queue.watch_display(False) # or: queue.watch_display(preview=False, output=False, task=False)
Fixes
v0.5.0a5
v0.5.0a4
New features
-
Runtime: Show progress bar by tqdm instead of custom
print()
-
Nodes: Add civitai_comfy_nodes to load checkpoints/loras from CivitAI
Examples:
model, clip, vae = CivitAICheckpointLoader('101055@128078') model, clip, vae = CivitAICheckpointLoader('https://civitai.com/models/101055?modelVersionId=128078') model, clip, vae = CivitAICheckpointLoader('https://civitai.com/models/101055/sd-xl?modelVersionId=128078') model, clip = CivitAILoraLoader(model, clip, '350450@391994', strength_clip=1, strength_model=1) model, clip = CivitAILoraLoader(model, clip, 'https://civitai.com/models/350450?modelVersionId=391994', strength_clip=1, strength_model=1) model, clip = CivitAILoraLoader(model, clip, 'https://civitai.com/models/350450/sdxl-lightning-lora-2step?modelVersionId=391994', strength_clip=1, strength_model=1)
v0.5.0a3
v0.5.0a2
v0.5.0a1
v0.4.6
v0.4.5
Fixes
-
Runtime:
comfyui
package breaking changes (#33)Note that there are still other problems in
comfyui
: the built package doesn't include JSON configs needed by models (hiddenswitch/ComfyUI#6). A workaround is to use editable install:git clone https://github.com/hiddenswitch/ComfyUI.git && cd ComfyUI && pip install --no-build-isolation -e .
v0.4.4
New features
- Runtime: Virtual mode: Support custom
ClientSession
factory (#32)
Changes
- Client:
endpoint
andset_endpoint()
are removed (undocumented before)