Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
15ecb5b1d4 | ||
|
|
00a2ac7f2f | ||
|
|
4d34b5a3ee | ||
|
|
32dcedd703 | ||
|
|
42d48e4bfb | ||
|
|
6b12e9902c | ||
|
|
2801b929e7 | ||
|
|
16db68aa8e |
29
README.md
29
README.md
@@ -133,14 +133,29 @@ This repository provides Colab notebooks that allow you to install and use Comfy
|
|||||||
* `All`: Show a dialog where the user can select a title for sharing.
|
* `All`: Show a dialog where the user can select a title for sharing.
|
||||||
|
|
||||||
|
|
||||||
|
## Paths
|
||||||
|
In `ComfyUI-Manager` V3.0 and later, configuration files and dynamically generated files are located under `<USER_DIRECTORY>/default/ComfyUI-Manager/`.
|
||||||
|
|
||||||
|
* <USER_DIRECTORY>
|
||||||
|
* If executed without any options, the path defaults to ComfyUI/user.
|
||||||
|
* It can be set using --user-directory <USER_DIRECTORY>.
|
||||||
|
|
||||||
|
* Basic config files: `<USER_DIRECTORY>/default/ComfyUI-Manager/config.ini`
|
||||||
|
* Configurable channel lists: `<USER_DIRECTORY>/default/ComfyUI-Manager/channels.ini`
|
||||||
|
* Configurable pip overrides: `<USER_DIRECTORY>/default/ComfyUI-Manager/pip_overrides.json`
|
||||||
|
* Saved snapshot files: `<USER_DIRECTORY>/default/ComfyUI-Manager/snapshots`
|
||||||
|
* Startup script files: `<USER_DIRECTORY>/default/ComfyUI-Manager/startup-scripts`
|
||||||
|
* Component files: `<USER_DIRECTORY>/default/ComfyUI-Manager/components`
|
||||||
|
|
||||||
|
|
||||||
## Snapshot-Manager
|
## Snapshot-Manager
|
||||||
* When you press `Save snapshot` or use `Update All` on `Manager Menu`, the current installation status snapshot is saved.
|
* When you press `Save snapshot` or use `Update All` on `Manager Menu`, the current installation status snapshot is saved.
|
||||||
* Snapshot file dir: `ComfyUI-Manager/snapshots`
|
* Snapshot file dir: `<USER_DIRECTORY>/default/ComfyUI-Manager/snapshots`
|
||||||
* You can rename snapshot file.
|
* You can rename snapshot file.
|
||||||
* Press the "Restore" button to revert to the installation status of the respective snapshot.
|
* Press the "Restore" button to revert to the installation status of the respective snapshot.
|
||||||
* However, for custom nodes not managed by Git, snapshot support is incomplete.
|
* However, for custom nodes not managed by Git, snapshot support is incomplete.
|
||||||
* When you press `Restore`, it will take effect on the next ComfyUI startup.
|
* When you press `Restore`, it will take effect on the next ComfyUI startup.
|
||||||
* The selected snapshot file is saved in `ComfyUI-Manager/startup-scripts/restore-snapshot.json`, and upon restarting ComfyUI, the snapshot is applied and then deleted.
|
* The selected snapshot file is saved in `<USER_DIRECTORY>/default/ComfyUI-Manager/startup-scripts/restore-snapshot.json`, and upon restarting ComfyUI, the snapshot is applied and then deleted.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -188,12 +203,12 @@ This repository provides Colab notebooks that allow you to install and use Comfy
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
* `<current timestamp>` Ensure that the timestamp is always unique.
|
* `<current timestamp>` Ensure that the timestamp is always unique.
|
||||||
* "components" should have the same structure as the content of the file stored in ComfyUI-Manager/components.
|
* "components" should have the same structure as the content of the file stored in `<USER_DIRECTORY>/default/ComfyUI-Manager/components`.
|
||||||
* `<component name>`: The name should be in the format `<prefix>::<node name>`.
|
* `<component name>`: The name should be in the format `<prefix>::<node name>`.
|
||||||
* `<compnent nodeata>`: In the nodedata of the group node.
|
* `<compnent nodeata>`: In the nodedata of the group node.
|
||||||
* `<version>`: Only two formats are allowed: `major.minor.patch` or `major.minor`. (e.g. `1.0`, `2.2.1`)
|
* `<version>`: Only two formats are allowed: `major.minor.patch` or `major.minor`. (e.g. `1.0`, `2.2.1`)
|
||||||
* `<datetime>`: Saved time
|
* `<datetime>`: Saved time
|
||||||
* `<packname>`: If the packname is not empty, the category becomes packname/workflow, and it is saved in the <packname>.pack file in ComfyUI-Manager/components.
|
* `<packname>`: If the packname is not empty, the category becomes packname/workflow, and it is saved in the <packname>.pack file in `<USER_DIRECTORY>/default/ComfyUI-Manager/components`.
|
||||||
* `<category>`: If there is neither a category nor a packname, it is saved in the components category.
|
* `<category>`: If there is neither a category nor a packname, it is saved in the components category.
|
||||||
```
|
```
|
||||||
"version":"1.0",
|
"version":"1.0",
|
||||||
@@ -268,12 +283,8 @@ When you run the `scan.sh` script:
|
|||||||
|
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
* If your `git.exe` is installed in a specific location other than system git, please install ComfyUI-Manager and run ComfyUI. Then, specify the path including the file name in `git_exe = ` in the ComfyUI-Manager/config.ini file that is generated.
|
* If your `git.exe` is installed in a specific location other than system git, please install ComfyUI-Manager and run ComfyUI. Then, specify the path including the file name in `git_exe = ` in the `<USER_DIRECTORY>/default/ComfyUI-Manager/config.ini` file that is generated.
|
||||||
* If updating ComfyUI-Manager itself fails, please go to the **ComfyUI-Manager** directory and execute the command `git update-ref refs/remotes/origin/main a361cc1 && git fetch --all && git pull`.
|
* If updating ComfyUI-Manager itself fails, please go to the **ComfyUI-Manager** directory and execute the command `git update-ref refs/remotes/origin/main a361cc1 && git fetch --all && git pull`.
|
||||||
* Alternatively, download the update-fix.py script from [update-fix.py](https://github.com/ltdrdata/ComfyUI-Manager/raw/main/scripts/update-fix.py) and place it in the ComfyUI-Manager directory. Then, run it using your Python command.
|
|
||||||
For the portable version, use `..\..\..\python_embeded\python.exe update-fix.py`.
|
|
||||||
* For cases where nodes like `PreviewTextNode` from `ComfyUI_Custom_Nodes_AlekPet` are only supported as front-end nodes, we currently do not provide missing nodes for them.
|
|
||||||
* Currently, `vid2vid` is not being updated, causing compatibility issues.
|
|
||||||
* If you encounter the error message `Overlapped Object has pending operation at deallocation on Comfyui Manager load` under Windows
|
* If you encounter the error message `Overlapped Object has pending operation at deallocation on Comfyui Manager load` under Windows
|
||||||
* Edit `config.ini` file: add `windows_selector_event_loop_policy = True`
|
* Edit `config.ini` file: add `windows_selector_event_loop_policy = True`
|
||||||
* if `SSL: CERTIFICATE_VERIFY_FAILED` error is occured.
|
* if `SSL: CERTIFICATE_VERIFY_FAILED` error is occured.
|
||||||
|
|||||||
@@ -490,7 +490,7 @@
|
|||||||
{
|
{
|
||||||
"author": "YinBailiang",
|
"author": "YinBailiang",
|
||||||
"title": "MergeBlockWeighted_fo_ComfyUI",
|
"title": "MergeBlockWeighted_fo_ComfyUI",
|
||||||
"id": "mbw",
|
"id": "mergeblockweighted_fo_comfyui",
|
||||||
"reference": "https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI",
|
"reference": "https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI",
|
||||||
"files": [
|
"files": [
|
||||||
"https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI"
|
"https://github.com/YinBailiang/MergeBlockWeighted_fo_ComfyUI"
|
||||||
@@ -18040,7 +18040,17 @@
|
|||||||
"https://github.com/LucipherDev/ComfyUI-Golden-Noise"
|
"https://github.com/LucipherDev/ComfyUI-Golden-Noise"
|
||||||
],
|
],
|
||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "ComfyUI Custom Node for [a/'Golden Noise for Diffusion Models: A Learning Framework'](https://arxiv.org/abs/2411.09502) and most of the code is adapted from [a/here](https://github.com/xie-lab-ml/Golden-Noise-for-Diffusion-Models). This node refines the initial latent noise in the diffusion process, enhancing both image quality and semantic coherence."
|
"description": "ComfyUI Custom Node for 'Golden Noise for Diffusion Models: A Learning Framework'. This node refines the initial latent noise in the diffusion process, enhancing both image quality and semantic coherence."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "LucipherDev",
|
||||||
|
"title": "ComfyUI-AniDoc",
|
||||||
|
"reference": "https://github.com/LucipherDev/ComfyUI-AniDoc",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/LucipherDev/ComfyUI-AniDoc"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "ComfyUI Custom Nodes for 'AniDoc: Animation Creation Made Easier'. This approach automates line art video colorization using a novel model that aligns color information from references, ensures temporal consistency, and reduces manual effort in animation production."
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"author": "envy-ai",
|
"author": "envy-ai",
|
||||||
@@ -18757,6 +18767,38 @@
|
|||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "ComfyUI Workflow to run audioldm-l-full pipeline\n[a/https://huggingface.co/cvssp/audioldm-l-full](https://huggingface.co/cvssp/audioldm-l-full)"
|
"description": "ComfyUI Workflow to run audioldm-l-full pipeline\n[a/https://huggingface.co/cvssp/audioldm-l-full](https://huggingface.co/cvssp/audioldm-l-full)"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"author": "bear2b",
|
||||||
|
"title": "ColorMatrixGPU Node for ComfyUI",
|
||||||
|
"reference": "https://github.com/bear2b/comfyui-argo-nodes",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/bear2b/comfyui-argo-nodes"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "This node applies a custom 4x4 color matrix to an image using GPU acceleration via PyTorch."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "phuvinh010701",
|
||||||
|
"title": "ComfyUI-Nudenet",
|
||||||
|
"reference": "https://github.com/phuvinh010701/ComfyUI-Nudenet",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/phuvinh010701/ComfyUI-Nudenet"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "Nodes for NSFW content filtering"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "Vaibhavs10",
|
||||||
|
"title": "ComfyUI-DDUF",
|
||||||
|
"reference": "https://github.com/Vaibhavs10/ComfyUI-DDUF",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/Vaibhavs10/ComfyUI-DDUF"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "Run DDUF in ComfyUI - powered by Diffusers."
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/1038lab/ComfyUI-RMBG": [
|
"https://github.com/1038lab/ComfyUI-RMBG": [
|
||||||
[
|
[
|
||||||
|
"ClothesSegment",
|
||||||
"RMBG",
|
"RMBG",
|
||||||
"Segment"
|
"Segment"
|
||||||
],
|
],
|
||||||
@@ -2486,6 +2487,7 @@
|
|||||||
"ImageMinusMask",
|
"ImageMinusMask",
|
||||||
"Light or Dark",
|
"Light or Dark",
|
||||||
"Load Random Images",
|
"Load Random Images",
|
||||||
|
"Mask Preprocess Morphology",
|
||||||
"PhotoShop Transfer",
|
"PhotoShop Transfer",
|
||||||
"Yuan"
|
"Yuan"
|
||||||
],
|
],
|
||||||
@@ -5203,6 +5205,17 @@
|
|||||||
"title_aux": "ComfyUI-RawSaver"
|
"title_aux": "ComfyUI-RawSaver"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/LucipherDev/ComfyUI-AniDoc": [
|
||||||
|
[
|
||||||
|
"AniDocLoader",
|
||||||
|
"AniDocSampler",
|
||||||
|
"GetAniDocControlnetImages",
|
||||||
|
"LoadCoTracker"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-AniDoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/LucipherDev/ComfyUI-Golden-Noise": [
|
"https://github.com/LucipherDev/ComfyUI-Golden-Noise": [
|
||||||
[
|
[
|
||||||
"GoldenNoise"
|
"GoldenNoise"
|
||||||
@@ -5779,6 +5792,7 @@
|
|||||||
"ImageSizeAdjusterV3",
|
"ImageSizeAdjusterV3",
|
||||||
"LoadVideoDirectory",
|
"LoadVideoDirectory",
|
||||||
"ProjectFilePathNode",
|
"ProjectFilePathNode",
|
||||||
|
"SequentialNumberGenerator",
|
||||||
"StringWeights",
|
"StringWeights",
|
||||||
"ZenkaiPrompt",
|
"ZenkaiPrompt",
|
||||||
"ZenkaiPromptV2",
|
"ZenkaiPromptV2",
|
||||||
@@ -7297,7 +7311,8 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": [
|
"https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": [
|
||||||
[
|
[
|
||||||
"D_LatentSyncNode"
|
"D_LatentSyncNode",
|
||||||
|
"D_VideoLengthAdjuster"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-LatentSyncWrapper"
|
"title_aux": "ComfyUI-LatentSyncWrapper"
|
||||||
@@ -7669,6 +7684,7 @@
|
|||||||
"SDVN Image Repeat",
|
"SDVN Image Repeat",
|
||||||
"SDVN Image Size",
|
"SDVN Image Size",
|
||||||
"SDVN Inpaint",
|
"SDVN Inpaint",
|
||||||
|
"SDVN Join Parameter",
|
||||||
"SDVN KSampler",
|
"SDVN KSampler",
|
||||||
"SDVN Load Checkpoint",
|
"SDVN Load Checkpoint",
|
||||||
"SDVN Load Image",
|
"SDVN Load Image",
|
||||||
@@ -7676,6 +7692,7 @@
|
|||||||
"SDVN Load Image From List",
|
"SDVN Load Image From List",
|
||||||
"SDVN Load Image Url",
|
"SDVN Load Image Url",
|
||||||
"SDVN Load Lora",
|
"SDVN Load Lora",
|
||||||
|
"SDVN Load Model",
|
||||||
"SDVN Load Text",
|
"SDVN Load Text",
|
||||||
"SDVN Logic",
|
"SDVN Logic",
|
||||||
"SDVN Lora Download",
|
"SDVN Lora Download",
|
||||||
@@ -8693,6 +8710,18 @@
|
|||||||
"title_aux": "Tripo for ComfyUI"
|
"title_aux": "Tripo for ComfyUI"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/Vaibhavs10/ComfyUI-DDUF": [
|
||||||
|
[
|
||||||
|
"DDUFLoader",
|
||||||
|
"DiffusersModelMakeup",
|
||||||
|
"DiffusersPipelineLoader",
|
||||||
|
"DiffusersSchedulerLoader",
|
||||||
|
"DiffusersSimpleSampler"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-DDUF"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/VangengLab/ComfyUI-LivePortrait_v2": [
|
"https://github.com/VangengLab/ComfyUI-LivePortrait_v2": [
|
||||||
[
|
[
|
||||||
"LivePortraitProcess_animal"
|
"LivePortraitProcess_animal"
|
||||||
@@ -10798,6 +10827,14 @@
|
|||||||
"title_aux": "Mikey Nodes"
|
"title_aux": "Mikey Nodes"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/bear2b/comfyui-argo-nodes": [
|
||||||
|
[
|
||||||
|
"ColorMatrixGPU"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ColorMatrixGPU Node for ComfyUI"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/bedovyy/ComfyUI_NAIDGenerator": [
|
"https://github.com/bedovyy/ComfyUI_NAIDGenerator": [
|
||||||
[
|
[
|
||||||
"ColorizeNAID",
|
"ColorizeNAID",
|
||||||
@@ -14263,7 +14300,8 @@
|
|||||||
"Genera.BatchTester",
|
"Genera.BatchTester",
|
||||||
"Genera.GCPStorageNode",
|
"Genera.GCPStorageNode",
|
||||||
"Genera.MaskDrawer",
|
"Genera.MaskDrawer",
|
||||||
"Genera.Utils"
|
"Genera.Utils",
|
||||||
|
"PainterNode"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-GeneraNodes"
|
"title_aux": "ComfyUI-GeneraNodes"
|
||||||
@@ -16538,7 +16576,9 @@
|
|||||||
"Ksampler Parameters JK",
|
"Ksampler Parameters JK",
|
||||||
"Latent Crop Offset JK",
|
"Latent Crop Offset JK",
|
||||||
"Latent Upscale Parameters Extract JK",
|
"Latent Upscale Parameters Extract JK",
|
||||||
|
"Load Image With Alpha JK",
|
||||||
"Load Image With Metadata JK",
|
"Load Image With Metadata JK",
|
||||||
|
"Make Image Grid JK",
|
||||||
"Metadata Pipe Extract JK",
|
"Metadata Pipe Extract JK",
|
||||||
"Metadata Pipe JK",
|
"Metadata Pipe JK",
|
||||||
"NodesState JK",
|
"NodesState JK",
|
||||||
@@ -16609,6 +16649,7 @@
|
|||||||
"Save Image with Metadata Flow JK",
|
"Save Image with Metadata Flow JK",
|
||||||
"Save Image with Metadata JK",
|
"Save Image with Metadata JK",
|
||||||
"Scale To Resolution JK",
|
"Scale To Resolution JK",
|
||||||
|
"Split Image Grid JK",
|
||||||
"Stability Conservative Upscale",
|
"Stability Conservative Upscale",
|
||||||
"Stability Control Sketch",
|
"Stability Control Sketch",
|
||||||
"Stability Control Structure",
|
"Stability Control Structure",
|
||||||
@@ -21345,13 +21386,15 @@
|
|||||||
"ConditioningZeroOutCombine",
|
"ConditioningZeroOutCombine",
|
||||||
"ConvertTimestepToSigma",
|
"ConvertTimestepToSigma",
|
||||||
"DynSamplerSelect",
|
"DynSamplerSelect",
|
||||||
|
"DynamicThresholdingSimplePost",
|
||||||
"EmptyLatentImageAR",
|
"EmptyLatentImageAR",
|
||||||
"FreeU2PPM",
|
"FreeU2PPM",
|
||||||
"Guidance Limiter",
|
"Guidance Limiter",
|
||||||
"LatentOperationTonemapLuminance",
|
"LatentOperationTonemapLuminance",
|
||||||
"LatentToMaskBB",
|
"LatentToMaskBB",
|
||||||
"LatentToWidthHeight",
|
"LatentToWidthHeight",
|
||||||
"PPMSamplerSelect"
|
"PPMSamplerSelect",
|
||||||
|
"RescaleCFGPost"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-ppm"
|
"title_aux": "ComfyUI-ppm"
|
||||||
@@ -21457,6 +21500,16 @@
|
|||||||
"title_aux": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI"
|
"title_aux": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/phuvinh010701/ComfyUI-Nudenet": [
|
||||||
|
[
|
||||||
|
"ApplyNudenet",
|
||||||
|
"FilterdLabel",
|
||||||
|
"NudenetModelLoader"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-Nudenet"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/phyblas/paint-by-example_comfyui": [
|
"https://github.com/phyblas/paint-by-example_comfyui": [
|
||||||
[
|
[
|
||||||
"PaintbyExampleAdvanced",
|
"PaintbyExampleAdvanced",
|
||||||
|
|||||||
3526
github-stats.json
3526
github-stats.json
File diff suppressed because it is too large
Load Diff
@@ -36,7 +36,7 @@ import manager_downloader
|
|||||||
from node_package import InstalledNodePackage
|
from node_package import InstalledNodePackage
|
||||||
|
|
||||||
|
|
||||||
version_code = [3, 3, 2]
|
version_code = [3, 3, 6]
|
||||||
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 '')
|
||||||
|
|
||||||
|
|
||||||
@@ -150,6 +150,7 @@ manager_channel_list_path = None
|
|||||||
manager_startup_script_path = None
|
manager_startup_script_path = None
|
||||||
manager_snapshot_path = None
|
manager_snapshot_path = None
|
||||||
manager_pip_overrides_path = None
|
manager_pip_overrides_path = None
|
||||||
|
manager_components_path = None
|
||||||
|
|
||||||
def update_user_directory(user_dir):
|
def update_user_directory(user_dir):
|
||||||
global manager_files_path
|
global manager_files_path
|
||||||
@@ -158,6 +159,7 @@ def update_user_directory(user_dir):
|
|||||||
global manager_startup_script_path
|
global manager_startup_script_path
|
||||||
global manager_snapshot_path
|
global manager_snapshot_path
|
||||||
global manager_pip_overrides_path
|
global manager_pip_overrides_path
|
||||||
|
global manager_components_path
|
||||||
|
|
||||||
manager_files_path = os.path.abspath(os.path.join(user_dir, 'default', 'ComfyUI-Manager'))
|
manager_files_path = os.path.abspath(os.path.join(user_dir, 'default', 'ComfyUI-Manager'))
|
||||||
if not os.path.exists(manager_files_path):
|
if not os.path.exists(manager_files_path):
|
||||||
@@ -174,6 +176,7 @@ def update_user_directory(user_dir):
|
|||||||
manager_config_path = os.path.join(manager_files_path, 'config.ini')
|
manager_config_path = os.path.join(manager_files_path, 'config.ini')
|
||||||
manager_channel_list_path = os.path.join(manager_files_path, 'channels.list')
|
manager_channel_list_path = os.path.join(manager_files_path, 'channels.list')
|
||||||
manager_pip_overrides_path = os.path.join(manager_files_path, "pip_overrides.json")
|
manager_pip_overrides_path = os.path.join(manager_files_path, "pip_overrides.json")
|
||||||
|
manager_components_path = os.path.join(manager_files_path, "components")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import folder_paths
|
import folder_paths
|
||||||
@@ -1234,6 +1237,8 @@ class UnifiedManager:
|
|||||||
return ManagedResult('skip').with_msg('Up to date')
|
return ManagedResult('skip').with_msg('Up to date')
|
||||||
|
|
||||||
def unified_update(self, node_id, version_spec=None, instant_execution=False, no_deps=False, return_postinstall=False):
|
def unified_update(self, node_id, version_spec=None, instant_execution=False, no_deps=False, return_postinstall=False):
|
||||||
|
orig_print(f"\x1b[2K\rUpdating: {node_id}", end='')
|
||||||
|
|
||||||
if version_spec is None:
|
if version_spec is None:
|
||||||
version_spec = self.resolve_unspecified_version(node_id, guess_mode='active')
|
version_spec = self.resolve_unspecified_version(node_id, guess_mode='active')
|
||||||
|
|
||||||
@@ -1400,7 +1405,6 @@ def write_config():
|
|||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config['default'] = {
|
config['default'] = {
|
||||||
'preview_method': manager_funcs.get_current_preview_method(),
|
'preview_method': manager_funcs.get_current_preview_method(),
|
||||||
'badge_mode': get_config()['badge_mode'],
|
|
||||||
'git_exe': get_config()['git_exe'],
|
'git_exe': get_config()['git_exe'],
|
||||||
'channel_url': get_config()['channel_url'],
|
'channel_url': get_config()['channel_url'],
|
||||||
'share_option': get_config()['share_option'],
|
'share_option': get_config()['share_option'],
|
||||||
@@ -1441,7 +1445,6 @@ def read_config():
|
|||||||
|
|
||||||
return {
|
return {
|
||||||
'preview_method': default_conf['preview_method'] if 'preview_method' in default_conf else manager_funcs.get_current_preview_method(),
|
'preview_method': default_conf['preview_method'] if 'preview_method' in default_conf else manager_funcs.get_current_preview_method(),
|
||||||
'badge_mode': default_conf['badge_mode'] if 'badge_mode' in default_conf else 'none',
|
|
||||||
'git_exe': default_conf['git_exe'] if 'git_exe' in default_conf else '',
|
'git_exe': default_conf['git_exe'] if 'git_exe' in default_conf else '',
|
||||||
'channel_url': default_conf['channel_url'] if 'channel_url' in default_conf else DEFAULT_CHANNEL,
|
'channel_url': default_conf['channel_url'] if 'channel_url' in default_conf else DEFAULT_CHANNEL,
|
||||||
'share_option': default_conf['share_option'] if 'share_option' in default_conf else 'all',
|
'share_option': default_conf['share_option'] if 'share_option' in default_conf else 'all',
|
||||||
@@ -1460,7 +1463,6 @@ def read_config():
|
|||||||
except Exception:
|
except Exception:
|
||||||
return {
|
return {
|
||||||
'preview_method': manager_funcs.get_current_preview_method(),
|
'preview_method': manager_funcs.get_current_preview_method(),
|
||||||
'badge_mode': 'none',
|
|
||||||
'git_exe': '',
|
'git_exe': '',
|
||||||
'channel_url': DEFAULT_CHANNEL,
|
'channel_url': DEFAULT_CHANNEL,
|
||||||
'share_option': 'all',
|
'share_option': 'all',
|
||||||
@@ -1695,7 +1697,7 @@ def git_repo_update_check_with(path, do_fetch=False, do_update=False, no_deps=Fa
|
|||||||
|
|
||||||
if do_update:
|
if do_update:
|
||||||
if repo.is_dirty():
|
if repo.is_dirty():
|
||||||
print(f"STASH: '{path}' is dirty.")
|
print(f"\nSTASH: '{path}' is dirty.")
|
||||||
repo.git.stash()
|
repo.git.stash()
|
||||||
|
|
||||||
if f'{remote_name}/{branch_name}' not in repo.refs:
|
if f'{remote_name}/{branch_name}' not in repo.refs:
|
||||||
@@ -2946,7 +2948,7 @@ def get_comfyui_versions():
|
|||||||
versions = sorted(versions + [current_tag], reverse=True)
|
versions = sorted(versions + [current_tag], reverse=True)
|
||||||
versions = versions[:4]
|
versions = versions[:4]
|
||||||
|
|
||||||
main_branch = repo.heads.main
|
main_branch = repo.heads.master
|
||||||
latest_commit = main_branch.commit
|
latest_commit = main_branch.commit
|
||||||
latest_tag = repo.git.describe('--tags', latest_commit.hexsha)
|
latest_tag = repo.git.describe('--tags', latest_commit.hexsha)
|
||||||
|
|
||||||
|
|||||||
@@ -135,7 +135,6 @@ local_db_model = os.path.join(manager_util.comfyui_manager_path, "model-list.jso
|
|||||||
local_db_alter = os.path.join(manager_util.comfyui_manager_path, "alter-list.json")
|
local_db_alter = os.path.join(manager_util.comfyui_manager_path, "alter-list.json")
|
||||||
local_db_custom_node_list = os.path.join(manager_util.comfyui_manager_path, "custom-node-list.json")
|
local_db_custom_node_list = os.path.join(manager_util.comfyui_manager_path, "custom-node-list.json")
|
||||||
local_db_extension_node_mappings = os.path.join(manager_util.comfyui_manager_path, "extension-node-map.json")
|
local_db_extension_node_mappings = os.path.join(manager_util.comfyui_manager_path, "extension-node-map.json")
|
||||||
components_path = os.path.join(manager_util.comfyui_manager_path, 'components')
|
|
||||||
|
|
||||||
|
|
||||||
def set_preview_method(method):
|
def set_preview_method(method):
|
||||||
@@ -1314,15 +1313,15 @@ async def save_component(request):
|
|||||||
name = data['name']
|
name = data['name']
|
||||||
workflow = data['workflow']
|
workflow = data['workflow']
|
||||||
|
|
||||||
if not os.path.exists(components_path):
|
if not os.path.exists(core.manager_components_path):
|
||||||
os.mkdir(components_path)
|
os.mkdir(core.manager_components_path)
|
||||||
|
|
||||||
if 'packname' in workflow and workflow['packname'] != '':
|
if 'packname' in workflow and workflow['packname'] != '':
|
||||||
sanitized_name = manager_util.sanitize_filename(workflow['packname']) + '.pack'
|
sanitized_name = manager_util.sanitize_filename(workflow['packname']) + '.pack'
|
||||||
else:
|
else:
|
||||||
sanitized_name = manager_util.sanitize_filename(name) + '.json'
|
sanitized_name = manager_util.sanitize_filename(name) + '.json'
|
||||||
|
|
||||||
filepath = os.path.join(components_path, sanitized_name)
|
filepath = os.path.join(core.manager_components_path, sanitized_name)
|
||||||
components = {}
|
components = {}
|
||||||
if os.path.exists(filepath):
|
if os.path.exists(filepath):
|
||||||
with open(filepath) as f:
|
with open(filepath) as f:
|
||||||
@@ -1339,24 +1338,27 @@ async def save_component(request):
|
|||||||
|
|
||||||
@routes.post("/manager/component/loads")
|
@routes.post("/manager/component/loads")
|
||||||
async def load_components(request):
|
async def load_components(request):
|
||||||
try:
|
if os.path.exists(core.manager_components_path):
|
||||||
json_files = [f for f in os.listdir(components_path) if f.endswith('.json')]
|
try:
|
||||||
pack_files = [f for f in os.listdir(components_path) if f.endswith('.pack')]
|
json_files = [f for f in os.listdir(core.manager_components_path) if f.endswith('.json')]
|
||||||
|
pack_files = [f for f in os.listdir(core.manager_components_path) if f.endswith('.pack')]
|
||||||
|
|
||||||
components = {}
|
components = {}
|
||||||
for json_file in json_files + pack_files:
|
for json_file in json_files + pack_files:
|
||||||
file_path = os.path.join(components_path, json_file)
|
file_path = os.path.join(core.manager_components_path, json_file)
|
||||||
with open(file_path, 'r') as file:
|
with open(file_path, 'r') as file:
|
||||||
try:
|
try:
|
||||||
# When there is a conflict between the .pack and the .json, the pack takes precedence and overrides.
|
# When there is a conflict between the .pack and the .json, the pack takes precedence and overrides.
|
||||||
components.update(json.load(file))
|
components.update(json.load(file))
|
||||||
except json.JSONDecodeError as e:
|
except json.JSONDecodeError as e:
|
||||||
logging.error(f"[ComfyUI-Manager] Error decoding component file in file {json_file}: {e}")
|
logging.error(f"[ComfyUI-Manager] Error decoding component file in file {json_file}: {e}")
|
||||||
|
|
||||||
return web.json_response(components)
|
return web.json_response(components)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.error(f"[ComfyUI-Manager] failed to load components\n{e}")
|
logging.error(f"[ComfyUI-Manager] failed to load components\n{e}")
|
||||||
return web.Response(status=400)
|
return web.Response(status=400)
|
||||||
|
else:
|
||||||
|
return web.json_response({})
|
||||||
|
|
||||||
|
|
||||||
@routes.get("/manager/version")
|
@routes.get("/manager/version")
|
||||||
|
|||||||
@@ -10,7 +10,26 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"author": "sourceful-official",
|
||||||
|
"title": "ComfyUI_InstructPixToPixConditioningLatent [WIP]",
|
||||||
|
"reference": "https://github.com/sourceful-official/ComfyUI_InstructPixToPixConditioningLatent",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/sourceful-official/ComfyUI_InstructPixToPixConditioningLatent"
|
||||||
|
],
|
||||||
|
"description": "ComfyUI-ComfyUI_InstructPixToPixConditioningLatent\nNOTE:invalid pyproject.toml",
|
||||||
|
"install_type": "git-clone"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "fritzprix",
|
||||||
|
"title": "ComfyUI-LLM-Utils [WIP]",
|
||||||
|
"reference": "https://github.com/fritzprix/ComfyUI-LLM-Utils",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/fritzprix/ComfyUI-LLM-Utils"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "A collection of utility nodes for ComfyUI focused on text and LLM-related operations\nNOTE: The files in the repo are not organized."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "ciga2011",
|
"author": "ciga2011",
|
||||||
"title": "ComfyUI-AppGen [UNSAFE]",
|
"title": "ComfyUI-AppGen [UNSAFE]",
|
||||||
|
|||||||
@@ -510,6 +510,7 @@
|
|||||||
"https://github.com/Chargeuk/ComfyUI-vts-nodes": [
|
"https://github.com/Chargeuk/ComfyUI-vts-nodes": [
|
||||||
[
|
[
|
||||||
"VTS Clean Text",
|
"VTS Clean Text",
|
||||||
|
"VTS Clip Text Encode",
|
||||||
"VTS Color Mask To Mask",
|
"VTS Color Mask To Mask",
|
||||||
"VTS Conditioning Set Batch Mask",
|
"VTS Conditioning Set Batch Mask",
|
||||||
"VTS Merge Delimited Text",
|
"VTS Merge Delimited Text",
|
||||||
@@ -2445,7 +2446,8 @@
|
|||||||
"Genera.BatchTester",
|
"Genera.BatchTester",
|
||||||
"Genera.GCPStorageNode",
|
"Genera.GCPStorageNode",
|
||||||
"Genera.MaskDrawer",
|
"Genera.MaskDrawer",
|
||||||
"Genera.Utils"
|
"Genera.Utils",
|
||||||
|
"PainterNode"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-GeneraNodes"
|
"title_aux": "ComfyUI-GeneraNodes"
|
||||||
@@ -2498,6 +2500,19 @@
|
|||||||
"title_aux": "comfyui-cem-tools"
|
"title_aux": "comfyui-cem-tools"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/fritzprix/ComfyUI-LLM-Utils": [
|
||||||
|
[
|
||||||
|
"WeightedDict",
|
||||||
|
"WeightedDictConcat",
|
||||||
|
"WeightedDictInput",
|
||||||
|
"WeightedDictSelect",
|
||||||
|
"WeightedDictSelectGroup",
|
||||||
|
"WeightedDictToPrompt"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-LLM-Utils [WIP]"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/galoreware/ComfyUI-GaloreNodes": [
|
"https://github.com/galoreware/ComfyUI-GaloreNodes": [
|
||||||
[
|
[
|
||||||
"GNI_HEX_TO_COLOR",
|
"GNI_HEX_TO_COLOR",
|
||||||
@@ -3768,13 +3783,15 @@
|
|||||||
"ConditioningZeroOutCombine",
|
"ConditioningZeroOutCombine",
|
||||||
"ConvertTimestepToSigma",
|
"ConvertTimestepToSigma",
|
||||||
"DynSamplerSelect",
|
"DynSamplerSelect",
|
||||||
|
"DynamicThresholdingSimplePost",
|
||||||
"EmptyLatentImageAR",
|
"EmptyLatentImageAR",
|
||||||
"FreeU2PPM",
|
"FreeU2PPM",
|
||||||
"Guidance Limiter",
|
"Guidance Limiter",
|
||||||
"LatentOperationTonemapLuminance",
|
"LatentOperationTonemapLuminance",
|
||||||
"LatentToMaskBB",
|
"LatentToMaskBB",
|
||||||
"LatentToWidthHeight",
|
"LatentToWidthHeight",
|
||||||
"PPMSamplerSelect"
|
"PPMSamplerSelect",
|
||||||
|
"RescaleCFGPost"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-ppm"
|
"title_aux": "ComfyUI-ppm"
|
||||||
@@ -4073,6 +4090,14 @@
|
|||||||
"title_aux": "dandy [UNSAFE]"
|
"title_aux": "dandy [UNSAFE]"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/sourceful-official/ComfyUI_InstructPixToPixConditioningLatent": [
|
||||||
|
[
|
||||||
|
"InstructPixToPixConditioningLatent"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI_InstructPixToPixConditioningLatent [WIP]"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/sswink/comfyui-lingshang": [
|
"https://github.com/sswink/comfyui-lingshang": [
|
||||||
[
|
[
|
||||||
"LS_ALY_Seg_Body_Utils",
|
"LS_ALY_Seg_Body_Utils",
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -9,6 +9,36 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
"author": "LucipherDev",
|
||||||
|
"title": "ComfyUI-AniDoc",
|
||||||
|
"reference": "https://github.com/LucipherDev/ComfyUI-AniDoc",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/LucipherDev/ComfyUI-AniDoc"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "ComfyUI Custom Nodes for 'AniDoc: Animation Creation Made Easier'. This approach automates line art video colorization using a novel model that aligns color information from references, ensures temporal consistency, and reduces manual effort in animation production."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "bear2b",
|
||||||
|
"title": "ColorMatrixGPU Node for ComfyUI",
|
||||||
|
"reference": "https://github.com/bear2b/comfyui-argo-nodes",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/bear2b/comfyui-argo-nodes"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "This node applies a custom 4x4 color matrix to an image using GPU acceleration via PyTorch."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "Vaibhavs10",
|
||||||
|
"title": "ComfyUI-DDUF",
|
||||||
|
"reference": "https://github.com/Vaibhavs10/ComfyUI-DDUF",
|
||||||
|
"files": [
|
||||||
|
"https://github.com/Vaibhavs10/ComfyUI-DDUF"
|
||||||
|
],
|
||||||
|
"install_type": "git-clone",
|
||||||
|
"description": "Run DDUF in ComfyUI - powered by Diffusers."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"author": "tocubed",
|
"author": "tocubed",
|
||||||
"title": "ComfyUI-EvTexture",
|
"title": "ComfyUI-EvTexture",
|
||||||
@@ -665,26 +695,6 @@
|
|||||||
],
|
],
|
||||||
"install_type": "git-clone",
|
"install_type": "git-clone",
|
||||||
"description": "A ComfyUI plugin for quick image sequence processing. This plugin allows users to manipulate frame sequences with various operations including frame insertion, deletion, and duplication."
|
"description": "A ComfyUI plugin for quick image sequence processing. This plugin allows users to manipulate frame sequences with various operations including frame insertion, deletion, and duplication."
|
||||||
},
|
|
||||||
{
|
|
||||||
"author": "ptmaster",
|
|
||||||
"title": "Embedding Merge for ComfyUI",
|
|
||||||
"reference": "https://github.com/ptmaster/ComfyUI-Load-Diffusion-Model-to-Muti-GPUs",
|
|
||||||
"files": [
|
|
||||||
"https://github.com/ptmaster/ComfyUI-Load-Diffusion-Model-to-Muti-GPUs/raw/refs/heads/main/Load%20Diffusion%20Model%20into%20Muti%20GPUs.py"
|
|
||||||
],
|
|
||||||
"install_type": "copy",
|
|
||||||
"description": "NODES: OverrideLoadedDiffusionDevice.\nI happen to have two graphics cards, and I want to load models into another graphics card in Comfyui, so I designed this small node."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"author": "ADDOOR",
|
|
||||||
"title": "ComfyUI-Addoor",
|
|
||||||
"reference": "https://github.com/Eagle-CN/ComfyUI-Addoor",
|
|
||||||
"files": [
|
|
||||||
"https://github.com/Eagle-CN/ComfyUI-Addoor"
|
|
||||||
],
|
|
||||||
"install_type": "git-clone",
|
|
||||||
"description": "A collection of batch operation toolkits suitable for ComfyUI"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/1038lab/ComfyUI-RMBG": [
|
"https://github.com/1038lab/ComfyUI-RMBG": [
|
||||||
[
|
[
|
||||||
|
"ClothesSegment",
|
||||||
"RMBG",
|
"RMBG",
|
||||||
"Segment"
|
"Segment"
|
||||||
],
|
],
|
||||||
@@ -2486,6 +2487,7 @@
|
|||||||
"ImageMinusMask",
|
"ImageMinusMask",
|
||||||
"Light or Dark",
|
"Light or Dark",
|
||||||
"Load Random Images",
|
"Load Random Images",
|
||||||
|
"Mask Preprocess Morphology",
|
||||||
"PhotoShop Transfer",
|
"PhotoShop Transfer",
|
||||||
"Yuan"
|
"Yuan"
|
||||||
],
|
],
|
||||||
@@ -5203,6 +5205,17 @@
|
|||||||
"title_aux": "ComfyUI-RawSaver"
|
"title_aux": "ComfyUI-RawSaver"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/LucipherDev/ComfyUI-AniDoc": [
|
||||||
|
[
|
||||||
|
"AniDocLoader",
|
||||||
|
"AniDocSampler",
|
||||||
|
"GetAniDocControlnetImages",
|
||||||
|
"LoadCoTracker"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-AniDoc"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/LucipherDev/ComfyUI-Golden-Noise": [
|
"https://github.com/LucipherDev/ComfyUI-Golden-Noise": [
|
||||||
[
|
[
|
||||||
"GoldenNoise"
|
"GoldenNoise"
|
||||||
@@ -5779,6 +5792,7 @@
|
|||||||
"ImageSizeAdjusterV3",
|
"ImageSizeAdjusterV3",
|
||||||
"LoadVideoDirectory",
|
"LoadVideoDirectory",
|
||||||
"ProjectFilePathNode",
|
"ProjectFilePathNode",
|
||||||
|
"SequentialNumberGenerator",
|
||||||
"StringWeights",
|
"StringWeights",
|
||||||
"ZenkaiPrompt",
|
"ZenkaiPrompt",
|
||||||
"ZenkaiPromptV2",
|
"ZenkaiPromptV2",
|
||||||
@@ -7297,7 +7311,8 @@
|
|||||||
],
|
],
|
||||||
"https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": [
|
"https://github.com/ShmuelRonen/ComfyUI-LatentSyncWrapper": [
|
||||||
[
|
[
|
||||||
"D_LatentSyncNode"
|
"D_LatentSyncNode",
|
||||||
|
"D_VideoLengthAdjuster"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-LatentSyncWrapper"
|
"title_aux": "ComfyUI-LatentSyncWrapper"
|
||||||
@@ -7669,6 +7684,7 @@
|
|||||||
"SDVN Image Repeat",
|
"SDVN Image Repeat",
|
||||||
"SDVN Image Size",
|
"SDVN Image Size",
|
||||||
"SDVN Inpaint",
|
"SDVN Inpaint",
|
||||||
|
"SDVN Join Parameter",
|
||||||
"SDVN KSampler",
|
"SDVN KSampler",
|
||||||
"SDVN Load Checkpoint",
|
"SDVN Load Checkpoint",
|
||||||
"SDVN Load Image",
|
"SDVN Load Image",
|
||||||
@@ -7676,6 +7692,7 @@
|
|||||||
"SDVN Load Image From List",
|
"SDVN Load Image From List",
|
||||||
"SDVN Load Image Url",
|
"SDVN Load Image Url",
|
||||||
"SDVN Load Lora",
|
"SDVN Load Lora",
|
||||||
|
"SDVN Load Model",
|
||||||
"SDVN Load Text",
|
"SDVN Load Text",
|
||||||
"SDVN Logic",
|
"SDVN Logic",
|
||||||
"SDVN Lora Download",
|
"SDVN Lora Download",
|
||||||
@@ -8693,6 +8710,18 @@
|
|||||||
"title_aux": "Tripo for ComfyUI"
|
"title_aux": "Tripo for ComfyUI"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/Vaibhavs10/ComfyUI-DDUF": [
|
||||||
|
[
|
||||||
|
"DDUFLoader",
|
||||||
|
"DiffusersModelMakeup",
|
||||||
|
"DiffusersPipelineLoader",
|
||||||
|
"DiffusersSchedulerLoader",
|
||||||
|
"DiffusersSimpleSampler"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-DDUF"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/VangengLab/ComfyUI-LivePortrait_v2": [
|
"https://github.com/VangengLab/ComfyUI-LivePortrait_v2": [
|
||||||
[
|
[
|
||||||
"LivePortraitProcess_animal"
|
"LivePortraitProcess_animal"
|
||||||
@@ -10798,6 +10827,14 @@
|
|||||||
"title_aux": "Mikey Nodes"
|
"title_aux": "Mikey Nodes"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/bear2b/comfyui-argo-nodes": [
|
||||||
|
[
|
||||||
|
"ColorMatrixGPU"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ColorMatrixGPU Node for ComfyUI"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/bedovyy/ComfyUI_NAIDGenerator": [
|
"https://github.com/bedovyy/ComfyUI_NAIDGenerator": [
|
||||||
[
|
[
|
||||||
"ColorizeNAID",
|
"ColorizeNAID",
|
||||||
@@ -14263,7 +14300,8 @@
|
|||||||
"Genera.BatchTester",
|
"Genera.BatchTester",
|
||||||
"Genera.GCPStorageNode",
|
"Genera.GCPStorageNode",
|
||||||
"Genera.MaskDrawer",
|
"Genera.MaskDrawer",
|
||||||
"Genera.Utils"
|
"Genera.Utils",
|
||||||
|
"PainterNode"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-GeneraNodes"
|
"title_aux": "ComfyUI-GeneraNodes"
|
||||||
@@ -16538,7 +16576,9 @@
|
|||||||
"Ksampler Parameters JK",
|
"Ksampler Parameters JK",
|
||||||
"Latent Crop Offset JK",
|
"Latent Crop Offset JK",
|
||||||
"Latent Upscale Parameters Extract JK",
|
"Latent Upscale Parameters Extract JK",
|
||||||
|
"Load Image With Alpha JK",
|
||||||
"Load Image With Metadata JK",
|
"Load Image With Metadata JK",
|
||||||
|
"Make Image Grid JK",
|
||||||
"Metadata Pipe Extract JK",
|
"Metadata Pipe Extract JK",
|
||||||
"Metadata Pipe JK",
|
"Metadata Pipe JK",
|
||||||
"NodesState JK",
|
"NodesState JK",
|
||||||
@@ -16609,6 +16649,7 @@
|
|||||||
"Save Image with Metadata Flow JK",
|
"Save Image with Metadata Flow JK",
|
||||||
"Save Image with Metadata JK",
|
"Save Image with Metadata JK",
|
||||||
"Scale To Resolution JK",
|
"Scale To Resolution JK",
|
||||||
|
"Split Image Grid JK",
|
||||||
"Stability Conservative Upscale",
|
"Stability Conservative Upscale",
|
||||||
"Stability Control Sketch",
|
"Stability Control Sketch",
|
||||||
"Stability Control Structure",
|
"Stability Control Structure",
|
||||||
@@ -21345,13 +21386,15 @@
|
|||||||
"ConditioningZeroOutCombine",
|
"ConditioningZeroOutCombine",
|
||||||
"ConvertTimestepToSigma",
|
"ConvertTimestepToSigma",
|
||||||
"DynSamplerSelect",
|
"DynSamplerSelect",
|
||||||
|
"DynamicThresholdingSimplePost",
|
||||||
"EmptyLatentImageAR",
|
"EmptyLatentImageAR",
|
||||||
"FreeU2PPM",
|
"FreeU2PPM",
|
||||||
"Guidance Limiter",
|
"Guidance Limiter",
|
||||||
"LatentOperationTonemapLuminance",
|
"LatentOperationTonemapLuminance",
|
||||||
"LatentToMaskBB",
|
"LatentToMaskBB",
|
||||||
"LatentToWidthHeight",
|
"LatentToWidthHeight",
|
||||||
"PPMSamplerSelect"
|
"PPMSamplerSelect",
|
||||||
|
"RescaleCFGPost"
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
"title_aux": "ComfyUI-ppm"
|
"title_aux": "ComfyUI-ppm"
|
||||||
@@ -21457,6 +21500,16 @@
|
|||||||
"title_aux": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI"
|
"title_aux": "\u2728 Clarity AI - Creative Image Upscaler and Enhancer for ComfyUI"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"https://github.com/phuvinh010701/ComfyUI-Nudenet": [
|
||||||
|
[
|
||||||
|
"ApplyNudenet",
|
||||||
|
"FilterdLabel",
|
||||||
|
"NudenetModelLoader"
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"title_aux": "ComfyUI-Nudenet"
|
||||||
|
}
|
||||||
|
],
|
||||||
"https://github.com/phyblas/paint-by-example_comfyui": [
|
"https://github.com/phyblas/paint-by-example_comfyui": [
|
||||||
[
|
[
|
||||||
"PaintbyExampleAdvanced",
|
"PaintbyExampleAdvanced",
|
||||||
|
|||||||
@@ -318,6 +318,7 @@ except Exception as e:
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
import git # noqa: F401
|
import git # noqa: F401
|
||||||
|
import toml # noqa: F401
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
my_path = os.path.dirname(__file__)
|
my_path = os.path.dirname(__file__)
|
||||||
requirements_path = os.path.join(my_path, "requirements.txt")
|
requirements_path = os.path.join(my_path, "requirements.txt")
|
||||||
|
|||||||
@@ -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.3.2"
|
version = "3.3.6"
|
||||||
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"]
|
dependencies = ["GitPython", "PyGithub", "matrix-client==0.4.0", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions"]
|
||||||
|
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
.\python_embeded\python.exe -s -m pip install gitpython
|
.\python_embeded\python.exe -s -m pip install gitpython
|
||||||
.\python_embeded\python.exe -c "import git; git.Repo.clone_from('https://github.com/ltdrdata/ComfyUI-Manager', './ComfyUI/custom_nodes/ComfyUI-Manager')"
|
.\python_embeded\python.exe -c "import git; git.Repo.clone_from('https://github.com/ltdrdata/ComfyUI-Manager', './ComfyUI/custom_nodes/comfyui-manager')"
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
import git
|
|
||||||
|
|
||||||
commit_hash = "a361cc1"
|
|
||||||
|
|
||||||
repo = git.Repo('.')
|
|
||||||
|
|
||||||
if repo.is_dirty():
|
|
||||||
repo.git.stash()
|
|
||||||
|
|
||||||
repo.git.update_ref("refs/remotes/origin/main", commit_hash)
|
|
||||||
repo.remotes.origin.fetch()
|
|
||||||
repo.git.pull("origin", "main")
|
|
||||||
Reference in New Issue
Block a user