mirror of
https://github.com/Comfy-Org/ComfyUI-Manager.git
synced 2026-01-13 23:50:54 +08:00
Compare commits
No commits in common. "main" and "3.39" have entirely different histories.
0
.cache/.cache_directory
Normal file
0
.cache/.cache_directory
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
22568
github-stats-cache.json
Normal file
22568
github-stats-cache.json
Normal file
File diff suppressed because it is too large
Load Diff
11771
github-stats.json
11771
github-stats.json
File diff suppressed because it is too large
Load Diff
@ -44,7 +44,7 @@ import manager_migration
|
||||
from node_package import InstalledNodePackage
|
||||
|
||||
|
||||
version_code = [3, 39, 2]
|
||||
version_code = [3, 39]
|
||||
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
|
||||
|
||||
|
||||
@ -1701,11 +1701,6 @@ def write_config():
|
||||
'db_mode': get_config()['db_mode'],
|
||||
}
|
||||
|
||||
# Sanitize all string values to prevent CRLF injection attacks
|
||||
for key, value in config['default'].items():
|
||||
if isinstance(value, str):
|
||||
config['default'][key] = value.replace('\r', '').replace('\n', '').replace('\x00', '')
|
||||
|
||||
directory = os.path.dirname(manager_config_path)
|
||||
if not os.path.exists(directory):
|
||||
os.makedirs(directory)
|
||||
|
||||
@ -997,15 +997,6 @@ async def get_snapshot_list(request):
|
||||
return web.json_response({'items': items}, content_type='application/json')
|
||||
|
||||
|
||||
def get_safe_snapshot_path(target):
|
||||
"""
|
||||
Safely construct a snapshot file path, preventing path traversal attacks.
|
||||
"""
|
||||
if '/' in target or '\\' in target or '..' in target or '\x00' in target:
|
||||
return None
|
||||
return os.path.join(core.manager_snapshot_path, f"{target}.json")
|
||||
|
||||
|
||||
@routes.get("/snapshot/remove")
|
||||
async def remove_snapshot(request):
|
||||
if not is_allowed_security_level('middle'):
|
||||
@ -1014,12 +1005,8 @@ async def remove_snapshot(request):
|
||||
|
||||
try:
|
||||
target = request.rel_url.query["target"]
|
||||
path = get_safe_snapshot_path(target)
|
||||
|
||||
if path is None:
|
||||
logging.error(f"[ComfyUI-Manager] Invalid snapshot target: {target}")
|
||||
return web.Response(text="Invalid snapshot target", status=400)
|
||||
|
||||
path = os.path.join(core.manager_snapshot_path, f"{target}.json")
|
||||
if os.path.exists(path):
|
||||
os.remove(path)
|
||||
|
||||
@ -1036,12 +1023,8 @@ async def restore_snapshot(request):
|
||||
|
||||
try:
|
||||
target = request.rel_url.query["target"]
|
||||
path = get_safe_snapshot_path(target)
|
||||
|
||||
if path is None:
|
||||
logging.error(f"[ComfyUI-Manager] Invalid snapshot target: {target}")
|
||||
return web.Response(text="Invalid snapshot target", status=400)
|
||||
|
||||
path = os.path.join(core.manager_snapshot_path, f"{target}.json")
|
||||
if os.path.exists(path):
|
||||
if not os.path.exists(core.manager_startup_script_path):
|
||||
os.makedirs(core.manager_startup_script_path)
|
||||
|
||||
198
model-list.json
198
model-list.json
@ -5180,204 +5180,6 @@
|
||||
"size": "25.75GB"
|
||||
},
|
||||
|
||||
{
|
||||
"name": "LTX-2 19B Dev FP8",
|
||||
"type": "checkpoint",
|
||||
"base": "LTX-2",
|
||||
"save_path": "checkpoints/LTX-2",
|
||||
"description": "LTX-2 19B Dev FP8 model.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-19b-dev-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-19b-dev-fp8.safetensors",
|
||||
"size": "27.1GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B Distilled FP8",
|
||||
"type": "checkpoint",
|
||||
"base": "LTX-2",
|
||||
"save_path": "checkpoints/LTX-2",
|
||||
"description": "LTX-2 19B Distilled FP8 model.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-19b-distilled-fp8.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-19b-distilled-fp8.safetensors",
|
||||
"size": "27.1GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B Dev",
|
||||
"type": "checkpoint",
|
||||
"base": "LTX-2",
|
||||
"save_path": "checkpoints/LTX-2",
|
||||
"description": "LTX-2 19B Dev model.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-19b-dev.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-19b-dev.safetensors",
|
||||
"size": "43.3GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B Distilled",
|
||||
"type": "checkpoint",
|
||||
"base": "LTX-2",
|
||||
"save_path": "checkpoints/LTX-2",
|
||||
"description": "LTX-2 19B Distilled model.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-19b-distilled.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-19b-distilled.safetensors",
|
||||
"size": "43.3GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 Spatial Upscaler",
|
||||
"type": "upscale",
|
||||
"base": "upscale",
|
||||
"save_path": "default",
|
||||
"description": "Spatial upscaler model for LTX-2. This model enhances the spatial resolution of generated videos.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-spatial-upscaler-x2-1.0.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-spatial-upscaler-x2-1.0.safetensors",
|
||||
"size": "996MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 Temporal Upscaler",
|
||||
"type": "upscale",
|
||||
"base": "upscale",
|
||||
"save_path": "default",
|
||||
"description": "Temporal upscaler model for LTX-2. This model enhances the temporal resolution of generated videos.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-temporal-upscaler-x2-1.0.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-temporal-upscaler-x2-1.0.safetensors",
|
||||
"size": "262MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B Distilled LoRA",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras",
|
||||
"description": "A LoRA adapter that transforms the standard LTX-2 19B model into a distilled version when loaded.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2",
|
||||
"filename": "ltx-2-19b-distilled-lora-384.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2/resolve/main/ltx-2-19b-distilled-lora-384.safetensors",
|
||||
"size": "7.67GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B IC LoRA - Canny Control",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for canny control on LTX-2 19B IC model. Intended for advanced edge control and guided generation.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Canny-Control",
|
||||
"filename": "ltx-2-19b-ic-lora-canny-control.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Canny-Control/resolve/main/ltx-2-19b-ic-lora-canny-control.safetensors",
|
||||
"size": "654MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B IC LoRA - Depth Control",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for depth control on LTX-2 19B IC model. Adds depth-aware generation guidance.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Depth-Control",
|
||||
"filename": "ltx-2-19b-ic-lora-depth-control.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Depth-Control/resolve/main/ltx-2-19b-ic-lora-depth-control.safetensors",
|
||||
"size": "654MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B IC LoRA - Detailer",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA detailer for LTX-2 19B IC. Improves fine details and sharpness in generated outputs.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Detailer",
|
||||
"filename": "ltx-2-19b-ic-lora-detailer.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Detailer/resolve/main/ltx-2-19b-ic-lora-detailer.safetensors",
|
||||
"size": "2.62GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B IC LoRA - Pose Control",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for pose control on LTX-2 19B IC model. Enables pose-guided image/video generation.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Pose-Control",
|
||||
"filename": "ltx-2-19b-ic-lora-pose-control.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-IC-LoRA-Pose-Control/resolve/main/ltx-2-19b-ic-lora-pose-control.safetensors",
|
||||
"size": "654MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Dolly In",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for dolly-in camera control with LTX-2 19B. Simulates camera moving closer to subject.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-In",
|
||||
"filename": "ltx-2-19b-lora-camera-control-dolly-in.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-In/resolve/main/ltx-2-19b-lora-camera-control-dolly-in.safetensors",
|
||||
"size": "327MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Dolly Left",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for dolly-left camera control with LTX-2 19B. Simulates camera moving left.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Left",
|
||||
"filename": "ltx-2-19b-lora-camera-control-dolly-left.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Left/resolve/main/ltx-2-19b-lora-camera-control-dolly-left.safetensors",
|
||||
"size": "327MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Dolly Out",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for dolly-out camera control with LTX-2 19B. Simulates camera moving away from subject.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Out",
|
||||
"filename": "ltx-2-19b-lora-camera-control-dolly-out.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Out/resolve/main/ltx-2-19b-lora-camera-control-dolly-out.safetensors",
|
||||
"size": "327MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Dolly Right",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for dolly-right camera control with LTX-2 19B. Simulates camera moving right.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Right",
|
||||
"filename": "ltx-2-19b-lora-camera-control-dolly-right.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Dolly-Right/resolve/main/ltx-2-19b-lora-camera-control-dolly-right.safetensors",
|
||||
"size": "327MB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Jib Down",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for jib-down camera control with LTX-2 19B. Simulates vertical camera movement downwards.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Jib-Down",
|
||||
"filename": "ltx-2-19b-lora-camera-control-jib-down.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Jib-Down/resolve/main/ltx-2-19b-lora-camera-control-jib-down.safetensors",
|
||||
"size": "2.21GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Jib Up",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for jib-up camera control with LTX-2 19B. Simulates vertical camera movement upwards.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Jib-Up",
|
||||
"filename": "ltx-2-19b-lora-camera-control-jib-up.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Jib-Up/resolve/main/ltx-2-19b-lora-camera-control-jib-up.safetensors",
|
||||
"size": "2.21GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-2 19B LoRA - Camera Control Static",
|
||||
"type": "lora",
|
||||
"base": "LTX-2",
|
||||
"save_path": "loras/LTX-2",
|
||||
"description": "LoRA for static camera control with LTX-2 19B. Simulates stationary/static camera view.",
|
||||
"reference": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Static",
|
||||
"filename": "ltx-2-19b-lora-camera-control-static.safetensors",
|
||||
"url": "https://huggingface.co/Lightricks/LTX-2-19b-LoRA-Camera-Control-Static/resolve/main/ltx-2-19b-lora-camera-control-static.safetensors",
|
||||
"size": "2.21GB"
|
||||
},
|
||||
{
|
||||
"name": "LTX-Video Spatial Upscaler v0.9.7",
|
||||
"type": "upscale",
|
||||
|
||||
@ -1,666 +1,5 @@
|
||||
{
|
||||
"custom_nodes": [
|
||||
{
|
||||
"author": "CarlMarkswx",
|
||||
"title": "ComfyUI-Mirror-Download [UNSAFE]",
|
||||
"reference": "https://github.com/CarlMarkswx/ComfyUI-Mirror-Download",
|
||||
"files": [
|
||||
"https://github.com/CarlMarkswx/ComfyUI-Mirror-Download"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Plugin that adds a mirror download button for accessing Hugging Face models via Chinese mirror, with automatic detection and progress tracking. (Description by CC)[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "nekotxt",
|
||||
"title": "ComfyUI-NTX-support-nodes [WIP]",
|
||||
"reference": "https://github.com/nekotxt/ComfyUI-NTX-support-nodes",
|
||||
"files": [
|
||||
"https://github.com/nekotxt/ComfyUI-NTX-support-nodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Utility nodes to support the creation of pipes\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "killshotttttt",
|
||||
"title": "ComfyUI-killshotttttt [WIP]",
|
||||
"reference": "https://github.com/killshotttttt/ComfyUI-killshotttttt",
|
||||
"files": [
|
||||
"https://github.com/killshotttttt/ComfyUI-killshotttttt"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A custom node for ComfyUI that integrates with the Meshy AI API for Image-to-Image transformations using nano-banana models.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "bozkut",
|
||||
"title": "ComfyUI-Prompt-Expander [NAME CONFLICT]",
|
||||
"reference": "https://github.com/bozkut/ComfyUI-Prompt-Expander",
|
||||
"files": [
|
||||
"https://github.com/bozkut/ComfyUI-Prompt-Expander"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "An LLM-powered prompt expansion node for ComfyUI. Transform simple prompts into detailed, high-quality image generation prompts."
|
||||
},
|
||||
{
|
||||
"author": "my-xz-org",
|
||||
"title": "comfyui_xz_nodes",
|
||||
"reference": "https://github.com/my-xz-org/comfyui_xz_nodes",
|
||||
"files": [
|
||||
"https://github.com/my-xz-org/comfyui_xz_nodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: XZImageToText"
|
||||
},
|
||||
{
|
||||
"author": "tackcrypto1031",
|
||||
"title": "[WIP] tk_comfyui_SimpleSize",
|
||||
"reference": "https://github.com/tackcrypto1031/tk_comfyui_SimpleSize",
|
||||
"files": [
|
||||
"https://github.com/tackcrypto1031/tk_comfyui_SimpleSize"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A professional and intelligent aspect ratio and resolution selector for ComfyUI.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "hashms0a",
|
||||
"title": "ComfyUI-Qwen-Multi-Angle-Camera-Nodes [WIP]",
|
||||
"reference": "https://github.com/hashms0a/ComfyUI-Qwen-Multi-Angle-Camera-Nodes",
|
||||
"files": [
|
||||
"https://github.com/hashms0a/ComfyUI-Qwen-Multi-Angle-Camera-Nodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Comprehensive custom nodes for controlling camera angles with Qwen-Image-Edit-2511-Multiple-Angles-LoRA, supporting all 96 camera positions with basic/advanced selection, orbital animation, elevation sweep, and pre-defined animation paths.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "jceme",
|
||||
"title": "Comfy_Extensions [WIP]",
|
||||
"reference": "https://github.com/jceme/Comfy_Extensions",
|
||||
"files": [
|
||||
"https://github.com/jceme/Comfy_Extensions"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI extension pack offering image dimension handling, aspect ratio presets, FPS utilities, inpainting, and prompt customization. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "saltchicken",
|
||||
"title": "ComfyUI-Interactive-Cropper",
|
||||
"reference": "https://github.com/saltchicken/ComfyUI-Interactive-Cropper",
|
||||
"files": [
|
||||
"https://github.com/saltchicken/ComfyUI-Interactive-Cropper"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Interactive image cropping node with visual interface. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "shenymce",
|
||||
"title": "ComfyUI-JsonViewer [WIP]",
|
||||
"reference": "https://github.com/shenymce/ComfyUI-JsonViewer",
|
||||
"files": [
|
||||
"https://github.com/shenymce/ComfyUI-JsonViewer"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "OpenPose JSON data visualization for displaying pose keypoint data exported from ComfyUI workflow nodes. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "qimi-dev",
|
||||
"title": "ComfyUI-Qimi-Tiler",
|
||||
"reference": "https://github.com/qimi-dev/ComfyUI-Qimi-Tiler",
|
||||
"files": [
|
||||
"https://github.com/qimi-dev/ComfyUI-Qimi-Tiler"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Image tiling utility nodes for splitting and combining image tiles in ComfyUI. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "maTORIx",
|
||||
"title": "ComfyUI-KeypointsToImage",
|
||||
"reference": "https://github.com/maTORIx/ComfyUI-KeypointsToImage",
|
||||
"files": [
|
||||
"https://github.com/maTORIx/ComfyUI-KeypointsToImage"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Node for converting keypoints to images. (Description by CC)"
|
||||
},
|
||||
|
||||
{
|
||||
"author": "IO-AtelierTech",
|
||||
"title": "comfyui-video-utils [NAME CONFLICT]",
|
||||
"reference": "https://github.com/IO-AtelierTech/comfyui-video-utils",
|
||||
"files": [
|
||||
"https://github.com/IO-AtelierTech/comfyui-video-utils"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Provides utility nodes for video operations, particularly for FFmpeg integration and workflow connectivity."
|
||||
},
|
||||
{
|
||||
"author": "PozzettiAndrea",
|
||||
"title": "ComfyUI-TRELLIS2 [NAME CONFLICT]",
|
||||
"reference": "https://github.com/PozzettiAndrea/ComfyUI-TRELLIS2",
|
||||
"files": [
|
||||
"https://github.com/PozzettiAndrea/ComfyUI-TRELLIS2"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom nodes for TRELLIS.2 - Microsoft's image-to-3D generation model for creating high-quality 3D meshes with PBR materials."
|
||||
},
|
||||
{
|
||||
"author": "colorAi",
|
||||
"title": "comfyui-prompt-manager [NAME CONFLICT]",
|
||||
"reference": "https://github.com/colorAi/comfyui-prompt-manager",
|
||||
"files": [
|
||||
"https://github.com/colorAi/comfyui-prompt-manager"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A modern, powerful, and easy-to-use Prompt Manager extension for ComfyUI."
|
||||
},
|
||||
{
|
||||
"author": "Yukinoshita-Yukinoe",
|
||||
"title": "ComfyUI-SenseVoice [NAME CONFLICT]",
|
||||
"reference": "https://github.com/Yukinoshita-Yukinoe/ComfyUI-SenseVoice",
|
||||
"files": [
|
||||
"https://github.com/Yukinoshita-Yukinoe/ComfyUI-SenseVoice"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Audio processing node providing SenseVoice speech recognition, audio splitting, and SRT generation for ComfyUI. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "satyam-fp",
|
||||
"title": "ComfyUI-GeminiImage [NAME CONFLICT]",
|
||||
"reference": "https://github.com/satyam-fp/ComfyUI-GeminiImage",
|
||||
"files": [
|
||||
"https://github.com/satyam-fp/ComfyUI-GeminiImage"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A custom ComfyUI node package that integrates Google Gemini API for AI-powered image generation and enhancement."
|
||||
},
|
||||
{
|
||||
"author": "ai-joe-git",
|
||||
"title": "ComfyUI-Chatterbox [NAME CONFLICT]",
|
||||
"reference": "https://github.com/ai-joe-git/ComfyUI-Chatterbox",
|
||||
"files": [
|
||||
"https://github.com/ai-joe-git/ComfyUI-Chatterbox"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Chatterbox TTS integration for ComfyUI - Voice cloning with 3 model variants."
|
||||
},
|
||||
{
|
||||
"author": "Sergey004",
|
||||
"title": "ComfyUI-Telegram-Sender [UNSAFE/NAME CONFLICT]",
|
||||
"reference": "https://github.com/Sergey004/ComfyUI-Telegram-Sender",
|
||||
"files": [
|
||||
"https://github.com/Sergey004/ComfyUI-Telegram-Sender"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Does the same thing as comfyui_image_metadata_extension but is slightly more modern, sending the output to Telegram and downloading unnecessary metadata at the same time.[w/This nodepack contains a path traversal vulnerability.]"
|
||||
},
|
||||
{
|
||||
"author": "cedarconnor",
|
||||
"title": "ComfyUI-DAP [UNSAFE/NAME CONFLICT]",
|
||||
"reference": "https://github.com/cedarconnor/ComfyUI-DAP",
|
||||
"files": [
|
||||
"https://github.com/cedarconnor/ComfyUI-DAP"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI nodes for DAP (Depth Any Panoramas) - panoramic depth estimation[w/This nodepack contains a path traversal vulnerability.]"
|
||||
},
|
||||
{
|
||||
"author": "AhiruNeko",
|
||||
"title": "ComfyUI-MiniTools [UNSAFE/NAME CONFLICT]",
|
||||
"reference": "https://github.com/AhiruNeko/ComfyUI-MiniTools",
|
||||
"files": [
|
||||
"https://github.com/AhiruNeko/ComfyUI-MiniTools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A ComfyUI plugins[w/This nodepack contains a path traversal vulnerability.]"
|
||||
},
|
||||
{
|
||||
"author": "861289009",
|
||||
"title": "comfyui_video_node [WIP]",
|
||||
"reference": "https://github.com/861289009/comfyui_video_node",
|
||||
"files": [
|
||||
"https://github.com/861289009/comfyui_video_node"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A ComfyUI node for creating smooth fade transitions between two video segments using hex color effects. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "jluo-github",
|
||||
"title": "comfyui-easy-resize [WIP]",
|
||||
"reference": "https://github.com/jluo-github/comfyui-easy-resize",
|
||||
"files": [
|
||||
"https://github.com/jluo-github/comfyui-easy-resize"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom nodes for quick image size selection with curated presets\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "w3rc",
|
||||
"title": "lpips-similarity-comfyui",
|
||||
"reference": "https://github.com/w3rc/lpips-similarity-comfyui",
|
||||
"files": [
|
||||
"https://github.com/w3rc/lpips-similarity-comfyui"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: GetSimilarity, LPIPSSimilarity"
|
||||
},
|
||||
{
|
||||
"author": "StevenBaby",
|
||||
"title": "comfyui-tools",
|
||||
"reference": "https://github.com/StevenBaby/comfyui-tools",
|
||||
"files": [
|
||||
"https://github.com/StevenBaby/comfyui-tools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "IntParameterNode: A Node contain 4 int parameters to quick switch input to other nodes."
|
||||
},
|
||||
{
|
||||
"author": "zhu798542746",
|
||||
"title": "comfyui_model [UNSAFE]",
|
||||
"reference": "https://github.com/zhu798542746/comfyui_model",
|
||||
"files": [
|
||||
"https://github.com/zhu798542746/comfyui_model"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A powerful tool for managing and exporting ComfyUI plugins and models with an elegant side panel interface. (Description by CC) [w/This node pack has a vulnerability that allows it to access (or exfiltrate) data from custom nodes installed remotely.]"
|
||||
},
|
||||
{
|
||||
"author": "simonri",
|
||||
"title": "ComfyUI-SimonNodes",
|
||||
"reference": "https://github.com/simonri/ComfyUI-SimonNodes",
|
||||
"files": [
|
||||
"https://github.com/simonri/ComfyUI-SimonNodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Provides seed upscaling and image cropping utilities for ComfyUI workflows. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "j-pyxal",
|
||||
"title": "ComfyUI-Lattice-Manim [WIP]",
|
||||
"reference": "https://github.com/j-pyxal/ComfyUI-Lattice-Manim",
|
||||
"files": [
|
||||
"https://github.com/j-pyxal/ComfyUI-Lattice-Manim"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A ComfyUI extension integrating Manim for animation rendering.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "kanttouchthis",
|
||||
"title": "ComfyUI-SDNQ [NAME CONFLICT]",
|
||||
"reference": "https://github.com/kanttouchthis/ComfyUI-SDNQ",
|
||||
"files": [
|
||||
"https://github.com/kanttouchthis/ComfyUI-SDNQ"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "SDNQ support for ComfyUI."
|
||||
},
|
||||
{
|
||||
"author": "SparknightLLC",
|
||||
"title": "ComfyUI-GraphConstantFolder",
|
||||
"reference": "https://github.com/SparknightLLC/ComfyUI-GraphConstantFolder",
|
||||
"files": [
|
||||
"https://github.com/SparknightLLC/ComfyUI-GraphConstantFolder"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Improves performance of large workflows by rewriting the submitted prompt graph before validation to constant-fold switch/selector nodes and optionally prune now-unreachable branches."
|
||||
},
|
||||
{
|
||||
"author": "bryanlholland1",
|
||||
"title": "comfyui-app-bridge [WIP]",
|
||||
"reference": "https://github.com/bryanlholland1/comfyui-app-bridge",
|
||||
"files": [
|
||||
"https://github.com/bryanlholland1/comfyui-app-bridge"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom node for sending images to the companion iOS/macOS/visionOS app\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "HalfADog",
|
||||
"title": "ComfyUI-Mask2JSON",
|
||||
"reference": "https://github.com/HalfADog/ComfyUI-Mask2JSON",
|
||||
"files": [
|
||||
"https://github.com/HalfADog/ComfyUI-Mask2JSON"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI nodes for converting masks to contour JSON format with visualization capabilities. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "flywhale-666",
|
||||
"title": "ComfyUI_pixel_snapping [WIP]",
|
||||
"reference": "https://github.com/flywhale-666/ComfyUI_pixel_snapping",
|
||||
"files": [
|
||||
"https://github.com/flywhale-666/ComfyUI_pixel_snapping"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "SIFT-based image alignment, intelligent mask cropping and restoration for ComfyUI\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "fangg2000",
|
||||
"title": "comfyui_fgtools [WIP]",
|
||||
"reference": "https://github.com/fangg2000/comfyui_fgtools",
|
||||
"files": [
|
||||
"https://github.com/fangg2000/comfyui_fgtools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Personal utility tools for ComfyUI. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "HailXD",
|
||||
"title": "comfyui-random-artist",
|
||||
"reference": "https://github.com/HailXD/comfyui-random-artist",
|
||||
"files": [
|
||||
"https://github.com/HailXD/comfyui-random-artist"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Generates random artist styles for ComfyUI workflows. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "wandaijin",
|
||||
"title": "ComfyUI-PaddleOCR [NAME CONFLICT]",
|
||||
"reference": "https://github.com/wandaijin/ComfyUI-PaddleOCR",
|
||||
"files": [
|
||||
"https://github.com/wandaijin/ComfyUI-PaddleOCR"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A collection of custom nodes for ComfyUI"
|
||||
},
|
||||
{
|
||||
"author": "supaidauen",
|
||||
"title": "ComfyUI-supaidauen [WIP]",
|
||||
"reference": "https://github.com/supaidauen/ComfyUI-supaidauen",
|
||||
"files": [
|
||||
"https://github.com/supaidauen/ComfyUI-supaidauen"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Collection of custom ComfyUI nodes including VRAM management, image processing, latent manipulation, character I/O, and advanced sampling utilities. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "huhu-tiger",
|
||||
"title": "ComfyUI-RemoteResource",
|
||||
"reference": "https://github.com/huhu-tiger/ComfyUI-RemoteResource",
|
||||
"files": [
|
||||
"https://github.com/huhu-tiger/ComfyUI-RemoteResource"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI node for loading images from remote sources. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "nomadop",
|
||||
"title": "ComfyUI-Video-Matting [NAME CONFLICT]",
|
||||
"reference": "https://github.com/nomadop/ComfyUI-Video-Matting",
|
||||
"files": [
|
||||
"https://github.com/nomadop/ComfyUI-Video-Matting"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Modular video matting nodes supporting multiple models (RVM, MODNet, U2Net, RMBG-2.0) and video object segmentation with Cutie and edge refinement via ViTMatte."
|
||||
},
|
||||
{
|
||||
"author": "agavesunset",
|
||||
"title": "Comfyui_SiliconFlow_AgaveSunset",
|
||||
"reference": "https://github.com/agavesunset/Comfyui_SiliconFlow_AgaveSunset",
|
||||
"files": [
|
||||
"https://github.com/agavesunset/Comfyui_SiliconFlow_AgaveSunset"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: SiliconFlowLoader_AS, SiliconFlowSampler_AS"
|
||||
},
|
||||
{
|
||||
"author": "IIEleven11",
|
||||
"title": "[WIP] ComfyUI-Dataset_Maker",
|
||||
"reference": "https://github.com/IIEleven11/ComfyUI-Dataset_Maker",
|
||||
"files": [
|
||||
"https://github.com/IIEleven11/ComfyUI-Dataset_Maker"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Custom node pack that automates dataset creation by generating images for concept lists, each with a specific LoRA. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "bhaveek424",
|
||||
"title": "ComfyUI-HMNodes",
|
||||
"reference": "https://github.com/bhaveek424/ComfyUI-HMNodes",
|
||||
"files": [
|
||||
"https://github.com/bhaveek424/ComfyUI-HMNodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI nodes for audio processing, image enhancement, and AI-powered prompting including FFT analysis, automatic white balance, lens effects, and realism optimization. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "raohammad",
|
||||
"title": "ComfyUI-VTUtilNodes [WIP]",
|
||||
"reference": "https://github.com/raohammad/ComfyUI-VTUtilNodes",
|
||||
"files": [
|
||||
"https://github.com/raohammad/ComfyUI-VTUtilNodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A collection of utility custom nodes for ComfyUI.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "yamanacn",
|
||||
"title": "ComfyUI-ImageMask-Random-Sync-Picker",
|
||||
"reference": "https://github.com/yamanacn/ComfyUI-ImageMask-Random-Sync-Picker",
|
||||
"files": [
|
||||
"https://github.com/yamanacn/ComfyUI-ImageMask-Random-Sync-Picker"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Node for randomly selecting and synchronizing image masks with selectable options. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "tdrminglin",
|
||||
"title": "ComfyUI_SceneSplitter",
|
||||
"reference": "https://github.com/tdrminglin/ComfyUI_SceneSplitter",
|
||||
"files": [
|
||||
"https://github.com/tdrminglin/ComfyUI_SceneSplitter"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Scene detection and splitting nodes for ComfyUI enabling frame-level scene detection and start frame tracking. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "starsFriday",
|
||||
"title": "ComfyUI-KLingAI-OmniVideo [WIP]",
|
||||
"reference": "https://github.com/starsFriday/ComfyUI-KLingAI-OmniVideo",
|
||||
"files": [
|
||||
"https://github.com/starsFriday/ComfyUI-KLingAI-OmniVideo"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Five API nodes for KLingAI's OmniVideo (O1) usage\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "Hifunyo",
|
||||
"title": "comfyui_google_ai",
|
||||
"reference": "https://github.com/Hifunyo/comfyui_google_ai",
|
||||
"files": [
|
||||
"https://github.com/Hifunyo/comfyui_google_ai"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI integration node for Google AI image generation capabilities. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "nschpy",
|
||||
"title": "ComfyUI_MovisAdapter [UNSAFE]",
|
||||
"reference": "https://github.com/nschpy/ComfyUI_MovisAdapter",
|
||||
"files": [
|
||||
"https://github.com/nschpy/ComfyUI_MovisAdapter"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A collection of custom nodes for ComfyUI[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "devzeroLL",
|
||||
"title": "comfyui-lxj-Node",
|
||||
"reference": "https://github.com/devzeroLL/comfyui-lxj-Node",
|
||||
"files": [
|
||||
"https://github.com/devzeroLL/comfyui-lxj-Node"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: lxj_ImageBatch14, lxj_TextBatch14"
|
||||
},
|
||||
{
|
||||
"author": "hgh086",
|
||||
"title": "Comfyui-HghImage",
|
||||
"reference": "https://github.com/hgh086/Comfyui-HghImage",
|
||||
"files": [
|
||||
"https://github.com/hgh086/Comfyui-HghImage"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom node for image comparison functionality. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "Ginolazy",
|
||||
"title": "ComfyUI-FluxKontextImageCompensate [WIP]",
|
||||
"reference": "https://github.com/Ginolazy/ComfyUI-FluxKontextImageCompensate",
|
||||
"files": [
|
||||
"https://github.com/Ginolazy/ComfyUI-FluxKontextImageCompensate"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A focused ComfyUI plugin to handle the vertical stretching issue introduced by the Flux Kontext model.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "IO-AtelierTech",
|
||||
"title": "comfyui-genai-connectors [WIP]",
|
||||
"reference": "https://github.com/IO-AtelierTech/comfyui-genai-connectors",
|
||||
"files": [
|
||||
"https://github.com/IO-AtelierTech/comfyui-genai-connectors"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "The ComfyUI-fal-Connector is a tool designed to provide an integration between ComfyUI and fal. This extension allows users to execute their ComfyUI workflows directly on [a/fal.ai](https://fal.ai/). This enables users to leverage the computational power and resources provided by fal.ai for running their ComfyUI workflows.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "PozzettiAndrea",
|
||||
"title": "ComfyUI-MVDUST3R [UNSAFE]",
|
||||
"reference": "https://github.com/PozzettiAndrea/ComfyUI-MVDUST3R",
|
||||
"files": [
|
||||
"https://github.com/PozzettiAndrea/ComfyUI-MVDUST3R"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI nodes for MVDUST3R multi-view 3D reconstruction[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "ProjectAtlantis-dev",
|
||||
"title": "comfyui-atlantis-json [UNSAFE]",
|
||||
"reference": "https://github.com/ProjectAtlantis-dev/comfyui-atlantis-json",
|
||||
"files": [
|
||||
"https://github.com/ProjectAtlantis-dev/comfyui-atlantis-json"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Custom ComfyUI nodes for JSON processing and transcription workflows, including text-to-JSON conversion, SRT subtitle parsing, and file saving. (Description by CC)[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "ShammiG",
|
||||
"title": "ComfyUI_Text_Tools_SG [UNSAFE]",
|
||||
"reference": "https://github.com/ShammiG/ComfyUI_Text_Tools_SG",
|
||||
"files": [
|
||||
"https://github.com/ShammiG/ComfyUI_Text_Tools_SG"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Text Editor node with Markdown editing plus quick shortcuts, Text Viewer node, with extra features plus Text Merge, Text Save and Load Text from anywhere nodes.[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "Smyshnikof",
|
||||
"title": "ComfyUI-PresetDownloadManager [UNSAFE]",
|
||||
"reference": "https://github.com/Smyshnikof/ComfyUI-PresetDownloadManager",
|
||||
"files": [
|
||||
"https://github.com/Smyshnikof/ComfyUI-PresetDownloadManager"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A custom ComfyUI node for managing and downloading models from HuggingFace with preset support[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "gulajawalegit",
|
||||
"title": "ComfyUI-Telegram-Sender [UNSAFE]",
|
||||
"reference": "https://github.com/gulajawalegit/ComfyUI-Telegram-Sender",
|
||||
"files": [
|
||||
"https://github.com/gulajawalegit/ComfyUI-Telegram-Sender"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom node for sending generated videos to Telegram, enabling direct output sharing to messaging platforms. (Description by CC)[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "Laolilzp",
|
||||
"title": "Laoli3D [UNSAFE]",
|
||||
"reference": "https://github.com/Laolilzp/Laoli3D",
|
||||
"files": [
|
||||
"https://github.com/Laolilzp/Laoli3D"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI 3D pose editor enabling visual character manipulation and ControlNet image generation for precise AI figure control without prompt description. (Description by CC)[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "Goldlionren",
|
||||
"title": "ComfyUI_Bridge_fabric [UNSAFE]",
|
||||
"reference": "https://github.com/Goldlionren/ComfyUI_Bridge_fabric",
|
||||
"files": [
|
||||
"https://github.com/Goldlionren/ComfyUI_Bridge_fabric"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "AI Compute Fabric bridge for ComfyUI enabling distributed CLIP, VAE, and ControlNet inference across local and remote machines. (Description by CC)[w/This nodepack contains a node that has a vulnerability allowing write to arbitrary file paths.]"
|
||||
},
|
||||
{
|
||||
"author": "CypherNaught-0x",
|
||||
"title": "ComfyUI-StarVector [WIP]",
|
||||
"reference": "https://github.com/CypherNaught-0x/ComfyUI-StarVector",
|
||||
"files": [
|
||||
"https://github.com/CypherNaught-0x/ComfyUI-StarVector"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI custom nodes for SVG generation using StarVector models\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "Clivey1234",
|
||||
"title": "ComfyUI_FBX_Import [UNSAFE]",
|
||||
"reference": "https://github.com/Clivey1234/ComfyUI_FBX_Import",
|
||||
"files": [
|
||||
"https://github.com/Clivey1234/ComfyUI_FBX_Import"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Convert FBX animations into ControlNet OpenPose images for driving AI video generation with motion from any animation source. (Description by CC)[w/This nodepack has a vulnerability that allows arbitrary code execution remotely.]"
|
||||
},
|
||||
{
|
||||
"author": "TobiasGlaubach",
|
||||
"title": "ComfyUI-TG_PyCode [UNSAFE]",
|
||||
"reference": "https://github.com/TobiasGlaubach/ComfyUI-TG_PyCode",
|
||||
"files": [
|
||||
"https://github.com/TobiasGlaubach/ComfyUI-TG_PyCode"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI node library with an editor and nodes to run Python code within ComfyUI workflows.[w/This nodepack has a vulnerability that allows arbitrary code execution remotely.]"
|
||||
},
|
||||
{
|
||||
"author": "jchiotaka",
|
||||
"title": "ComfyUI-ClarityAI-Upscaler",
|
||||
"reference": "https://github.com/jchiotaka/ComfyUI-ClarityAI-Upscaler",
|
||||
"files": [
|
||||
"https://github.com/jchiotaka/ComfyUI-ClarityAI-Upscaler"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI upscaler nodes including ClarityCreativeUpscaler, ClarityCrystalUpscaler, and ClarityFluxUpscaler. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "tpc2233",
|
||||
"title": "ComfyUI-TP-IMtalker [WIP]",
|
||||
"reference": "https://github.com/tpc2233/ComfyUI-TP-IMtalker",
|
||||
"files": [
|
||||
"https://github.com/tpc2233/ComfyUI-TP-IMtalker"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Comfy UI nodes for IMtalker to run native weights.)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "yuyu0218yu",
|
||||
"title": "comfyui-NXCM-tool [UNSAFE]",
|
||||
"reference": "https://github.com/yuyu0218yu/comfyui-NXCM-tool",
|
||||
"files": [
|
||||
"https://github.com/yuyu0218yu/comfyui-NXCM-tool"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Next-generation creative media encryption toolkit for ComfyUI providing image and video encryption with AES-256-CTR + HMAC-SHA256, metadata preservation, and batch processing support. (Description by CC) [w/hardcoded encryption key]"
|
||||
},
|
||||
{
|
||||
"author": "SergeyKarleev",
|
||||
"title": "[WIP] comfyui-textutils",
|
||||
"reference": "https://github.com/SergeyKarleev/comfyui-textutils",
|
||||
"files": [
|
||||
"https://github.com/SergeyKarleev/comfyui-textutils"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Small utility nodes for ComfyUI text workflows.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
"custom_nodes": [
|
||||
{
|
||||
"author": "love530love",
|
||||
"title": "[WIP] ComfyUI-TorchMonitor",
|
||||
@ -2995,6 +2334,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: Resize Frame, Pad Batch to 4n+1, Trim Padded Batch, Get Image Dimensions, Slot Frame, ..."
|
||||
},
|
||||
{
|
||||
"author": "LSDJesus",
|
||||
"title": "ComfyUI-Luna-Collection [WIP]",
|
||||
"reference": "https://github.com/LSDJesus/ComfyUI-Luna-Collection",
|
||||
"files": [
|
||||
"https://github.com/LSDJesus/ComfyUI-Luna-Collection"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Collection of finetuned and custom nodes for Pyrite and I\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "nicolabergamascahkimkoohi",
|
||||
"title": "ComfyUI-OSS-Upload [UNSAFE]",
|
||||
@ -3146,6 +2495,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "A ComfyUI custom node for saving and restoring random seeds. Useful for workflow reproducibility, experimentation, and quickly trying different variations.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "LSDJesus",
|
||||
"title": "ComfyUI-Luna-Collection [WIP]",
|
||||
"reference": "https://github.com/LSDJesus/ComfyUI-Luna-Collection",
|
||||
"files": [
|
||||
"https://github.com/LSDJesus/ComfyUI-Luna-Collection"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This repository contains ComfyUI-Luna-Collection, a bespoke collection of custom nodes for ComfyUI, engineered for power, flexibility, and a efficient workflow. These tools are born from a collaborative project between a human architect and their AI muse, Luna.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "Juste-Leo2",
|
||||
"title": "ComfyUI-Arduino [WIP]",
|
||||
@ -3366,6 +2725,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "Custom ComfyUI nodes for downloading, converting, and previewing audio/video from YouTube and 1,000+ other platforms"
|
||||
},
|
||||
{
|
||||
"author": "LSDJesus",
|
||||
"title": "ComfyUI-Pyrite-Core [WIP]",
|
||||
"reference": "https://github.com/LSDJesus/ComfyUI-Luna-Collection",
|
||||
"files": [
|
||||
"https://github.com/LSDJesus/ComfyUI-Luna-Collection"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This repository contains ComfyUI-Pyrite-Core, a bespoke collection of custom nodes for ComfyUI, engineered for power, flexibility, and a ruthlessly efficient workflow. These tools are born from a collaborative project between a human architect and their AI muse, Pyrite.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "comfyscript",
|
||||
"title": "ComfyUI-CloudClient",
|
||||
@ -4777,6 +4146,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "Change of resolutions for ComfyUI and Upscalers\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "pixixai",
|
||||
"title": "ComfyUI_Pixix-Tools [UNSAFE/WIP]",
|
||||
"reference": "https://github.com/pixixai/ComfyUI_pixixTools",
|
||||
"files": [
|
||||
"https://github.com/pixixai/ComfyUI_pixixTools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Load Text (from folder)\nNOTE: The files in the repo are not organized.[w/The contents of files from arbitrary paths can be read remotely through this node.]"
|
||||
},
|
||||
{
|
||||
"author": "PeterMikhai",
|
||||
"title": "DoomFLUX Nodes [WIP]",
|
||||
@ -5368,6 +4747,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "Generate random prompts easily for FMJ.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "amamisonlyuser",
|
||||
"title": "MixvtonComfyui [WIP]",
|
||||
"reference": "https://github.com/amamisonlyuser/MixvtonComfyui",
|
||||
"files": [
|
||||
"https://github.com/amamisonlyuser/MixvtonComfyui"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: CXH_Leffa_Viton_Load, CXH_Leffa_Viton_Run\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "pictorialink",
|
||||
"title": "comfyui-static-resource[UNSAFE]",
|
||||
@ -5989,6 +5378,16 @@
|
||||
"description": "NODES: Properties, Apply SVG to Image",
|
||||
"install_type": "git-clone"
|
||||
},
|
||||
{
|
||||
"author": "AhBumm",
|
||||
"title": "ComfyUI_MangaLineExtraction",
|
||||
"reference": "https://github.com/AhBumm/ComfyUI_MangaLineExtraction-hf",
|
||||
"files": [
|
||||
"https://github.com/AhBumm/ComfyUI_MangaLineExtraction-hf"
|
||||
],
|
||||
"description": "p1atdev/MangaLineExtraction-hf as a node in comfyui",
|
||||
"install_type": "git-clone"
|
||||
},
|
||||
{
|
||||
"author": "Kur0butiMegane",
|
||||
"title": "Comfyui-StringUtils",
|
||||
@ -8314,6 +7713,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "A collection of powerful, versatile, and community-driven custom nodes for ComfyUI, designed to elevate AI workflows!"
|
||||
},
|
||||
{
|
||||
"author": "kijai",
|
||||
"title": "ComfyUI-HunyuanVideoWrapper [WIP]",
|
||||
"reference": "https://github.com/kijai/ComfyUI-HunyuanVideoWrapper",
|
||||
"files": [
|
||||
"https://github.com/kijai/ComfyUI-HunyuanVideoWrapper"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI wrapper nodes for [a/HunyuanVideo](https://github.com/Tencent/HunyuanVideo)"
|
||||
},
|
||||
{
|
||||
"author": "grimli333",
|
||||
"title": "ComfyUI_Grim",
|
||||
@ -9372,6 +8781,16 @@
|
||||
"install_type": "git-clone",
|
||||
"description": "A powerful debugging tool designed to provide in-depth analysis of your environment and dependencies by exposing API endpoints. This tool allows you to inspect environment variables, pip packages, python info and dependency trees, making it easier to diagnose and resolve issues in your ComfyUI setup.[w/This tool may expose sensitive system information if used on a public server]"
|
||||
},
|
||||
{
|
||||
"author": "Futureversecom",
|
||||
"title": "ComfyUI-JEN",
|
||||
"reference": "https://github.com/futureversecom/ComfyUI-JEN",
|
||||
"files": [
|
||||
"https://github.com/futureversecom/ComfyUI-JEN"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Comfy UI custom nodes for JEN music generation powered by Futureverse"
|
||||
},
|
||||
{
|
||||
"author": "denislov",
|
||||
"title": "Comfyui_AutoSurvey",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,15 +1,5 @@
|
||||
{
|
||||
"custom_nodes": [
|
||||
{
|
||||
"author": "Fossiel",
|
||||
"title": "ComfyUI-MultiGPU-Patched",
|
||||
"reference": "https://github.com/Fossiel/ComfyUI-MultiGPU-Patched",
|
||||
"files": [
|
||||
"https://github.com/Fossiel/ComfyUI-MultiGPU-Patched"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Patched fork of ComfyUI-MultiGPU providing universal .safetensors and GGUF multi-GPU distribution with DisTorch 2.0 engine, model-driven allocation options (bytes/ratio modes), WanVideoWrapper integration, and up to 10% faster GGUF inference. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "synchronicity-labs",
|
||||
"title": "ComfyUI Sync Lipsync Node",
|
||||
|
||||
@ -1,247 +1,5 @@
|
||||
{
|
||||
"custom_nodes": [
|
||||
{
|
||||
"author": "LSDJesus",
|
||||
"title": "ComfyUI-Luna-Collection [REMOVED]",
|
||||
"reference": "https://github.com/LSDJesus/ComfyUI-Luna-Collection",
|
||||
"files": [
|
||||
"https://github.com/LSDJesus/ComfyUI-Luna-Collection"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Collection of finetuned and custom nodes for Pyrite and I\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "r3dial",
|
||||
"title": "Redial Discomphy - Discord Integration for ComfyUI [REMOVED]",
|
||||
"reference": "https://github.com/r3dial/redial-discomphy",
|
||||
"files": [
|
||||
"https://github.com/r3dial/redial-discomphy"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A custom node for ComfyUI that enables direct posting of images, videos, and messages to Discord channels. This node seamlessly integrates your ComfyUI workflows with Discord communication, allowing you to automatically share your generated content."
|
||||
},
|
||||
{
|
||||
"author": "EricRorich",
|
||||
"title": "ComfyUI-Parametric-Face-Canvas [REMOVED]",
|
||||
"reference": "https://github.com/EricRorich/ComfyUI-Parametric-Face-Canvas",
|
||||
"files": [
|
||||
"https://github.com/EricRorich/ComfyUI-Parametric-Face-Canvas"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Generates a parametric 3D face wireframe and renders it as a 2D image with adjustable facial proportions and camera orientation for use in AI pipelines.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "pixixai",
|
||||
"title": "ComfyUI_Pixix-Tools [UNSAFE/REMOVED]",
|
||||
"reference": "https://github.com/pixixai/ComfyUI_pixixTools",
|
||||
"files": [
|
||||
"https://github.com/pixixai/ComfyUI_pixixTools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Load Text (from folder)\nNOTE: The files in the repo are not organized.[w/The contents of files from arbitrary paths can be read remotely through this node.]"
|
||||
},
|
||||
{
|
||||
"author": "fllywaay",
|
||||
"title": "Comfyui-TextLine-counter [REMOVED]",
|
||||
"reference": "https://github.com/zpengcom/Comfyui-TextLine-counter",
|
||||
"files": [
|
||||
"https://github.com/zpengcom/Comfyui-TextLine-counter"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A simple multi-line text processing tool, such as line count statistics, ignoring blank lines, etc."
|
||||
},
|
||||
{
|
||||
"author": "daveand",
|
||||
"title": "ComfyUI-daveand-utils [REMOVED]",
|
||||
"reference": "https://github.com/daveand/ComfyUI-daveand-utils",
|
||||
"files": [
|
||||
"https://github.com/daveand/ComfyUI-daveand-utils"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Utility nodes including ModelConfigSelector for saving checkpoint configurations and managing manual sampler overrides. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "tristanvdb",
|
||||
"title": "ComfyUI-toolset [REMOVED]",
|
||||
"reference": "https://github.com/tristanvdb/ComfyUI-toolset",
|
||||
"files": [
|
||||
"https://github.com/tristanvdb/ComfyUI-toolset"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Human-in-the-loop image selection tool for ComfyUI workflows using a Flask web server, enabling users to pause workflows and interactively select images via a web browser interface."
|
||||
},
|
||||
{
|
||||
"author": "chuchu114514",
|
||||
"title": "comfyui_proportion_solver [REMOVED]",
|
||||
"reference": "https://github.com/chuchu114514/comfyui_proportion_solver",
|
||||
"files": [
|
||||
"https://github.com/chuchu114514/comfyui_proportion_solver"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This plugin includes two core nodes designed to handle proportion optimization tasks of varying complexity"
|
||||
},
|
||||
{
|
||||
"author": "chuchu114514",
|
||||
"title": "comfyui_text_list_stepper [REMOVED]",
|
||||
"reference": "https://github.com/chuchu114514/comfyui_text_list_stepper",
|
||||
"files": [
|
||||
"https://github.com/chuchu114514/comfyui_text_list_stepper"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Used for batch extraction of prompt words."
|
||||
},
|
||||
{
|
||||
"author": "balu112121",
|
||||
"title": "ComfyUI URL Image Loader [REMOVED]",
|
||||
"reference": "https://github.com/balu112121/comfyui-LoadImageFromURL",
|
||||
"files": [
|
||||
"https://github.com/balu112121/comfyui-LoadImageFromURL"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A custom ComfyUI node for loading images directly from URLs for AI image generation workflows."
|
||||
},
|
||||
{
|
||||
"author": "huyl3-cpu",
|
||||
"title": "ComfyUI_A100_Ultimate_Optimizer [REMOVED]",
|
||||
"reference": "https://github.com/huyl3-cpu/ComfyUI_A100_Ultimate_Optimizer",
|
||||
"files": [
|
||||
"https://github.com/huyl3-cpu/ComfyUI_A100_Ultimate_Optimizer"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A100 GPU batch processing and optimization node for ComfyUI. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "BlackVortexAI",
|
||||
"title": "BV Nodes [DEPRECATED]",
|
||||
"reference": "https://github.com/BlackVortexAI/ComfyUI-BVortexNodes",
|
||||
"files": [
|
||||
"https://github.com/BlackVortexAI/ComfyUI-BVortexNodes"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This repository contains a user-defined node for ComfyUI, currently there are nodes for capturing captions. But will be expanded in the future."
|
||||
},
|
||||
{
|
||||
"author": "scott-createplay",
|
||||
"title": "ComfyUI_frontend_tools [REMOVED]",
|
||||
"reference": "https://github.com/scott-createplay/ComfyUI_frontend_tools",
|
||||
"files": [
|
||||
"https://github.com/scott-createplay/ComfyUI_frontend_tools"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A comprehensive utility suite for ComfyUI that helps maintain clean, organized workflows with node cleaner, layout tools, HUD projection, and wireless connection management.\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "yutrodimitri-ship-it",
|
||||
"title": "ComfyUI-YUTRO-CastingStudio-v2 [REMOVED]",
|
||||
"reference": "https://github.com/yutrodimitri-ship-it/ComfyUI-YUTRO-CastingStudio-v2",
|
||||
"files": [
|
||||
"https://github.com/yutrodimitri-ship-it/ComfyUI-YUTRO-CastingStudio-v2"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "A professional modular suite of nodes for ComfyUI designed for virtual casting agencies, professional photographers, and content creators to generate high-quality model portfolios efficiently. (Description by CC)\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "amamisonlyuser",
|
||||
"title": "MixvtonComfyui [REMOVED]",
|
||||
"reference": "https://github.com/amamisonlyuser/MixvtonComfyui",
|
||||
"files": [
|
||||
"https://github.com/amamisonlyuser/MixvtonComfyui"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "NODES: CXH_Leffa_Viton_Load, CXH_Leffa_Viton_Run\nNOTE: The files in the repo are not organized."
|
||||
},
|
||||
{
|
||||
"author": "AhBumm",
|
||||
"title": "ComfyUI_MangaLineExtraction [REMOVED]",
|
||||
"reference": "https://github.com/AhBumm/ComfyUI_MangaLineExtraction-hf",
|
||||
"files": [
|
||||
"https://github.com/AhBumm/ComfyUI_MangaLineExtraction-hf"
|
||||
],
|
||||
"description": "p1atdev/MangaLineExtraction-hf as a node in comfyui",
|
||||
"install_type": "git-clone"
|
||||
},
|
||||
{
|
||||
"author": "danieljanata",
|
||||
"title": "ComfyUI-QwenVL-Override [REMOVED]",
|
||||
"reference": "https://github.com/danieljanata/ComfyUI-QwenVL-Override",
|
||||
"files": [
|
||||
"https://github.com/danieljanata/ComfyUI-QwenVL-Override"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Adds two nodes that reuse upstream ComfyUI-QwenVL presets but add a runtime override that can be wired/unwired without getting stuck."
|
||||
},
|
||||
{
|
||||
"author": "Futureversecom",
|
||||
"title": "ComfyUI-JEN [REMOVED]",
|
||||
"reference": "https://github.com/futureversecom/ComfyUI-JEN",
|
||||
"files": [
|
||||
"https://github.com/futureversecom/ComfyUI-JEN"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Comfy UI custom nodes for JEN music generation powered by Futureverse"
|
||||
},
|
||||
{
|
||||
"author": "TheBill2001",
|
||||
"title": "comfyui-upscale-by-model [REMOVED]",
|
||||
"reference": "https://github.com/TheBill2001/comfyui-upscale-by-model",
|
||||
"files": [
|
||||
"https://github.com/TheBill2001/comfyui-upscale-by-model"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This custom node allow upscaling an image by a factor using a model."
|
||||
},
|
||||
{
|
||||
"author": "XYMikky12138",
|
||||
"title": "ComfyUI-NanoBanana-inpaint [REMOVED]",
|
||||
"reference": "https://github.com/XYMikky12138/ComfyUI-NanoBanana-inpaint",
|
||||
"files": [
|
||||
"https://github.com/XYMikky12138/ComfyUI-NanoBanana-inpaint"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "ComfyUI nodes for API-based inpainting (Gemini, Imagen) with aspect ratio constraints, smart cropping, resize fitting, intelligent paste-back with transparency support. (Description by CC)"
|
||||
},
|
||||
{
|
||||
"author": "Blonicx",
|
||||
"title": "ComfyUI-Rework-X [REMOVED]",
|
||||
"id": "rework-x",
|
||||
"reference": "https://github.com/Blonicx/ComfyUI-X-Rework",
|
||||
"files": [
|
||||
"https://github.com/Blonicx/ComfyUI-X-Rework"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This is a plugin for ComfyUI that adds new Util Nodes and Nodes for easier image creation and sharing."
|
||||
},
|
||||
{
|
||||
"author": "scott-createplay",
|
||||
"title": "ComfyUI_video_essentials [REMOVED]",
|
||||
"reference": "https://github.com/scott-createplay/ComfyUI_video_essentials",
|
||||
"files": [
|
||||
"https://github.com/scott-createplay/ComfyUI_video_essentials"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Essential video processing nodes for ComfyUI"
|
||||
},
|
||||
{
|
||||
"author": "thnikk",
|
||||
"title": "comfyui-thnikk-utils [REMOVED]",
|
||||
"reference": "https://github.com/thnikk/comfyui-thnikk-utils",
|
||||
"files": [
|
||||
"https://github.com/thnikk/comfyui-thnikk-utils"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "Nodes to clean up your workflow."
|
||||
},
|
||||
{
|
||||
"author": "Tr1dae",
|
||||
"title": "LoRA Matcher Nodes for ComfyUI [REMOVED]",
|
||||
"reference": "https://github.com/Tr1dae/ComfyUI-LoraPromptMatcher",
|
||||
"files": [
|
||||
"https://github.com/Tr1dae/ComfyUI-LoraPromptMatcher"
|
||||
],
|
||||
"install_type": "git-clone",
|
||||
"description": "This custom node provides two different approaches to automatically match text prompts with LoRA models using their descriptions."
|
||||
},
|
||||
|
||||
{
|
||||
"author": "jkhayiying",
|
||||
"title": "ImageLoadFromLocalOrUrl Node for ComfyUI [REMOVED]",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -370,13 +370,10 @@ try:
|
||||
pass
|
||||
|
||||
with std_log_lock:
|
||||
try:
|
||||
if self.is_stdout:
|
||||
original_stdout.flush()
|
||||
else:
|
||||
original_stderr.flush()
|
||||
except (OSError, ValueError):
|
||||
pass
|
||||
if self.is_stdout:
|
||||
original_stdout.flush()
|
||||
else:
|
||||
original_stderr.flush()
|
||||
|
||||
def close(self):
|
||||
self.flush()
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
[project]
|
||||
name = "comfyui-manager"
|
||||
description = "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI."
|
||||
version = "3.39.2"
|
||||
version = "3.39"
|
||||
license = { file = "LICENSE.txt" }
|
||||
dependencies = ["GitPython", "PyGithub", "matrix-nio", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions", "toml", "uv", "chardet"]
|
||||
|
||||
|
||||
172
scanner.py
172
scanner.py
@ -20,7 +20,7 @@ from pathlib import Path
|
||||
from typing import Set, Dict, Optional
|
||||
|
||||
# Scanner version for cache invalidation
|
||||
SCANNER_VERSION = "2.0.12" # Add dict comprehension + export list detection
|
||||
SCANNER_VERSION = "2.0.11" # Multi-layer detection: class existence + display names
|
||||
|
||||
# Cache for extract_nodes and extract_nodes_enhanced results
|
||||
_extract_nodes_cache: Dict[str, Set[str]] = {}
|
||||
@ -552,22 +552,12 @@ def extract_nodes_enhanced(
|
||||
if exists:
|
||||
phase5_nodes.add(node_name)
|
||||
|
||||
# Phase 6: Dict comprehension pattern (NEW in 2.0.12)
|
||||
# Detects: NODE_CLASS_MAPPINGS = {cls.__name__: cls for cls in to_export}
|
||||
# Example: TobiasGlaubach/ComfyUI-TG_PyCode
|
||||
phase6_nodes = _fallback_dict_comprehension(code_text, file_path)
|
||||
|
||||
# Phase 7: Import-based class names for dict comprehension (NEW in 2.0.12)
|
||||
# Detects imported classes that are added to export lists
|
||||
phase7_nodes = _fallback_import_class_names(code_text, file_path)
|
||||
|
||||
# Union all results (FIX: Scanner 2.0.9 bug + Scanner 2.0.10 bug + Scanner 2.0.12 dict comp)
|
||||
# Union all results (FIX: Scanner 2.0.9 bug + Scanner 2.0.10 bug)
|
||||
# 2.0.9: Used early return which missed Phase 3 nodes
|
||||
# 2.0.10: Only checked registrations, missed classes referenced in display names
|
||||
# 2.0.12: Added dict comprehension and import-based class detection
|
||||
all_nodes = phase1_nodes | phase2_nodes | phase3_nodes | phase4_nodes | phase5_nodes | phase6_nodes | phase7_nodes
|
||||
all_nodes = phase1_nodes | phase2_nodes | phase3_nodes | phase4_nodes | phase5_nodes
|
||||
|
||||
# Phase 8: Empty dict detector (logging only, doesn't add nodes)
|
||||
# Phase 6: Empty dict detector (logging only, doesn't add nodes)
|
||||
if not all_nodes:
|
||||
_fallback_empty_dict_detector(code_text, file_path, verbose)
|
||||
|
||||
@ -626,7 +616,7 @@ def _fallback_classname_resolver(code_text: str, file_path: Optional[Path]) -> S
|
||||
def _fallback_item_assignment(code_text: str) -> Set[str]:
|
||||
"""
|
||||
Detect item assignment pattern.
|
||||
|
||||
|
||||
Pattern:
|
||||
NODE_CLASS_MAPPINGS = {}
|
||||
NODE_CLASS_MAPPINGS["MyNode"] = MyNode
|
||||
@ -637,9 +627,9 @@ def _fallback_item_assignment(code_text: str) -> Set[str]:
|
||||
parsed = ast.parse(code_text)
|
||||
except:
|
||||
return set()
|
||||
|
||||
|
||||
nodes = set()
|
||||
|
||||
|
||||
for node in ast.walk(parsed):
|
||||
if isinstance(node, ast.Assign):
|
||||
for target in node.targets:
|
||||
@ -650,156 +640,10 @@ def _fallback_item_assignment(code_text: str) -> Set[str]:
|
||||
if isinstance(target.slice, ast.Constant):
|
||||
if isinstance(target.slice.value, str):
|
||||
nodes.add(target.slice.value)
|
||||
|
||||
|
||||
return nodes
|
||||
|
||||
|
||||
def _fallback_dict_comprehension(code_text: str, file_path: Optional[Path] = None) -> Set[str]:
|
||||
"""
|
||||
Detect dict comprehension pattern with __name__ attribute access.
|
||||
|
||||
Pattern:
|
||||
NODE_CLASS_MAPPINGS = {cls.__name__: cls for cls in to_export}
|
||||
NODE_CLASS_MAPPINGS = {c.__name__: c for c in [ClassA, ClassB]}
|
||||
|
||||
This function detects dict comprehension assignments to NODE_CLASS_MAPPINGS
|
||||
and extracts class names from the iterable (list literal or variable reference).
|
||||
|
||||
Returns:
|
||||
Set of class names extracted from the dict comprehension
|
||||
"""
|
||||
try:
|
||||
with warnings.catch_warnings():
|
||||
warnings.filterwarnings('ignore', category=SyntaxWarning)
|
||||
parsed = ast.parse(code_text)
|
||||
except:
|
||||
return set()
|
||||
|
||||
nodes = set()
|
||||
export_lists = {} # Track list variables and their contents
|
||||
|
||||
# First pass: collect list assignments (to_export = [...], exports = [...])
|
||||
for node in ast.walk(parsed):
|
||||
if isinstance(node, ast.Assign):
|
||||
for target in node.targets:
|
||||
if isinstance(target, ast.Name):
|
||||
var_name = target.id
|
||||
# Check for list literal
|
||||
if isinstance(node.value, ast.List):
|
||||
class_names = set()
|
||||
for elt in node.value.elts:
|
||||
if isinstance(elt, ast.Name):
|
||||
class_names.add(elt.id)
|
||||
export_lists[var_name] = class_names
|
||||
|
||||
# Handle augmented assignment: to_export += [...]
|
||||
elif isinstance(node, ast.AugAssign):
|
||||
if isinstance(node.target, ast.Name) and isinstance(node.op, ast.Add):
|
||||
var_name = node.target.id
|
||||
if isinstance(node.value, ast.List):
|
||||
class_names = set()
|
||||
for elt in node.value.elts:
|
||||
if isinstance(elt, ast.Name):
|
||||
class_names.add(elt.id)
|
||||
if var_name in export_lists:
|
||||
export_lists[var_name].update(class_names)
|
||||
else:
|
||||
export_lists[var_name] = class_names
|
||||
|
||||
# Second pass: find NODE_CLASS_MAPPINGS dict comprehension
|
||||
for node in ast.walk(parsed):
|
||||
if isinstance(node, ast.Assign):
|
||||
for target in node.targets:
|
||||
if isinstance(target, ast.Name) and target.id in ['NODE_CLASS_MAPPINGS', 'NODE_CONFIG']:
|
||||
# Check for dict comprehension
|
||||
if isinstance(node.value, ast.DictComp):
|
||||
dictcomp = node.value
|
||||
|
||||
# Check if key is cls.__name__ pattern
|
||||
key = dictcomp.key
|
||||
if isinstance(key, ast.Attribute) and key.attr == '__name__':
|
||||
# Get the iterable from the first generator
|
||||
for generator in dictcomp.generators:
|
||||
iter_node = generator.iter
|
||||
|
||||
# Case 1: Inline list [ClassA, ClassB, ...]
|
||||
if isinstance(iter_node, ast.List):
|
||||
for elt in iter_node.elts:
|
||||
if isinstance(elt, ast.Name):
|
||||
nodes.add(elt.id)
|
||||
|
||||
# Case 2: Variable reference (to_export, exports, etc.)
|
||||
elif isinstance(iter_node, ast.Name):
|
||||
var_name = iter_node.id
|
||||
if var_name in export_lists:
|
||||
nodes.update(export_lists[var_name])
|
||||
|
||||
return nodes
|
||||
|
||||
|
||||
def _fallback_import_class_names(code_text: str, file_path: Optional[Path] = None) -> Set[str]:
|
||||
"""
|
||||
Extract class names from imports that are added to export lists.
|
||||
|
||||
Pattern:
|
||||
from .module import ClassA, ClassB
|
||||
to_export = [ClassA, ClassB]
|
||||
NODE_CLASS_MAPPINGS = {cls.__name__: cls for cls in to_export}
|
||||
|
||||
This is a complementary fallback that works with _fallback_dict_comprehension
|
||||
to resolve import-based node registrations.
|
||||
|
||||
Returns:
|
||||
Set of imported class names that appear in export-like contexts
|
||||
"""
|
||||
try:
|
||||
with warnings.catch_warnings():
|
||||
warnings.filterwarnings('ignore', category=SyntaxWarning)
|
||||
parsed = ast.parse(code_text)
|
||||
except:
|
||||
return set()
|
||||
|
||||
# Collect imported names
|
||||
imported_names = set()
|
||||
for node in ast.walk(parsed):
|
||||
if isinstance(node, ast.ImportFrom):
|
||||
for alias in node.names:
|
||||
name = alias.asname if alias.asname else alias.name
|
||||
imported_names.add(name)
|
||||
|
||||
# Check if these names appear in list assignments that feed into NODE_CLASS_MAPPINGS
|
||||
export_candidates = set()
|
||||
has_dict_comp_mapping = False
|
||||
|
||||
for node in ast.walk(parsed):
|
||||
# Check for dict comprehension NODE_CLASS_MAPPINGS
|
||||
if isinstance(node, ast.Assign):
|
||||
for target in node.targets:
|
||||
if isinstance(target, ast.Name) and target.id == 'NODE_CLASS_MAPPINGS':
|
||||
if isinstance(node.value, ast.DictComp):
|
||||
has_dict_comp_mapping = True
|
||||
|
||||
# Collect list contents
|
||||
if isinstance(node, ast.Assign):
|
||||
if isinstance(node.value, ast.List):
|
||||
for elt in node.value.elts:
|
||||
if isinstance(elt, ast.Name) and elt.id in imported_names:
|
||||
export_candidates.add(elt.id)
|
||||
|
||||
# Handle augmented assignment
|
||||
elif isinstance(node, ast.AugAssign):
|
||||
if isinstance(node.value, ast.List):
|
||||
for elt in node.value.elts:
|
||||
if isinstance(elt, ast.Name) and elt.id in imported_names:
|
||||
export_candidates.add(elt.id)
|
||||
|
||||
# Only return if there's a dict comprehension mapping
|
||||
if has_dict_comp_mapping:
|
||||
return export_candidates
|
||||
|
||||
return set()
|
||||
|
||||
|
||||
def _extract_repo_name(file_path: Path) -> str:
|
||||
"""
|
||||
Extract repository name from file path.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user