Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e983f9ed35 | ||
|
|
8b16ef641b | ||
|
|
e87d616b7a | ||
|
|
2220f325fc | ||
|
|
b53ed47ccb | ||
|
|
39df2743fe | ||
|
|
3f729aaf03 | ||
|
|
b7324621e4 | ||
|
|
e8c782c8e1 |
@@ -150,6 +150,7 @@ In `ComfyUI-Manager` V3.0 and later, configuration files and dynamically generat
|
|||||||
* Configurable channel lists: `<USER_DIRECTORY>/default/ComfyUI-Manager/channels.ini`
|
* Configurable channel lists: `<USER_DIRECTORY>/default/ComfyUI-Manager/channels.ini`
|
||||||
* Configurable pip overrides: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_overrides.json`
|
* Configurable pip overrides: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_overrides.json`
|
||||||
* Configurable pip blacklist: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_blacklist.list`
|
* Configurable pip blacklist: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_blacklist.list`
|
||||||
|
* Configurable pip auto fix: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_auto_fix.list`
|
||||||
* Saved snapshot files: `<USER_DIRECTORY>/default/ComfyUI-Manager/snapshots`
|
* Saved snapshot files: `<USER_DIRECTORY>/default/ComfyUI-Manager/snapshots`
|
||||||
* Startup script files: `<USER_DIRECTORY>/default/ComfyUI-Manager/startup-scripts`
|
* Startup script files: `<USER_DIRECTORY>/default/ComfyUI-Manager/startup-scripts`
|
||||||
* Component files: `<USER_DIRECTORY>/default/ComfyUI-Manager/components`
|
* Component files: `<USER_DIRECTORY>/default/ComfyUI-Manager/components`
|
||||||
@@ -306,6 +307,10 @@ The following settings are applied based on the section marked as `is_default`.
|
|||||||
* Prevent the installation of specific pip packages
|
* Prevent the installation of specific pip packages
|
||||||
* List the package names one per line in the `pip_blacklist.list` file.
|
* List the package names one per line in the `pip_blacklist.list` file.
|
||||||
|
|
||||||
|
* Automatically Restoring pip Installation
|
||||||
|
* If you list pip spec requirements in `pip_auto_fix.list`, similar to `requirements.txt`, it will automatically restore the specified versions when starting ComfyUI or when versions get mismatched during various custom node installations.
|
||||||
|
* `--index-url` can be used.
|
||||||
|
|
||||||
* Use `aria2` as downloader
|
* Use `aria2` as downloader
|
||||||
* [howto](docs/en/use_aria2.md)
|
* [howto](docs/en/use_aria2.md)
|
||||||
|
|
||||||
|
|||||||
17
cm-cli.py
17
cm-cli.py
@@ -647,7 +647,7 @@ def install(
|
|||||||
cmd_ctx.set_channel_mode(channel, mode)
|
cmd_ctx.set_channel_mode(channel, mode)
|
||||||
cmd_ctx.set_no_deps(no_deps)
|
cmd_ctx.set_no_deps(no_deps)
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
for_each_nodes(nodes, act=install_node)
|
for_each_nodes(nodes, act=install_node)
|
||||||
pip_fixer.fix_broken()
|
pip_fixer.fix_broken()
|
||||||
|
|
||||||
@@ -685,7 +685,7 @@ def reinstall(
|
|||||||
cmd_ctx.set_channel_mode(channel, mode)
|
cmd_ctx.set_channel_mode(channel, mode)
|
||||||
cmd_ctx.set_no_deps(no_deps)
|
cmd_ctx.set_no_deps(no_deps)
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
for_each_nodes(nodes, act=reinstall_node)
|
for_each_nodes(nodes, act=reinstall_node)
|
||||||
pip_fixer.fix_broken()
|
pip_fixer.fix_broken()
|
||||||
|
|
||||||
@@ -739,7 +739,7 @@ def update(
|
|||||||
if 'all' in nodes:
|
if 'all' in nodes:
|
||||||
asyncio.run(auto_save_snapshot())
|
asyncio.run(auto_save_snapshot())
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
|
|
||||||
for x in nodes:
|
for x in nodes:
|
||||||
if x.lower() in ['comfyui', 'comfy', 'all']:
|
if x.lower() in ['comfyui', 'comfy', 'all']:
|
||||||
@@ -840,7 +840,7 @@ def fix(
|
|||||||
if 'all' in nodes:
|
if 'all' in nodes:
|
||||||
asyncio.run(auto_save_snapshot())
|
asyncio.run(auto_save_snapshot())
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
for_each_nodes(nodes, fix_node, allow_all=True)
|
for_each_nodes(nodes, fix_node, allow_all=True)
|
||||||
pip_fixer.fix_broken()
|
pip_fixer.fix_broken()
|
||||||
|
|
||||||
@@ -1119,7 +1119,7 @@ def restore_snapshot(
|
|||||||
print(f"[bold red]ERROR: `{snapshot_path}` is not exists.[/bold red]")
|
print(f"[bold red]ERROR: `{snapshot_path}` is not exists.[/bold red]")
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
try:
|
try:
|
||||||
asyncio.run(core.restore_snapshot(snapshot_path, extras))
|
asyncio.run(core.restore_snapshot(snapshot_path, extras))
|
||||||
except Exception:
|
except Exception:
|
||||||
@@ -1151,7 +1151,7 @@ def restore_dependencies(
|
|||||||
total = len(node_paths)
|
total = len(node_paths)
|
||||||
i = 1
|
i = 1
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
for x in node_paths:
|
for x in node_paths:
|
||||||
print("----------------------------------------------------------------------------------------------------")
|
print("----------------------------------------------------------------------------------------------------")
|
||||||
print(f"Restoring [{i}/{total}]: {x}")
|
print(f"Restoring [{i}/{total}]: {x}")
|
||||||
@@ -1170,7 +1170,7 @@ def post_install(
|
|||||||
):
|
):
|
||||||
path = os.path.expanduser(path)
|
path = os.path.expanduser(path)
|
||||||
|
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
unified_manager.execute_install_script('', path, instant_execution=True)
|
unified_manager.execute_install_script('', path, instant_execution=True)
|
||||||
pip_fixer.fix_broken()
|
pip_fixer.fix_broken()
|
||||||
|
|
||||||
@@ -1214,8 +1214,7 @@ def install_deps(
|
|||||||
print(f"[bold red]Invalid json file: {deps}[/bold red]")
|
print(f"[bold red]Invalid json file: {deps}[/bold red]")
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, core.manager_files_path)
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
|
||||||
for k in json_obj['custom_nodes'].keys():
|
for k in json_obj['custom_nodes'].keys():
|
||||||
state = core.simple_check_custom_node(k)
|
state = core.simple_check_custom_node(k)
|
||||||
if state == 'installed':
|
if state == 'installed':
|
||||||
|
|||||||
@@ -8031,16 +8031,6 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "ComfyUI nodes to edit videos using Genmo Mochi"
|
"description": "ComfyUI nodes to edit videos using Genmo Mochi"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"author": "logtd",
|
|
||||||
"title": "ComfyUI-LTXTricks",
|
|
||||||
"reference": "https://github.com/logtd/ComfyUI-LTXTricks",
|
|
||||||
"files": [
|
|
||||||
"https://github.com/logtd/ComfyUI-LTXTricks"
|
|
||||||
],
|
|
||||||
"install_type": "git-clone",
|
|
||||||
"description": "A set of nodes that provide additional controls for the LTX Video model"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"author": "Big-Idea-Technology",
|
"author": "Big-Idea-Technology",
|
||||||
"title": "ComfyUI-Book-Tools Nodes for ComfyUI",
|
"title": "ComfyUI-Book-Tools Nodes for ComfyUI",
|
||||||
@@ -14466,6 +14456,16 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "GeekyRemB is a powerful and versatile image processing node for ComfyUI, designed to remove backgrounds from images with advanced customization options. This node leverages the rembg library and offers a wide range of features for fine-tuning the background removal process and enhancing the resulting images."
|
"description": "GeekyRemB is a powerful and versatile image processing node for ComfyUI, designed to remove backgrounds from images with advanced customization options. This node leverages the rembg library and offers a wide range of features for fine-tuning the background removal process and enhancing the resulting images."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"author": "GeekyGhost",
|
||||||
|
"title": "ComfyUI-Geeky-Kokoro-TTS",
|
||||||
|
"reference": "https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A powerful and feature-rich custom node collection for ComfyUI that integrates the Kokoro TTS (Text-to-Speech) system with advanced voice modification capabilities. This package allows you to generate natural-sounding speech and apply various voice effects within ComfyUI workflows."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "Dobidop",
|
"author": "Dobidop",
|
||||||
"title": "Dobidop ComfyStereo",
|
"title": "Dobidop ComfyStereo",
|
||||||
@@ -19127,7 +19127,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"author": "kazeyori",
|
"author": "kazeyori",
|
||||||
"title": "Quick Image Sequence Process",
|
"title": "ComfyUI-QuickImageSequenceProcess",
|
||||||
"reference": "https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess",
|
"reference": "https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess",
|
||||||
"files": [
|
"files": [
|
||||||
"https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess"
|
"https://github.com/kazeyori/ComfyUI-QuickImageSequenceProcess"
|
||||||
@@ -19729,6 +19729,16 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "A Text To Speech node using Step-Audio-TTS in ComfyUI. Can speak, rap, sing, or clone voice."
|
"description": "A Text To Speech node using Step-Audio-TTS in ComfyUI. Can speak, rap, sing, or clone voice."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"author": "billwuhao",
|
||||||
|
"title": "ComfyUI_KokoroTTS_MW",
|
||||||
|
"reference": "https://github.com/billwuhao/ComfyUI_KokoroTTS_MW",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/billwuhao/ComfyUI_KokoroTTS_MW"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A Text To Speech node using Kokoro TTS in ComfyUI. Supports 8 languages and 150 voices"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "pandaer119",
|
"author": "pandaer119",
|
||||||
"title": "ComfyUI_pandai",
|
"title": "ComfyUI_pandai",
|
||||||
@@ -21827,6 +21837,26 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "GlitchNodes is a collection of image processing nodes designed for ComfyUI that specializes in creating glitch art and retro effects."
|
"description": "GlitchNodes is a collection of image processing nodes designed for ComfyUI that specializes in creating glitch art and retro effects."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"author": "S4MUEL404",
|
||||||
|
"title": "Image Position Blend",
|
||||||
|
"id": "ComfyUI-Image-Position-Blend",
|
||||||
|
"reference": "https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A custom node for conveniently adjusting the overlay position of two images."
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -2547,6 +2547,7 @@
|
|||||||
"Base64ToConditioning",
|
"Base64ToConditioning",
|
||||||
"CLIPTextEncodeFluxUnguided",
|
"CLIPTextEncodeFluxUnguided",
|
||||||
"ClownRegionalConditioning",
|
"ClownRegionalConditioning",
|
||||||
|
"ClownRegionalConditioning3",
|
||||||
"Conditioning Recast FP64",
|
"Conditioning Recast FP64",
|
||||||
"ConditioningAdd",
|
"ConditioningAdd",
|
||||||
"ConditioningAverageScheduler",
|
"ConditioningAverageScheduler",
|
||||||
@@ -4151,6 +4152,15 @@
|
|||||||
"title_aux": "ComfyUI-SD3LatentSelectRes"
|
"title_aux": "ComfyUI-SD3LatentSelectRes"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS": [
|
||||||
|
[
|
||||||
|
"GeekyKokoroAdvancedVoice",
|
||||||
|
"GeekyKokoroTTS"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-Geeky-Kokoro-TTS"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB": [
|
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB": [
|
||||||
[
|
[
|
||||||
"GeekyRemB"
|
"GeekyRemB"
|
||||||
@@ -5970,6 +5980,27 @@
|
|||||||
"title_aux": "ComfyUI-LivePortraitNode (Replicate API)"
|
"title_aux": "ComfyUI-LivePortraitNode (Replicate API)"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/Lightricks/ComfyUI-LTXVideo": [
|
||||||
|
[
|
||||||
|
"AddLatentGuide",
|
||||||
|
"LTXAttentioOverride",
|
||||||
|
"LTXAttentionBank",
|
||||||
|
"LTXAttnOverride",
|
||||||
|
"LTXFetaEnhance",
|
||||||
|
"LTXFlowEditCFGGuider",
|
||||||
|
"LTXFlowEditSampler",
|
||||||
|
"LTXForwardModelSamplingPred",
|
||||||
|
"LTXPerturbedAttention",
|
||||||
|
"LTXPrepareAttnInjections",
|
||||||
|
"LTXRFForwardODESampler",
|
||||||
|
"LTXRFReverseODESampler",
|
||||||
|
"LTXReverseModelSamplingPred",
|
||||||
|
"ModifyLTXModel"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-LTXVideo"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/Limitex/ComfyUI-Calculation": [
|
"https://github.com/Limitex/ComfyUI-Calculation": [
|
||||||
[
|
[
|
||||||
"CenterCalculation",
|
"CenterCalculation",
|
||||||
@@ -7862,6 +7893,14 @@
|
|||||||
"title_aux": "comfyui_io_helpers"
|
"title_aux": "comfyui_io_helpers"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend": [
|
||||||
|
[
|
||||||
|
"ImagePositionBlend"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "Image Position Blend"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/SEkINVR/ComfyUI-SaveAs": [
|
"https://github.com/SEkINVR/ComfyUI-SaveAs": [
|
||||||
[
|
[
|
||||||
"ComfyUISaveAs"
|
"ComfyUISaveAs"
|
||||||
@@ -11442,7 +11481,8 @@
|
|||||||
"https://github.com/aidenli/ComfyUI_NYJY": [
|
"https://github.com/aidenli/ComfyUI_NYJY": [
|
||||||
[
|
[
|
||||||
"CivitaiPrompt",
|
"CivitaiPrompt",
|
||||||
"ConverAnyToString",
|
"ConvertAnyToString",
|
||||||
|
"ConvertStringToNumber",
|
||||||
"CustomLatentImage-NYJY",
|
"CustomLatentImage-NYJY",
|
||||||
"CustomLatentImageSimple",
|
"CustomLatentImageSimple",
|
||||||
"FloatSlider-NYJY",
|
"FloatSlider-NYJY",
|
||||||
@@ -12613,6 +12653,15 @@
|
|||||||
"title_aux": "ComfyUI_TextAssets"
|
"title_aux": "ComfyUI_TextAssets"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/billwuhao/ComfyUI_KokoroTTS_MW": [
|
||||||
|
[
|
||||||
|
"Kokoro Run",
|
||||||
|
"Kokoro ZH Run"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI_KokoroTTS_MW"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/billwuhao/ComfyUI_OneButtonPrompt_Flux": [
|
"https://github.com/billwuhao/ComfyUI_OneButtonPrompt_Flux": [
|
||||||
[
|
[
|
||||||
"DeepseekRun",
|
"DeepseekRun",
|
||||||
@@ -14700,6 +14749,7 @@
|
|||||||
"GLIGENLoader",
|
"GLIGENLoader",
|
||||||
"GLIGENTextBoxApply",
|
"GLIGENTextBoxApply",
|
||||||
"GrowMask",
|
"GrowMask",
|
||||||
|
"HunyuanImageToVideo",
|
||||||
"HyperTile",
|
"HyperTile",
|
||||||
"HypernetworkLoader",
|
"HypernetworkLoader",
|
||||||
"ImageBatch",
|
"ImageBatch",
|
||||||
@@ -14889,6 +14939,7 @@
|
|||||||
"TestVariadicAverage",
|
"TestVariadicAverage",
|
||||||
"TestWhileLoopClose",
|
"TestWhileLoopClose",
|
||||||
"TestWhileLoopOpen",
|
"TestWhileLoopOpen",
|
||||||
|
"TextEncodeHunyuanVideo_ImageToVideo",
|
||||||
"ThresholdMask",
|
"ThresholdMask",
|
||||||
"TomePatchModel",
|
"TomePatchModel",
|
||||||
"TorchCompileModel",
|
"TorchCompileModel",
|
||||||
@@ -20005,7 +20056,7 @@
|
|||||||
"description": "A ComfyUI plugin for efficient image sequence processing. Features frame insertion, duplication, and removal with intuitive controls.",
|
"description": "A ComfyUI plugin for efficient image sequence processing. Features frame insertion, duplication, and removal with intuitive controls.",
|
||||||
"nickname": "QuickSeq",
|
"nickname": "QuickSeq",
|
||||||
"title": "Quick Image Sequence Process",
|
"title": "Quick Image Sequence Process",
|
||||||
"title_aux": "Quick Image Sequence Process"
|
"title_aux": "ComfyUI-QuickImageSequenceProcess"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"https://github.com/kealiu/ComfyUI-S3-Tools": [
|
"https://github.com/kealiu/ComfyUI-S3-Tools": [
|
||||||
@@ -20040,7 +20091,8 @@
|
|||||||
"BinarizeImage",
|
"BinarizeImage",
|
||||||
"BinarizeImageUsingOtsu",
|
"BinarizeImageUsingOtsu",
|
||||||
"BrightnessTransparency",
|
"BrightnessTransparency",
|
||||||
"GrayscaleImage"
|
"GrayscaleImage",
|
||||||
|
"RemoveWhiteBackgroundNoise"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-Image-Toolkit"
|
"title_aux": "ComfyUI-Image-Toolkit"
|
||||||
@@ -20339,6 +20391,8 @@
|
|||||||
"HyVideoEmptyTextEmbeds",
|
"HyVideoEmptyTextEmbeds",
|
||||||
"HyVideoEncode",
|
"HyVideoEncode",
|
||||||
"HyVideoEnhanceAVideo",
|
"HyVideoEnhanceAVideo",
|
||||||
|
"HyVideoGetClosestBucketSize",
|
||||||
|
"HyVideoI2VEncode",
|
||||||
"HyVideoInverseSampler",
|
"HyVideoInverseSampler",
|
||||||
"HyVideoLatentPreview",
|
"HyVideoLatentPreview",
|
||||||
"HyVideoLoraBlockEdit",
|
"HyVideoLoraBlockEdit",
|
||||||
@@ -21807,27 +21861,6 @@
|
|||||||
"title_aux": "ComfyUI-InversedNoise"
|
"title_aux": "ComfyUI-InversedNoise"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"https://github.com/logtd/ComfyUI-LTXTricks": [
|
|
||||||
[
|
|
||||||
"AddLatentGuide",
|
|
||||||
"LTXAttentioOverride",
|
|
||||||
"LTXAttentionBank",
|
|
||||||
"LTXAttnOverride",
|
|
||||||
"LTXFetaEnhance",
|
|
||||||
"LTXFlowEditCFGGuider",
|
|
||||||
"LTXFlowEditSampler",
|
|
||||||
"LTXForwardModelSamplingPred",
|
|
||||||
"LTXPerturbedAttention",
|
|
||||||
"LTXPrepareAttnInjections",
|
|
||||||
"LTXRFForwardODESampler",
|
|
||||||
"LTXRFReverseODESampler",
|
|
||||||
"LTXReverseModelSamplingPred",
|
|
||||||
"ModifyLTXModel"
|
|
||||||
],
|
|
||||||
{
|
|
||||||
"title_aux": "ComfyUI-LTXTricks"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"https://github.com/logtd/ComfyUI-MochiEdit": [
|
"https://github.com/logtd/ComfyUI-MochiEdit": [
|
||||||
[
|
[
|
||||||
"MochiPrepareSigmas",
|
"MochiPrepareSigmas",
|
||||||
@@ -23297,7 +23330,7 @@
|
|||||||
"SingleBooleanTrigger",
|
"SingleBooleanTrigger",
|
||||||
"SixBooleanTrigger",
|
"SixBooleanTrigger",
|
||||||
"StepsAndCfg",
|
"StepsAndCfg",
|
||||||
"TextBox",
|
"TextBoxMira",
|
||||||
"TextCombinerSix",
|
"TextCombinerSix",
|
||||||
"TextCombinerTwo",
|
"TextCombinerTwo",
|
||||||
"TextLoopCombiner",
|
"TextLoopCombiner",
|
||||||
@@ -27188,6 +27221,7 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/sugarkwork/comfyui_tag_fillter": [
|
"https://github.com/sugarkwork/comfyui_tag_fillter": [
|
||||||
[
|
[
|
||||||
|
"TagCategory",
|
||||||
"TagCategoryEnhance",
|
"TagCategoryEnhance",
|
||||||
"TagComparator",
|
"TagComparator",
|
||||||
"TagEnhance",
|
"TagEnhance",
|
||||||
|
|||||||
4873
github-stats.json
4873
github-stats.json
File diff suppressed because it is too large
Load Diff
@@ -43,7 +43,7 @@ import manager_downloader
|
|||||||
from node_package import InstalledNodePackage
|
from node_package import InstalledNodePackage
|
||||||
|
|
||||||
|
|
||||||
version_code = [3, 29]
|
version_code = [3, 30, 2]
|
||||||
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
|
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
|
||||||
|
|
||||||
|
|
||||||
@@ -847,7 +847,7 @@ class UnifiedManager:
|
|||||||
else:
|
else:
|
||||||
if os.path.exists(requirements_path) and not no_deps:
|
if os.path.exists(requirements_path) and not no_deps:
|
||||||
print("Install: pip packages")
|
print("Install: pip packages")
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, manager_files_path)
|
||||||
res = True
|
res = True
|
||||||
lines = manager_util.robust_readlines(requirements_path)
|
lines = manager_util.robust_readlines(requirements_path)
|
||||||
for line in lines:
|
for line in lines:
|
||||||
@@ -1902,7 +1902,7 @@ def execute_install_script(url, repo_path, lazy_mode=False, instant_execution=Fa
|
|||||||
else:
|
else:
|
||||||
if os.path.exists(requirements_path) and not no_deps:
|
if os.path.exists(requirements_path) and not no_deps:
|
||||||
print("Install: pip packages")
|
print("Install: pip packages")
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, manager_files_path)
|
||||||
with open(requirements_path, "r") as requirements_file:
|
with open(requirements_path, "r") as requirements_file:
|
||||||
for line in requirements_file:
|
for line in requirements_file:
|
||||||
#handle comments
|
#handle comments
|
||||||
|
|||||||
@@ -1599,11 +1599,11 @@ def restart(self):
|
|||||||
if '--windows-standalone-build' in sys_argv:
|
if '--windows-standalone-build' in sys_argv:
|
||||||
sys_argv.remove('--windows-standalone-build')
|
sys_argv.remove('--windows-standalone-build')
|
||||||
|
|
||||||
if sys.platform.startswith('win32'):
|
if sys_argv[0].endswith("__main__.py"): # this is a python module
|
||||||
cmds = ['"' + sys.executable + '"', '"' + sys_argv[0] + '"'] + sys_argv[1:]
|
|
||||||
elif sys_argv[0].endswith("__main__.py"): # this is a python module
|
|
||||||
module_name = os.path.basename(os.path.dirname(sys_argv[0]))
|
module_name = os.path.basename(os.path.dirname(sys_argv[0]))
|
||||||
cmds = [sys.executable, '-m', module_name] + sys_argv[1:]
|
cmds = [sys.executable, '-m', module_name] + sys_argv[1:]
|
||||||
|
elif sys.platform.startswith('win32'):
|
||||||
|
cmds = ['"' + sys.executable + '"', '"' + sys_argv[0] + '"'] + sys_argv[1:]
|
||||||
else:
|
else:
|
||||||
cmds = [sys.executable] + sys_argv
|
cmds = [sys.executable] + sys_argv
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
description:
|
description:
|
||||||
`manager_util` is the lightest module shared across the prestartup_script, main code, and cm-cli of ComfyUI-Manager.
|
`manager_util` is the lightest module shared across the prestartup_script, main code, and cm-cli of ComfyUI-Manager.
|
||||||
"""
|
"""
|
||||||
|
import traceback
|
||||||
|
|
||||||
import aiohttp
|
import aiohttp
|
||||||
import json
|
import json
|
||||||
@@ -13,6 +14,7 @@ import sys
|
|||||||
import re
|
import re
|
||||||
import logging
|
import logging
|
||||||
import platform
|
import platform
|
||||||
|
import shlex
|
||||||
|
|
||||||
|
|
||||||
cache_lock = threading.Lock()
|
cache_lock = threading.Lock()
|
||||||
@@ -244,7 +246,8 @@ def get_installed_packages(renew=False):
|
|||||||
if y[0] == 'Package' or y[0].startswith('-'):
|
if y[0] == 'Package' or y[0].startswith('-'):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
pip_map[y[0]] = y[1]
|
normalized_name = y[0].lower().replace('-', '_')
|
||||||
|
pip_map[normalized_name] = y[1]
|
||||||
except subprocess.CalledProcessError:
|
except subprocess.CalledProcessError:
|
||||||
logging.error("[ComfyUI-Manager] Failed to retrieve the information of installed pip packages.")
|
logging.error("[ComfyUI-Manager] Failed to retrieve the information of installed pip packages.")
|
||||||
return set()
|
return set()
|
||||||
@@ -257,6 +260,46 @@ def clear_pip_cache():
|
|||||||
pip_map = None
|
pip_map = None
|
||||||
|
|
||||||
|
|
||||||
|
def parse_requirement_line(line):
|
||||||
|
tokens = shlex.split(line)
|
||||||
|
if not tokens:
|
||||||
|
return None
|
||||||
|
|
||||||
|
package_spec = tokens[0]
|
||||||
|
|
||||||
|
pattern = re.compile(
|
||||||
|
r'^(?P<package>[A-Za-z0-9_.+-]+)'
|
||||||
|
r'(?P<operator>==|>=|<=|!=|~=|>|<)?'
|
||||||
|
r'(?P<version>[A-Za-z0-9_.+-]*)$'
|
||||||
|
)
|
||||||
|
m = pattern.match(package_spec)
|
||||||
|
if not m:
|
||||||
|
return None
|
||||||
|
|
||||||
|
package = m.group('package')
|
||||||
|
operator = m.group('operator') or None
|
||||||
|
version = m.group('version') or None
|
||||||
|
|
||||||
|
index_url = None
|
||||||
|
if '--index-url' in tokens:
|
||||||
|
idx = tokens.index('--index-url')
|
||||||
|
if idx + 1 < len(tokens):
|
||||||
|
index_url = tokens[idx + 1]
|
||||||
|
|
||||||
|
res = {'package': package}
|
||||||
|
|
||||||
|
if operator is not None:
|
||||||
|
res['operator'] = operator
|
||||||
|
|
||||||
|
if version is not None:
|
||||||
|
res['version'] = StrictVersion(version)
|
||||||
|
|
||||||
|
if index_url is not None:
|
||||||
|
res['index_url'] = index_url
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
|
|
||||||
torch_torchvision_torchaudio_version_map = {
|
torch_torchvision_torchaudio_version_map = {
|
||||||
'2.6.0': ('0.21.0', '2.6.0'),
|
'2.6.0': ('0.21.0', '2.6.0'),
|
||||||
'2.5.1': ('0.20.0', '2.5.0'),
|
'2.5.1': ('0.20.0', '2.5.0'),
|
||||||
@@ -276,10 +319,12 @@ torch_torchvision_torchaudio_version_map = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class PIPFixer:
|
class PIPFixer:
|
||||||
def __init__(self, prev_pip_versions, comfyui_path):
|
def __init__(self, prev_pip_versions, comfyui_path, manager_files_path):
|
||||||
self.prev_pip_versions = { **prev_pip_versions }
|
self.prev_pip_versions = { **prev_pip_versions }
|
||||||
self.comfyui_path = comfyui_path
|
self.comfyui_path = comfyui_path
|
||||||
|
self.manager_files_path = manager_files_path
|
||||||
|
|
||||||
def torch_rollback(self):
|
def torch_rollback(self):
|
||||||
spec = self.prev_pip_versions['torch'].split('+')
|
spec = self.prev_pip_versions['torch'].split('+')
|
||||||
@@ -374,14 +419,20 @@ class PIPFixer:
|
|||||||
if StrictVersion(np) >= StrictVersion('2'):
|
if StrictVersion(np) >= StrictVersion('2'):
|
||||||
cmd = make_pip_cmd(['install', "numpy<2"])
|
cmd = make_pip_cmd(['install', "numpy<2"])
|
||||||
subprocess.check_output(cmd , universal_newlines=True)
|
subprocess.check_output(cmd , universal_newlines=True)
|
||||||
|
|
||||||
|
logging.info("[ComfyUI-Manager] 'numpy' dependency were fixed")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error("[ComfyUI-Manager] Failed to restore numpy")
|
logging.error("[ComfyUI-Manager] Failed to restore numpy")
|
||||||
logging.error(e)
|
logging.error(e)
|
||||||
|
|
||||||
# fix missing frontend
|
# fix missing frontend
|
||||||
try:
|
try:
|
||||||
front = new_pip_versions.get('comfyui_frontend_package')
|
# NOTE: package name in requirements is 'comfyui-frontend-package'
|
||||||
if front is None:
|
# but, package name from `pip freeze` is 'comfyui_frontend_package'
|
||||||
|
# but, package name from `uv pip freeze` is 'comfyui-frontend-package'
|
||||||
|
#
|
||||||
|
# get_installed_packages returns normalized name (i.e. comfyui_frontend_package)
|
||||||
|
if 'comfyui_frontend_package' not in new_pip_versions:
|
||||||
requirements_path = os.path.join(self.comfyui_path, 'requirements.txt')
|
requirements_path = os.path.join(self.comfyui_path, 'requirements.txt')
|
||||||
|
|
||||||
with open(requirements_path, 'r') as file:
|
with open(requirements_path, 'r') as file:
|
||||||
@@ -390,10 +441,59 @@ class PIPFixer:
|
|||||||
front_line = next((line.strip() for line in lines if line.startswith('comfyui-frontend-package')), None)
|
front_line = next((line.strip() for line in lines if line.startswith('comfyui-frontend-package')), None)
|
||||||
cmd = make_pip_cmd(['install', front_line])
|
cmd = make_pip_cmd(['install', front_line])
|
||||||
subprocess.check_output(cmd , universal_newlines=True)
|
subprocess.check_output(cmd , universal_newlines=True)
|
||||||
|
|
||||||
|
logging.info("[ComfyUI-Manager] 'comfyui-frontend-package' dependency were fixed")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error("[ComfyUI-Manager] Failed to restore comfyui_frontend_package")
|
logging.error("[ComfyUI-Manager] Failed to restore comfyui-frontend-package")
|
||||||
logging.error(e)
|
logging.error(e)
|
||||||
|
|
||||||
|
# restore based on custom list
|
||||||
|
pip_auto_fix_path = os.path.join(self.manager_files_path, "pip_auto_fix.list")
|
||||||
|
if os.path.exists(pip_auto_fix_path):
|
||||||
|
with open(pip_auto_fix_path, 'r', encoding="UTF-8", errors="ignore") as f:
|
||||||
|
fixed_list = []
|
||||||
|
|
||||||
|
for x in f.readlines():
|
||||||
|
try:
|
||||||
|
parsed = parse_requirement_line(x)
|
||||||
|
need_to_reinstall = True
|
||||||
|
|
||||||
|
normalized_name = parsed['package'].lower().replace('-', '_')
|
||||||
|
if normalized_name in new_pip_versions:
|
||||||
|
if 'version' in parsed and 'operator' in parsed:
|
||||||
|
cur = StrictVersion(new_pip_versions[parsed['package']])
|
||||||
|
dest = parsed['version']
|
||||||
|
op = parsed['operator']
|
||||||
|
if cur == dest:
|
||||||
|
if op in ['==', '>=', '<=']:
|
||||||
|
need_to_reinstall = False
|
||||||
|
elif cur < dest:
|
||||||
|
if op in ['<=', '<', '~=', '!=']:
|
||||||
|
need_to_reinstall = False
|
||||||
|
elif cur > dest:
|
||||||
|
if op in ['>=', '>', '~=', '!=']:
|
||||||
|
need_to_reinstall = False
|
||||||
|
|
||||||
|
if need_to_reinstall:
|
||||||
|
cmd_args = ['install']
|
||||||
|
if 'version' in parsed and 'operator' in parsed:
|
||||||
|
cmd_args.append(parsed['package']+parsed['operator']+parsed['version'].version_string)
|
||||||
|
|
||||||
|
if 'index_url' in parsed:
|
||||||
|
cmd_args.append('--index-url')
|
||||||
|
cmd_args.append(parsed['index_url'])
|
||||||
|
|
||||||
|
cmd = make_pip_cmd(cmd_args)
|
||||||
|
subprocess.check_output(cmd, universal_newlines=True)
|
||||||
|
|
||||||
|
fixed_list.append(parsed['package'])
|
||||||
|
except Exception as e:
|
||||||
|
traceback.print_exc()
|
||||||
|
logging.error(f"[ComfyUI-Manager] Failed to restore '{x}'")
|
||||||
|
logging.error(e)
|
||||||
|
|
||||||
|
if len(fixed_list) > 0:
|
||||||
|
logging.info(f"[ComfyUI-Manager] dependencies in pip_auto_fix.json were fixed: {fixed_list}")
|
||||||
|
|
||||||
def sanitize(data):
|
def sanitize(data):
|
||||||
return data.replace("<", "<").replace(">", ">")
|
return data.replace("<", "<").replace(">", ">")
|
||||||
|
|||||||
@@ -3960,6 +3960,17 @@
|
|||||||
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/vae/hunyuan_video_vae_bf16.safetensors",
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/vae/hunyuan_video_vae_bf16.safetensors",
|
||||||
"size": "493MB"
|
"size": "493MB"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Comfy-Org/hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"type": "diffusion_model",
|
||||||
|
"base": "Hunyuan Video",
|
||||||
|
"save_path": "diffusion_models/hunyuan_video",
|
||||||
|
"description": "Huyuan Video Image2Video diffusion model. repackaged version.",
|
||||||
|
"reference": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged",
|
||||||
|
"filename": "hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/diffusion_models/hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"size": "25.6GB"
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "Comfy-Org/llava_llama3_fp8_scaled.safetensors",
|
"name": "Comfy-Org/llava_llama3_fp8_scaled.safetensors",
|
||||||
@@ -3983,6 +3994,17 @@
|
|||||||
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/text_encoders/llava_llama3_fp16.safetensors",
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/text_encoders/llava_llama3_fp16.safetensors",
|
||||||
"size": "16.1GB"
|
"size": "16.1GB"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Comfy-Org/llava_llama3_vision.safetensors",
|
||||||
|
"type": "clip_vision",
|
||||||
|
"base": "LLaVA-Llama-3",
|
||||||
|
"save_path": "text_encoders",
|
||||||
|
"description": "llava_llama3_vision clip vison model. This is required for using Hunyuan Video Image2Video.",
|
||||||
|
"reference": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged",
|
||||||
|
"filename": "llava_llama3_vision.safetensors",
|
||||||
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/clip_vision/llava_llama3_vision.safetensors",
|
||||||
|
"size": "649MB"
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "FLUX.1 [Schnell] Diffusion model",
|
"name": "FLUX.1 [Schnell] Diffusion model",
|
||||||
@@ -4547,6 +4569,17 @@
|
|||||||
"url": "https://huggingface.co/Lightricks/LTX-Video/resolve/main/ltx-video-2b-v0.9.1.safetensors",
|
"url": "https://huggingface.co/Lightricks/LTX-Video/resolve/main/ltx-video-2b-v0.9.1.safetensors",
|
||||||
"size": "5.72GB"
|
"size": "5.72GB"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "LTX-Video 2B v0.9.5 Checkpoint",
|
||||||
|
"type": "checkpoint",
|
||||||
|
"base": "LTX-Video",
|
||||||
|
"save_path": "checkpoints/LTXV",
|
||||||
|
"description": "LTX-Video is the first DiT-based video generation model capable of generating high-quality videos in real-time. It produces 24 FPS videos at a 768x512 resolution faster than they can be watched. Trained on a large-scale dataset of diverse videos, the model generates high-resolution videos with realistic and varied content.",
|
||||||
|
"reference": "https://huggingface.co/Lightricks/LTX-Video",
|
||||||
|
"filename": "ltx-video-2b-v0.9.5.safetensors",
|
||||||
|
"url": "https://huggingface.co/Lightricks/LTX-Video/resolve/main/ltx-video-2b-v0.9.5.safetensors",
|
||||||
|
"size": "6.34GB"
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "XLabs-AI/flux-canny-controlnet-v3.safetensors",
|
"name": "XLabs-AI/flux-canny-controlnet-v3.safetensors",
|
||||||
|
|||||||
@@ -12,6 +12,56 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"author": "aria1th",
|
||||||
|
"title": "ComfyUI-camietagger-onnx",
|
||||||
|
"reference": "https://github.com/aria1th/ComfyUI-camietagger-onnx",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/aria1th/ComfyUI-camietagger-onnx"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "NODES: Camie Tagger"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "zjkhurry",
|
||||||
|
"title": "comfyui_MetalFX [WIP]",
|
||||||
|
"reference": "https://github.com/zjkhurry/comfyui_MetalFX",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/zjkhurry/comfyui_MetalFX"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A custom node for ComfyUI that enables high-quality image and video upscaling using Apple MetalFX technology.\nNOTE: The files in the repo are not organized."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "IfnotFr",
|
||||||
|
"title": "ComfyUI-Connect [WIP]",
|
||||||
|
"reference": "https://github.com/IfnotFr/ComfyUI-Connect",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/IfnotFr/ComfyUI-Connect"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "Transform your ComfyUI into a powerful API, exposing all your saved workflows as ready-to-use HTTP endpoints."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "RoyKillington",
|
||||||
|
"title": "Miscomfy Nodes [WIP]",
|
||||||
|
"reference": "https://github.com/RoyKillington/miscomfy-nodes",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/RoyKillington/miscomfy-nodes"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A repo of custom nodes for ComfyUI, from interacting with certain APIs to whatever other miscellanea I end up making"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "xmarked-ai",
|
||||||
|
"title": "ComfyUI_misc",
|
||||||
|
"reference": "https://github.com/xmarked-ai/ComfyUI_misc",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/xmarked-ai/ComfyUI_misc"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "NODES: Ace IntegerX, Ace FloatX, Ace Color FixX, White Balance X, Depth Displace X, Empty Latent X, KSampler Combo X, ..."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "Elypha",
|
"author": "Elypha",
|
||||||
"title": "ComfyUI-Prompt-Helper [WIP]",
|
"title": "ComfyUI-Prompt-Helper [WIP]",
|
||||||
@@ -804,16 +854,6 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "nodes for deepseek api\nNOTE: The files in the repo are not organized."
|
"description": "nodes for deepseek api\nNOTE: The files in the repo are not organized."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"author": "807502278",
|
|
||||||
"title": "ComfyUI_TensorRT_Merge [WIP]",
|
|
||||||
"reference": "https://github.com/807502278/ComfyUI_TensorRT_Merge",
|
|
||||||
"files": [
|
|
||||||
"https://github.com/807502278/ComfyUI_TensorRT_Merge"
|
|
||||||
],
|
|
||||||
"install_type": "git-clone",
|
|
||||||
"description": "Non diffusion models supported by TensorRT, merged Comfyui plugin, added onnx automatic download and trt model conversion nodes."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"author": "IfnotFr",
|
"author": "IfnotFr",
|
||||||
"title": "ComfyUI-Ifnot-Pack",
|
"title": "ComfyUI-Ifnot-Pack",
|
||||||
|
|||||||
@@ -176,27 +176,6 @@
|
|||||||
"title_aux": "comfyui-promptbymood [WIP]"
|
"title_aux": "comfyui-promptbymood [WIP]"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"https://github.com/807502278/ComfyUI_TensorRT_Merge": [
|
|
||||||
[
|
|
||||||
"BiRefNet2_tensort",
|
|
||||||
"BiRefNet_TRT",
|
|
||||||
"Building_TRT",
|
|
||||||
"Custom_Building_TRT",
|
|
||||||
"DepthAnything_Tensorrt",
|
|
||||||
"Dwpose_Tensorrt",
|
|
||||||
"FaceRestoreTensorrt",
|
|
||||||
"RifeTensorrt",
|
|
||||||
"UpscalerTensorrt",
|
|
||||||
"YoloNasPoseTensorrt",
|
|
||||||
"load_BiRefNet2_tensort",
|
|
||||||
"load_BiRefNet_TRT",
|
|
||||||
"load_DepthAnything_Tensorrt",
|
|
||||||
"load_Dwpos_Tensorrt"
|
|
||||||
],
|
|
||||||
{
|
|
||||||
"title_aux": "ComfyUI_TensorRT_Merge [WIP]"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"https://github.com/A4P7J1N7M05OT/ComfyUI-ManualSigma": [
|
"https://github.com/A4P7J1N7M05OT/ComfyUI-ManualSigma": [
|
||||||
[
|
[
|
||||||
"ManualSigma"
|
"ManualSigma"
|
||||||
@@ -987,7 +966,6 @@
|
|||||||
"DeepSeekImageAnalyst",
|
"DeepSeekImageAnalyst",
|
||||||
"DeepSeekImageGeneration",
|
"DeepSeekImageGeneration",
|
||||||
"DeepSeekModelLoader",
|
"DeepSeekModelLoader",
|
||||||
"GoogleDriveUpload",
|
|
||||||
"ImagePreprocessor",
|
"ImagePreprocessor",
|
||||||
"LLM_Loader",
|
"LLM_Loader",
|
||||||
"OpenAICompatibleLoader",
|
"OpenAICompatibleLoader",
|
||||||
@@ -1376,22 +1354,28 @@
|
|||||||
[
|
[
|
||||||
"A1111_FLUX_DATA_NODE",
|
"A1111_FLUX_DATA_NODE",
|
||||||
"CategorizeNode",
|
"CategorizeNode",
|
||||||
|
"Data_handle_Node",
|
||||||
|
"DeepSeek_Node",
|
||||||
"Delay_node",
|
"Delay_node",
|
||||||
|
"DongShowTextNode",
|
||||||
|
"Dong_Pixelate_Node",
|
||||||
|
"Dong_Text_Node",
|
||||||
"Downloader",
|
"Downloader",
|
||||||
"FileMoveNode",
|
"FileMoveNode",
|
||||||
"FolderIteratorNODE",
|
"FolderIteratorNODE",
|
||||||
"Get_cookies_Node",
|
"Get_cookies_Node",
|
||||||
"Get_json_value_Node",
|
"Get_json_value_Node",
|
||||||
|
"Get_video_Node",
|
||||||
"HashCalculationsNode",
|
"HashCalculationsNode",
|
||||||
"HuggingFaceUploadNode",
|
"HuggingFaceUploadNode",
|
||||||
"IMG2URLNode",
|
"IMG2URLNode",
|
||||||
"Image2GIFNode",
|
"Image2GIFNode",
|
||||||
"ImageDownloader",
|
"ImageDownloader",
|
||||||
"InputDetectionNode",
|
"ImageResizeNode",
|
||||||
"LLM_Node",
|
|
||||||
"LibLib_upload_Node",
|
"LibLib_upload_Node",
|
||||||
"LogicToolsNode",
|
"LogicToolsNode",
|
||||||
"LoraIterator",
|
"LoraIterator",
|
||||||
|
"PromptConcatNode",
|
||||||
"RandomNumbersNode",
|
"RandomNumbersNode",
|
||||||
"RenameNode",
|
"RenameNode",
|
||||||
"ResolutionNode",
|
"ResolutionNode",
|
||||||
@@ -1401,6 +1385,7 @@
|
|||||||
"TranslateAPINode",
|
"TranslateAPINode",
|
||||||
"ZIPwith7zNode",
|
"ZIPwith7zNode",
|
||||||
"img_understanding_Node",
|
"img_understanding_Node",
|
||||||
|
"klingai_video_Node",
|
||||||
"path_join_Node",
|
"path_join_Node",
|
||||||
"save_img_NODE",
|
"save_img_NODE",
|
||||||
"set_api_Node"
|
"set_api_Node"
|
||||||
@@ -1538,6 +1523,14 @@
|
|||||||
"title_aux": "Comfy UI Robe Nodes [UNSAFE]"
|
"title_aux": "Comfy UI Robe Nodes [UNSAFE]"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/RoyKillington/miscomfy-nodes": [
|
||||||
|
[
|
||||||
|
"VeniceUpscale"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "Miscomfy Nodes [WIP]"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/SS-snap/ComfyUI-Snap_Processing": [
|
"https://github.com/SS-snap/ComfyUI-Snap_Processing": [
|
||||||
[
|
[
|
||||||
"AreaCalculator",
|
"AreaCalculator",
|
||||||
@@ -2097,6 +2090,14 @@
|
|||||||
"title_aux": "ComfyUI-SkipCFGSigmas"
|
"title_aux": "ComfyUI-SkipCFGSigmas"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/aria1th/ComfyUI-camietagger-onnx": [
|
||||||
|
[
|
||||||
|
"CamieTagger"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-camietagger-onnx"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/artem-konevskikh/comfyui-split-merge-video": [
|
"https://github.com/artem-konevskikh/comfyui-split-merge-video": [
|
||||||
[
|
[
|
||||||
"VideoMerger",
|
"VideoMerger",
|
||||||
@@ -2578,6 +2579,7 @@
|
|||||||
"GLIGENLoader",
|
"GLIGENLoader",
|
||||||
"GLIGENTextBoxApply",
|
"GLIGENTextBoxApply",
|
||||||
"GrowMask",
|
"GrowMask",
|
||||||
|
"HunyuanImageToVideo",
|
||||||
"HyperTile",
|
"HyperTile",
|
||||||
"HypernetworkLoader",
|
"HypernetworkLoader",
|
||||||
"ImageBatch",
|
"ImageBatch",
|
||||||
@@ -2767,6 +2769,7 @@
|
|||||||
"TestVariadicAverage",
|
"TestVariadicAverage",
|
||||||
"TestWhileLoopClose",
|
"TestWhileLoopClose",
|
||||||
"TestWhileLoopOpen",
|
"TestWhileLoopOpen",
|
||||||
|
"TextEncodeHunyuanVideo_ImageToVideo",
|
||||||
"ThresholdMask",
|
"ThresholdMask",
|
||||||
"TomePatchModel",
|
"TomePatchModel",
|
||||||
"TorchCompileModel",
|
"TorchCompileModel",
|
||||||
@@ -3217,8 +3220,12 @@
|
|||||||
"XIS_FromListGet1Model",
|
"XIS_FromListGet1Model",
|
||||||
"XIS_FromListGet1String",
|
"XIS_FromListGet1String",
|
||||||
"XIS_INT_Slider",
|
"XIS_INT_Slider",
|
||||||
|
"XIS_ImageMaskMirror",
|
||||||
|
"XIS_InvertMask",
|
||||||
|
"XIS_IsThereAnyData",
|
||||||
"XIS_PromptsWithSwitches",
|
"XIS_PromptsWithSwitches",
|
||||||
"XIS_ResizeImageOrMask"
|
"XIS_ResizeImageOrMask",
|
||||||
|
"XIS_ResizeToDivisible"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "Xiser_Nodes [WIP]"
|
"title_aux": "Xiser_Nodes [WIP]"
|
||||||
@@ -3898,6 +3905,8 @@
|
|||||||
"HyVideoEmptyTextEmbeds",
|
"HyVideoEmptyTextEmbeds",
|
||||||
"HyVideoEncode",
|
"HyVideoEncode",
|
||||||
"HyVideoEnhanceAVideo",
|
"HyVideoEnhanceAVideo",
|
||||||
|
"HyVideoGetClosestBucketSize",
|
||||||
|
"HyVideoI2VEncode",
|
||||||
"HyVideoInverseSampler",
|
"HyVideoInverseSampler",
|
||||||
"HyVideoLatentPreview",
|
"HyVideoLatentPreview",
|
||||||
"HyVideoLoraBlockEdit",
|
"HyVideoLoraBlockEdit",
|
||||||
@@ -5591,6 +5600,31 @@
|
|||||||
"title_aux": "CombineMasksNode"
|
"title_aux": "CombineMasksNode"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/xmarked-ai/ComfyUI_misc": [
|
||||||
|
[
|
||||||
|
"AceColorFixX",
|
||||||
|
"AceFloatX",
|
||||||
|
"AceIntegerX",
|
||||||
|
"CheckpointLoaderBNB_X",
|
||||||
|
"CheckpointLoaderNF4_X",
|
||||||
|
"DepthDisplaceX",
|
||||||
|
"EmptyLatentX",
|
||||||
|
"IfConditionX",
|
||||||
|
"ImageTileSquare",
|
||||||
|
"ImageUntileSquare",
|
||||||
|
"KSamplerComboX",
|
||||||
|
"LoopCloseX",
|
||||||
|
"LoopOpenX",
|
||||||
|
"LoraBatchSamplerX",
|
||||||
|
"RelightX",
|
||||||
|
"RemoveBackgroundX",
|
||||||
|
"UnetLoaderBNB_X",
|
||||||
|
"WhiteBalanceX"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI_misc"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/yanhuifair/ComfyUI-FairLab": [
|
"https://github.com/yanhuifair/ComfyUI-FairLab": [
|
||||||
[
|
[
|
||||||
"CLIPTranslatedNode",
|
"CLIPTranslatedNode",
|
||||||
@@ -5674,6 +5708,14 @@
|
|||||||
"title_aux": "Comfyui_image2prompt"
|
"title_aux": "Comfyui_image2prompt"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/zjkhurry/comfyui_MetalFX": [
|
||||||
|
[
|
||||||
|
"metalFXImg"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "comfyui_MetalFX [WIP]"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/zyd232/ComfyUI-zyd232-Nodes": [
|
"https://github.com/zyd232/ComfyUI-zyd232-Nodes": [
|
||||||
[
|
[
|
||||||
"zyd232 ImagesPixelsCompare",
|
"zyd232 ImagesPixelsCompare",
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -11,6 +11,26 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"author": "807502278",
|
||||||
|
"title": "ComfyUI_TensorRT_Merge [REMOVED]",
|
||||||
|
"reference": "https://github.com/807502278/ComfyUI_TensorRT_Merge",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/807502278/ComfyUI_TensorRT_Merge"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "Non diffusion models supported by TensorRT, merged Comfyui plugin, added onnx automatic download and trt model conversion nodes."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "logtd",
|
||||||
|
"title": "ComfyUI-LTXTricks [DEPRECATED]",
|
||||||
|
"reference": "https://github.com/logtd/ComfyUI-LTXTricks",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/logtd/ComfyUI-LTXTricks"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A set of nodes that provide additional controls for the LTX Video model"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "JichaoLiang",
|
"author": "JichaoLiang",
|
||||||
"title": "Immortal_comfyUI [REMOVED]",
|
"title": "Immortal_comfyUI [REMOVED]",
|
||||||
|
|||||||
@@ -10,7 +10,37 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"author": "GeekyGhost",
|
||||||
|
"title": "ComfyUI-Geeky-Kokoro-TTS",
|
||||||
|
"reference": "https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A powerful and feature-rich custom node collection for ComfyUI that integrates the Kokoro TTS (Text-to-Speech) system with advanced voice modification capabilities. This package allows you to generate natural-sounding speech and apply various voice effects within ComfyUI workflows."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "billwuhao",
|
||||||
|
"title": "ComfyUI_KokoroTTS_MW",
|
||||||
|
"reference": "https://github.com/billwuhao/ComfyUI_KokoroTTS_MW",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/billwuhao/ComfyUI_KokoroTTS_MW"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A Text To Speech node using Kokoro TTS in ComfyUI. Supports 8 languages and 150 voices"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "S4MUEL404",
|
||||||
|
"title": "Image Position Blend",
|
||||||
|
"id": "ComfyUI-Image-Position-Blend",
|
||||||
|
"reference": "https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A custom node for conveniently adjusting the overlay position of two images."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "pxl-pshr",
|
"author": "pxl-pshr",
|
||||||
"title": "GlitchNodes",
|
"title": "GlitchNodes",
|
||||||
|
|||||||
@@ -2547,6 +2547,7 @@
|
|||||||
"Base64ToConditioning",
|
"Base64ToConditioning",
|
||||||
"CLIPTextEncodeFluxUnguided",
|
"CLIPTextEncodeFluxUnguided",
|
||||||
"ClownRegionalConditioning",
|
"ClownRegionalConditioning",
|
||||||
|
"ClownRegionalConditioning3",
|
||||||
"Conditioning Recast FP64",
|
"Conditioning Recast FP64",
|
||||||
"ConditioningAdd",
|
"ConditioningAdd",
|
||||||
"ConditioningAverageScheduler",
|
"ConditioningAverageScheduler",
|
||||||
@@ -4151,6 +4152,15 @@
|
|||||||
"title_aux": "ComfyUI-SD3LatentSelectRes"
|
"title_aux": "ComfyUI-SD3LatentSelectRes"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/GeekyGhost/ComfyUI-Geeky-Kokoro-TTS": [
|
||||||
|
[
|
||||||
|
"GeekyKokoroAdvancedVoice",
|
||||||
|
"GeekyKokoroTTS"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-Geeky-Kokoro-TTS"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB": [
|
"https://github.com/GeekyGhost/ComfyUI-GeekyRemB": [
|
||||||
[
|
[
|
||||||
"GeekyRemB"
|
"GeekyRemB"
|
||||||
@@ -5970,6 +5980,27 @@
|
|||||||
"title_aux": "ComfyUI-LivePortraitNode (Replicate API)"
|
"title_aux": "ComfyUI-LivePortraitNode (Replicate API)"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/Lightricks/ComfyUI-LTXVideo": [
|
||||||
|
[
|
||||||
|
"AddLatentGuide",
|
||||||
|
"LTXAttentioOverride",
|
||||||
|
"LTXAttentionBank",
|
||||||
|
"LTXAttnOverride",
|
||||||
|
"LTXFetaEnhance",
|
||||||
|
"LTXFlowEditCFGGuider",
|
||||||
|
"LTXFlowEditSampler",
|
||||||
|
"LTXForwardModelSamplingPred",
|
||||||
|
"LTXPerturbedAttention",
|
||||||
|
"LTXPrepareAttnInjections",
|
||||||
|
"LTXRFForwardODESampler",
|
||||||
|
"LTXRFReverseODESampler",
|
||||||
|
"LTXReverseModelSamplingPred",
|
||||||
|
"ModifyLTXModel"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-LTXVideo"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/Limitex/ComfyUI-Calculation": [
|
"https://github.com/Limitex/ComfyUI-Calculation": [
|
||||||
[
|
[
|
||||||
"CenterCalculation",
|
"CenterCalculation",
|
||||||
@@ -7862,6 +7893,14 @@
|
|||||||
"title_aux": "comfyui_io_helpers"
|
"title_aux": "comfyui_io_helpers"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/S4MUEL-404/ComfyUI-Image-Position-Blend": [
|
||||||
|
[
|
||||||
|
"ImagePositionBlend"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "Image Position Blend"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/SEkINVR/ComfyUI-SaveAs": [
|
"https://github.com/SEkINVR/ComfyUI-SaveAs": [
|
||||||
[
|
[
|
||||||
"ComfyUISaveAs"
|
"ComfyUISaveAs"
|
||||||
@@ -11442,7 +11481,8 @@
|
|||||||
"https://github.com/aidenli/ComfyUI_NYJY": [
|
"https://github.com/aidenli/ComfyUI_NYJY": [
|
||||||
[
|
[
|
||||||
"CivitaiPrompt",
|
"CivitaiPrompt",
|
||||||
"ConverAnyToString",
|
"ConvertAnyToString",
|
||||||
|
"ConvertStringToNumber",
|
||||||
"CustomLatentImage-NYJY",
|
"CustomLatentImage-NYJY",
|
||||||
"CustomLatentImageSimple",
|
"CustomLatentImageSimple",
|
||||||
"FloatSlider-NYJY",
|
"FloatSlider-NYJY",
|
||||||
@@ -12613,6 +12653,15 @@
|
|||||||
"title_aux": "ComfyUI_TextAssets"
|
"title_aux": "ComfyUI_TextAssets"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/billwuhao/ComfyUI_KokoroTTS_MW": [
|
||||||
|
[
|
||||||
|
"Kokoro Run",
|
||||||
|
"Kokoro ZH Run"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI_KokoroTTS_MW"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/billwuhao/ComfyUI_OneButtonPrompt_Flux": [
|
"https://github.com/billwuhao/ComfyUI_OneButtonPrompt_Flux": [
|
||||||
[
|
[
|
||||||
"DeepseekRun",
|
"DeepseekRun",
|
||||||
@@ -14700,6 +14749,7 @@
|
|||||||
"GLIGENLoader",
|
"GLIGENLoader",
|
||||||
"GLIGENTextBoxApply",
|
"GLIGENTextBoxApply",
|
||||||
"GrowMask",
|
"GrowMask",
|
||||||
|
"HunyuanImageToVideo",
|
||||||
"HyperTile",
|
"HyperTile",
|
||||||
"HypernetworkLoader",
|
"HypernetworkLoader",
|
||||||
"ImageBatch",
|
"ImageBatch",
|
||||||
@@ -14889,6 +14939,7 @@
|
|||||||
"TestVariadicAverage",
|
"TestVariadicAverage",
|
||||||
"TestWhileLoopClose",
|
"TestWhileLoopClose",
|
||||||
"TestWhileLoopOpen",
|
"TestWhileLoopOpen",
|
||||||
|
"TextEncodeHunyuanVideo_ImageToVideo",
|
||||||
"ThresholdMask",
|
"ThresholdMask",
|
||||||
"TomePatchModel",
|
"TomePatchModel",
|
||||||
"TorchCompileModel",
|
"TorchCompileModel",
|
||||||
@@ -20005,7 +20056,7 @@
|
|||||||
"description": "A ComfyUI plugin for efficient image sequence processing. Features frame insertion, duplication, and removal with intuitive controls.",
|
"description": "A ComfyUI plugin for efficient image sequence processing. Features frame insertion, duplication, and removal with intuitive controls.",
|
||||||
"nickname": "QuickSeq",
|
"nickname": "QuickSeq",
|
||||||
"title": "Quick Image Sequence Process",
|
"title": "Quick Image Sequence Process",
|
||||||
"title_aux": "Quick Image Sequence Process"
|
"title_aux": "ComfyUI-QuickImageSequenceProcess"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"https://github.com/kealiu/ComfyUI-S3-Tools": [
|
"https://github.com/kealiu/ComfyUI-S3-Tools": [
|
||||||
@@ -20040,7 +20091,8 @@
|
|||||||
"BinarizeImage",
|
"BinarizeImage",
|
||||||
"BinarizeImageUsingOtsu",
|
"BinarizeImageUsingOtsu",
|
||||||
"BrightnessTransparency",
|
"BrightnessTransparency",
|
||||||
"GrayscaleImage"
|
"GrayscaleImage",
|
||||||
|
"RemoveWhiteBackgroundNoise"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-Image-Toolkit"
|
"title_aux": "ComfyUI-Image-Toolkit"
|
||||||
@@ -20339,6 +20391,8 @@
|
|||||||
"HyVideoEmptyTextEmbeds",
|
"HyVideoEmptyTextEmbeds",
|
||||||
"HyVideoEncode",
|
"HyVideoEncode",
|
||||||
"HyVideoEnhanceAVideo",
|
"HyVideoEnhanceAVideo",
|
||||||
|
"HyVideoGetClosestBucketSize",
|
||||||
|
"HyVideoI2VEncode",
|
||||||
"HyVideoInverseSampler",
|
"HyVideoInverseSampler",
|
||||||
"HyVideoLatentPreview",
|
"HyVideoLatentPreview",
|
||||||
"HyVideoLoraBlockEdit",
|
"HyVideoLoraBlockEdit",
|
||||||
@@ -21807,27 +21861,6 @@
|
|||||||
"title_aux": "ComfyUI-InversedNoise"
|
"title_aux": "ComfyUI-InversedNoise"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"https://github.com/logtd/ComfyUI-LTXTricks": [
|
|
||||||
[
|
|
||||||
"AddLatentGuide",
|
|
||||||
"LTXAttentioOverride",
|
|
||||||
"LTXAttentionBank",
|
|
||||||
"LTXAttnOverride",
|
|
||||||
"LTXFetaEnhance",
|
|
||||||
"LTXFlowEditCFGGuider",
|
|
||||||
"LTXFlowEditSampler",
|
|
||||||
"LTXForwardModelSamplingPred",
|
|
||||||
"LTXPerturbedAttention",
|
|
||||||
"LTXPrepareAttnInjections",
|
|
||||||
"LTXRFForwardODESampler",
|
|
||||||
"LTXRFReverseODESampler",
|
|
||||||
"LTXReverseModelSamplingPred",
|
|
||||||
"ModifyLTXModel"
|
|
||||||
],
|
|
||||||
{
|
|
||||||
"title_aux": "ComfyUI-LTXTricks"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"https://github.com/logtd/ComfyUI-MochiEdit": [
|
"https://github.com/logtd/ComfyUI-MochiEdit": [
|
||||||
[
|
[
|
||||||
"MochiPrepareSigmas",
|
"MochiPrepareSigmas",
|
||||||
@@ -23297,7 +23330,7 @@
|
|||||||
"SingleBooleanTrigger",
|
"SingleBooleanTrigger",
|
||||||
"SixBooleanTrigger",
|
"SixBooleanTrigger",
|
||||||
"StepsAndCfg",
|
"StepsAndCfg",
|
||||||
"TextBox",
|
"TextBoxMira",
|
||||||
"TextCombinerSix",
|
"TextCombinerSix",
|
||||||
"TextCombinerTwo",
|
"TextCombinerTwo",
|
||||||
"TextLoopCombiner",
|
"TextLoopCombiner",
|
||||||
@@ -27188,6 +27221,7 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/sugarkwork/comfyui_tag_fillter": [
|
"https://github.com/sugarkwork/comfyui_tag_fillter": [
|
||||||
[
|
[
|
||||||
|
"TagCategory",
|
||||||
"TagCategoryEnhance",
|
"TagCategoryEnhance",
|
||||||
"TagComparator",
|
"TagComparator",
|
||||||
"TagEnhance",
|
"TagEnhance",
|
||||||
|
|||||||
@@ -1,5 +1,39 @@
|
|||||||
{
|
{
|
||||||
"models": [
|
"models": [
|
||||||
|
{
|
||||||
|
"name": "Comfy-Org/hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"type": "diffusion_model",
|
||||||
|
"base": "Hunyuan Video",
|
||||||
|
"save_path": "diffusion_models/hunyuan_video",
|
||||||
|
"description": "Huyuan Video Image2Video diffusion model. repackaged version.",
|
||||||
|
"reference": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged",
|
||||||
|
"filename": "hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/diffusion_models/hunyuan_video_image_to_video_720p_bf16.safetensors",
|
||||||
|
"size": "25.6GB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Comfy-Org/llava_llama3_vision.safetensors",
|
||||||
|
"type": "clip_vision",
|
||||||
|
"base": "LLaVA-Llama-3",
|
||||||
|
"save_path": "text_encoders",
|
||||||
|
"description": "llava_llama3_vision clip vison model. This is required for using Hunyuan Video Image2Video.",
|
||||||
|
"reference": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged",
|
||||||
|
"filename": "llava_llama3_vision.safetensors",
|
||||||
|
"url": "https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/resolve/main/split_files/clip_vision/llava_llama3_vision.safetensors",
|
||||||
|
"size": "649MB"
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"name": "LTX-Video 2B v0.9.5 Checkpoint",
|
||||||
|
"type": "checkpoint",
|
||||||
|
"base": "LTX-Video",
|
||||||
|
"save_path": "checkpoints/LTXV",
|
||||||
|
"description": "LTX-Video is the first DiT-based video generation model capable of generating high-quality videos in real-time. It produces 24 FPS videos at a 768x512 resolution faster than they can be watched. Trained on a large-scale dataset of diverse videos, the model generates high-resolution videos with realistic and varied content.",
|
||||||
|
"reference": "https://huggingface.co/Lightricks/LTX-Video",
|
||||||
|
"filename": "ltx-video-2b-v0.9.5.safetensors",
|
||||||
|
"url": "https://huggingface.co/Lightricks/LTX-Video/resolve/main/ltx-video-2b-v0.9.5.safetensors",
|
||||||
|
"size": "6.34GB"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "kolors/vae/diffusion_pytorch_model.fp16.safetensors",
|
"name": "kolors/vae/diffusion_pytorch_model.fp16.safetensors",
|
||||||
"type": "VAE",
|
"type": "VAE",
|
||||||
|
|||||||
@@ -507,7 +507,7 @@ check_bypass_ssl()
|
|||||||
# Perform install
|
# Perform install
|
||||||
processed_install = set()
|
processed_install = set()
|
||||||
script_list_path = os.path.join(folder_paths.user_directory, "default", "ComfyUI-Manager", "startup-scripts", "install-scripts.txt")
|
script_list_path = os.path.join(folder_paths.user_directory, "default", "ComfyUI-Manager", "startup-scripts", "install-scripts.txt")
|
||||||
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path)
|
pip_fixer = manager_util.PIPFixer(manager_util.get_installed_packages(), comfy_path, manager_files_path)
|
||||||
|
|
||||||
|
|
||||||
def is_installed(name):
|
def is_installed(name):
|
||||||
@@ -816,11 +816,11 @@ if script_executed:
|
|||||||
else:
|
else:
|
||||||
sys_argv = sys.argv.copy()
|
sys_argv = sys.argv.copy()
|
||||||
|
|
||||||
if sys.platform.startswith('win32'):
|
if sys_argv[0].endswith("__main__.py"): # this is a python module
|
||||||
cmds = ['"' + sys.executable + '"', '"' + sys_argv[0] + '"'] + sys_argv[1:]
|
|
||||||
elif sys_argv[0].endswith("__main__.py"): # this is a python module
|
|
||||||
module_name = os.path.basename(os.path.dirname(sys_argv[0]))
|
module_name = os.path.basename(os.path.dirname(sys_argv[0]))
|
||||||
cmds = [sys.executable, '-m', module_name] + sys_argv[1:]
|
cmds = [sys.executable, '-m', module_name] + sys_argv[1:]
|
||||||
|
elif sys.platform.startswith('win32'):
|
||||||
|
cmds = ['"' + sys.executable + '"', '"' + sys_argv[0] + '"'] + sys_argv[1:]
|
||||||
else:
|
else:
|
||||||
cmds = [sys.executable] + sys_argv
|
cmds = [sys.executable] + sys_argv
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "comfyui-manager"
|
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."
|
description = "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI."
|
||||||
version = "3.29"
|
version = "3.30.2"
|
||||||
license = { file = "LICENSE.txt" }
|
license = { file = "LICENSE.txt" }
|
||||||
dependencies = ["GitPython", "PyGithub", "matrix-client==0.4.0", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions", "toml", "uv", "chardet"]
|
dependencies = ["GitPython", "PyGithub", "matrix-client==0.4.0", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions", "toml", "uv", "chardet"]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user