Compare commits

...

9 Commits

Author SHA1 Message Date
Dr.Lt.Data
f1b7f5f52f fixed: Fixed the issue where attempting to install the nightly version resulted in installing the latest version instead. 2025-02-26 21:50:31 +09:00
Dr.Lt.Data
5ef58652bf remove useless code 2025-02-26 21:19:22 +09:00
Dr.Lt.Data
e26a9e75c6 update DB 2025-02-26 21:05:12 +09:00
Dr.Lt.Data
b0035ff4a7 update DB 2025-02-25 23:00:39 +09:00
orange90
94b6f9b2fe Update custom-node-list.json: (#1577)
* added  ComfyUI-Regex-Runner node
2025-02-25 22:44:31 +09:00
Dr.Lt.Data
cad1482b3f update doc 2025-02-25 22:27:21 +09:00
Dr.Lt.Data
ea7aafb3e6 fixed: When enabling the selected items, it fixed an issue where it performed a latest installation instead of enabling the previously disabled ones.
fixed: robust skipping installing/uninstalling/enabling of ComfyUI-Manager
2025-02-25 22:19:07 +09:00
Alexander Piskun
42b15ad4a5 restart action: support running as Python module (#1578) 2025-02-25 17:16:36 +09:00
Dr.Lt.Data
d3d613cca9 improved: cm-cli.sh - add --restore-to option to restore-snapshot command 2025-02-25 12:38:29 +09:00
15 changed files with 3602 additions and 3011 deletions

View File

@@ -152,6 +152,11 @@ class Ctx:
if y != '':
cm_global.pip_blacklist.add(y)
def update_custom_nodes_dir(self, target_dir):
import folder_paths
a, b = folder_paths.folder_names_and_paths['custom_nodes']
folder_paths.folder_names_and_paths['custom_nodes'] = [os.path.abspath(target_dir)], set()
@staticmethod
def get_startup_scripts_path():
return os.path.join(core.manager_startup_script_path, "install-scripts.txt")
@@ -1075,10 +1080,17 @@ def restore_snapshot(
user_directory: str = typer.Option(
None,
help="user directory"
),
restore_to: Optional[str] = typer.Option(
None,
help="Manually specify the installation path for the custom node. Ignore user directory."
)
):
cmd_ctx.set_user_directory(user_directory)
if restore_to:
cmd_ctx.update_custom_nodes_dir(restore_to)
extras = []
if pip_non_url:
extras.append('--pip-non-url')

View File

@@ -7610,6 +7610,16 @@
"install_type": "git-clone",
"description": "A ComfyUI custom node wrapper for JoyHallo - One-Shot Audio-Driven Talking Head Generation."
},
{
"author": "ShmuelRonen",
"title": "ComfyUI-FreeVC_wrapper",
"reference": "https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper",
"files": [
"https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper"
],
"install_type": "git-clone",
"description": "A voice conversion extension node for ComfyUI based on [a/FreeVC](https://github.com/OlaWod/FreeVC), enabling high-quality voice conversion capabilities within the ComfyUI framework."
},
{
"author": "redhottensors",
"title": "ComfyUI-Prediction",
@@ -8195,7 +8205,7 @@
"https://github.com/huchenlei/ComfyUI-layerdiffuse"
],
"install_type": "git-clone",
"description": "ComfyUI implementation of [a/LayerDiffusion](https://github.com/layerdiffusion/LayerDiffusion)."
"description": "Transparent Image Layer Diffusion using Latent Transparency"
},
{
"author": "huchenlei",
@@ -14476,6 +14486,16 @@
"install_type": "git-clone",
"description": "ComfyUI nodes to use FluxCustomId\nOriginal repo: [a/https://github.com/damo-cv/FLUX-customID](https://github.com/damo-cv/FLUX-customID)"
},
{
"author": "leeguandong",
"title": "ComfyUI nodes to use FluxClipWeight",
"reference": "https://github.com/leeguandong/ComfyUI_FluxClipWeight",
"files": [
"https://github.com/leeguandong/ComfyUI_FluxClipWeight"
],
"install_type": "git-clone",
"description": "In Flux, the T5 and CLIP in the text branch are weighted separately to regulate the strength of text-side embeddings."
},
{
"author": "lenskikh",
"title": "Propmt Worker",
@@ -21248,6 +21268,16 @@
"install_type": "git-clone",
"description": "ComfyUI [a/movingforward100/Shadow_R](https://github.com/movingforward100/Shadow_R) Wrapper"
},
{
"author": "Easymode-ai",
"title": "ComfyUI-BPT",
"reference": "https://github.com/Easymode-ai/ComfyUI-BPT",
"files": [
"https://github.com/Easymode-ai/ComfyUI-BPT"
],
"install_type": "git-clone",
"description": "Comfyui [a/BPT](https://github.com/whaohan/bpt) Wrapper (Trimesh in/out connections)"
},
{
"author": "GamingDaveUk",
"title": "Daves Nodes",
@@ -21379,12 +21409,58 @@
"install_type": "git-clone",
"description": "Cut and and drag that allows you to cut and drag multiple images on a path"
},
{
"author": "orange90",
"title": " ComfyUI-Regex-Runner",
"id": "comfyui-regex-runner",
"reference": "https://github.com/orange90/ComfyUI-Regex-Runner",
"files": [
"https://github.com/orange90/ComfyUI-Regex-Runner"
],
"install_type": "git-clone",
"description": "This is a node to run regex for strings."
},
{
"author": "SirWillance",
"title": " FoW_Suite_LIGHT",
"reference": "https://github.com/SirWillance/FoW_Suite_LIGHT",
"files": [
"https://github.com/SirWillance/FoW_Suite_LIGHT"
],
"install_type": "git-clone",
"description": "oW_Suite_LIGHT is the beginner-friendly version of the 'FoW' (Force Of Will) suite for ComfyUI, featuring PromptRefinerLight as the flagship node for simple prompt creation. It helps low-spec users craft raw prompts and collaborate with high-spec users for image generation, with a light, stable design—no tokenization or weighing, perfect for newbies! I developed it as my first coding project in 2 months, learning ComfyUIs capabilities along the way."
},
{
"author": "KAVVATARE",
"title": " ComfyUI-Light-N-Color",
"reference": "https://github.com/KAVVATARE/ComfyUI-Light-N-Color",
"files": [
"https://github.com/KAVVATARE/ComfyUI-Light-N-Color"
],
"install_type": "git-clone",
"description": "ComfyUI node that adds Brightness, RGB channels, and Depth of Field to AI-generated image"
},
{
"author": "fat-tire",
"title": "ComfyUI Unified Media Suite",
"reference": "https://github.com/fat-tire/comfyui-unified-media-suite",
"files": [
"https://github.com/fat-tire/comfyui-unified-media-suite"
],
"install_type": "git-clone",
"description": "Lightweight [a/PyAV](https://pypi.org/project/av/)-powered ComfyUI nodes to load/save multimedia."
},
{
"author": "ajbergh",
"title": "comfyui-ethnicity_hairstyle_clip_encoder",
"reference": "https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder",
"files": [
"https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder"
],
"install_type": "git-clone",
"description": "This ComfyUI custom node enhances the standard CLIP text encoding functionality by integrating ethnicity and hairstyle selection into the positive prompt. Designed to work seamlessly with ComfyUI, this node allows you to influence the conditioning process by dynamically appending descriptive modifiers. Users can choose a specific ethnicity or hairstyle, or opt for a 'random' selection that picks an option from a predefined CSV list."
},

View File

@@ -121,8 +121,9 @@ ComfyUI-Loopchain
* If no file exists at the snapshot path, it is implicitly assumed to be in ComfyUI-Manager/snapshots.
* `--pip-non-url`: Restore for pip packages registered on PyPI.
* `--pip-non-local-url`: Restore for pip packages registered at web URLs.
* `--pip-local-url`: Restore for pip packages specified by local paths.
* `--pip-local-url`: Restore for pip packages specified by local paths.
* `--user-directory`: Set the user directory.
* `--restore-to`: The path where the restored custom nodes will be installed. (When this option is applied, only the custom nodes installed in the target path are recognized as installed.)
### 5. CLI Only Mode

View File

@@ -123,7 +123,8 @@ ComfyUI-Loopchain
* `--pip-non-url`: PyPI 에 등록된 pip 패키지들에 대해서 복구를 수행
* `--pip-non-local-url`: web URL에 등록된 pip 패키지들에 대해서 복구를 수행
* `--pip-local-url`: local 경로를 지정하고 있는 pip 패키지들에 대해서 복구를 수행
* `--user-directory`: 사용자 디렉토리 설정
* `--restore-to`: 복구될 커스텀 노드가 설치될 경로. (이 옵션을 적용할 경우 오직 대상 경로에 설치된 custom nodes 만 설치된 것으로 인식함.)
### 5. CLI only mode

View File

@@ -429,6 +429,7 @@
"RGBABatchToImage",
"Random_Select_Prompt",
"Run_BEN_v2",
"Run_Similarity",
"Sam2AutoSegmentation_data",
"Save_Image_Out",
"Save_Image_To_Path",
@@ -453,10 +454,12 @@
"get_image_data",
"image_math",
"image_math_value",
"image_math_value_x10",
"invert_channel_adv",
"load_BEN_model",
"load_ColorName_config",
"load_EasyOCR_model",
"load_Similarity",
"load_color_config",
"load_model_value",
"mask_and_mask_math",
@@ -1534,11 +1537,8 @@
"TRANSFORM (JOV) \ud83c\udfdd\ufe0f",
"VALUE (JOV) \ud83e\uddec",
"VECTOR2 (JOV)",
"VECTOR2INT (JOV)",
"VECTOR3 (JOV)",
"VECTOR3INT (JOV)",
"VECTOR4 (JOV)",
"VECTOR4INT (JOV)",
"WAVE GEN (JOV) \ud83c\udf0a"
],
{
@@ -1664,6 +1664,47 @@
"title_aux": "Character Face Swap"
}
],
"https://github.com/ArtHommage/HommageTools": [
[
"HTBaseShiftNode",
"HTConversionNode",
"HTDiffusionLoaderMulti",
"HTDimensionAnalyzerNode",
"HTDimensionFormatterNode",
"HTFlexibleNode",
"HTInspectorNode",
"HTLayerCollectorNode",
"HTLayerExportNode",
"HTLevelsNode",
"HTMaskDilationNode",
"HTMaskValidatorNode",
"HTNodeStateController",
"HTNodeUnmuteAll",
"HTNullNode",
"HTOIDNNode",
"HTParameterExtractorNode",
"HTPhotoshopBlurNode",
"HTRegexNode",
"HTResizeNode",
"HTResolutionDownsampleNode",
"HTResolutionNode",
"HTSamplerBridgeNode",
"HTSchedulerBridgeNode",
"HTSplitterNode",
"HTStatusIndicatorNode",
"HTSurfaceBlurNode",
"HTSwitchNode",
"HTTensorInfoNode",
"HTTextCleanupNode",
"HTTrainingSizeNode",
"HTValueMapperNode",
"HTWidgetControlNode",
"ImageMaskResize"
],
{
"title_aux": "HommageTools for ComfyUI"
}
],
"https://github.com/ArtVentureX/comfyui-animatediff": [
[
"AnimateDiffCombine",
@@ -2030,7 +2071,9 @@
"ImageTextOverlay",
"Loop",
"LoopEnd",
"LoopStart"
"LoopStart",
"RandomTextOverlay",
"TextGrowth"
],
{
"title_aux": "ComfyUI-Book-Tools Nodes for ComfyUI"
@@ -2470,13 +2513,21 @@
"ClownGuide_Beta",
"ClownGuidesAB_Beta",
"ClownGuidesFluxAdvanced_Beta",
"ClownGuidesSimple_Beta",
"ClownGuides_Beta",
"ClownInpaint",
"ClownInpaintSimple",
"ClownOptions_Automation_Beta",
"ClownOptions_DetailBoost_Beta",
"ClownOptions_ExtraOptions_Beta",
"ClownOptions_FrameWeights",
"ClownOptions_ImplicitSteps_Beta",
"ClownOptions_SDE_Beta",
"ClownOptions_SDE_Noise",
"ClownOptions_StepSize_Beta",
"ClownRegionalConditioningFlux",
"ClownSampler",
"ClownSamplerAdvanced",
"ClownSamplerSelector_Beta",
"ClownsharKSampler",
"ClownsharKSamplerAutomation",
"ClownsharKSamplerAutomation_Advanced",
@@ -2486,9 +2537,7 @@
"ClownsharKSamplerGuides",
"ClownsharKSamplerGuidesMisc_Beta",
"ClownsharKSamplerOptions",
"ClownsharKSamplerOptions_SDE_Noise",
"ClownsharKSamplerSimple_Beta",
"ClownsharkSamplerOptions_FrameWeights",
"Conditioning Recast FP64",
"ConditioningAdd",
"ConditioningAverageScheduler",
@@ -2549,6 +2598,7 @@
"Set Precision",
"Set Precision Advanced",
"Set Precision Universal",
"SharkOptions_Beta",
"SharkSampler",
"Sigmas Abs",
"Sigmas Add",
@@ -2646,6 +2696,7 @@
[
"CocoImageLoader",
"ColorspaceNode",
"DynamicWidgetExample",
"JSONNode",
"JSONReaderNode",
"JSONValueFinderNode",
@@ -2792,14 +2843,18 @@
],
"https://github.com/Cyber-Blacat/ComfyUI-Yuan": [
[
", and the value is the function name in the right of the",
"Black and white",
"Image Judgment",
"ImageMinusMask",
"Light or Dark",
"Load Random Images",
"Mask Preprocess Morphology",
"Number",
"PhotoShop Transfer",
"Yuan"
"ShowSomething",
"ShowTensorShapeLayout",
"a fake Nod"
],
{
"title_aux": "ComfyUI-Yuan"
@@ -2922,7 +2977,7 @@
"AsciiGenerator"
],
{
"author": "Viet Nguyen <nhviet1009@gmail.com>",
"author": "DeepNeko <deepneko@outlook.com>",
"title_aux": "ascii-art-comfyui"
}
],
@@ -3051,6 +3106,7 @@
],
"https://github.com/Dobidop/ComfyStereo": [
[
"DeoVRViewNode",
"StereoImageNode"
],
{
@@ -3189,6 +3245,17 @@
"title_aux": "ComfyUI-Addoor"
}
],
"https://github.com/Easymode-ai/ComfyUI-BPT": [
[
"TrimeshBPT",
"TrimeshLoad",
"TrimeshPreview",
"TrimeshSave"
],
{
"title_aux": "ComfyUI-BPT"
}
],
"https://github.com/Easymode-ai/ComfyUI-ShadowR": [
[
"ShadowRModelLoader",
@@ -4152,6 +4219,7 @@
],
"https://github.com/GraftingRayman/ComfyUI_GraftingRayman": [
[
"GR BLIP 2 Caption Generator",
"GR Background Remover REMBG",
"GR Checkered Board",
"GR Counter",
@@ -5188,6 +5256,19 @@
"title_aux": "ComfyUI JMNodes"
}
],
"https://github.com/KAVVATARE/ComfyUI-Light-N-Color": [
[
"ControlNetSwitch",
"FluxLightingAndColor",
"FluxSamplerPuLID",
"ImageSwitch",
"LatentSwitch",
"LoadInputOutputImage"
],
{
"title_aux": " ComfyUI-Light-N-Color"
}
],
"https://github.com/KLL535/ComfyUI_SimpleButcher": [
[
"Simple Auto Bypass",
@@ -5527,6 +5608,7 @@
"VHS_SelectFilename",
"VHS_SelectImages",
"VHS_SelectLatents",
"VHS_SelectLatest",
"VHS_SelectMasks",
"VHS_SplitImages",
"VHS_SplitLatents",
@@ -7230,6 +7312,7 @@
"BatchImageToMask",
"LoadImageFromBase64",
"LoadImagesFromBase64Array",
"MapTrajectoriesToSegmentedMasks",
"MultiCutAndDragOnPath"
],
{
@@ -7645,6 +7728,8 @@
"Runware ControlNet PreProcessor",
"Runware Embedding Search",
"Runware Embeddings Combine",
"Runware IPAdapter",
"Runware IPAdapters Combine",
"Runware Image Caption",
"Runware Image Inference",
"Runware Image Masking",
@@ -8349,6 +8434,14 @@
"title_aux": "ComfyUI-FreeMemory"
}
],
"https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper": [
[
"FreeVC Voice Conversion"
],
{
"title_aux": "ComfyUI-FreeVC_wrapper"
}
],
"https://github.com/ShmuelRonen/ComfyUI-Gemini_Flash_2.0_Exp": [
[
"AudioRecorder",
@@ -9977,6 +10070,7 @@
"VrchSwitchOSCControlNode",
"VrchTextConcatOSCControlNode",
"VrchTextKeyControlNode",
"VrchTextSrtPlayerNode",
"VrchTextSwitchOSCControlNode",
"VrchVideoWebViewerNode",
"VrchWebViewerNode",
@@ -11303,6 +11397,14 @@
"title_aux": "ComfyUI_merge_ASVL"
}
],
"https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder": [
[
"CLIPTextEncodeWithExtras"
],
{
"title_aux": "comfyui-ethnicity_hairstyle_clip_encoder"
}
],
"https://github.com/akatz-ai/ComfyUI-AKatz-Nodes": [
[
"AK_AdjustDepthmapBrightness",
@@ -14640,6 +14742,7 @@
"VPScheduler",
"VideoLinearCFGGuidance",
"VideoTriangleCFGGuidance",
"WanImageToVideo",
"WebcamCapture",
"unCLIPCheckpointLoader",
"unCLIPConditioning"
@@ -15773,7 +15876,6 @@
],
"https://github.com/dorpxam/ComfyUI-LTXVideoLoRA": [
[
"LTXVCheckpointLoaderLoRA",
"LTXVLoRABlockEdit",
"LTXVLoRALoader",
"LTXVLoRASelector"
@@ -16285,6 +16387,16 @@
"title_aux": "FASHN Virtual Try-On"
}
],
"https://github.com/fat-tire/comfyui-unified-media-suite": [
[
"MediaLoad",
"MediaMerge",
"MediaSave"
],
{
"title_aux": "ComfyUI Unified Media Suite"
}
],
"https://github.com/fblissjr/ComfyUI-DatasetHelper": [
[
"DatasetBatchNode"
@@ -17285,6 +17397,8 @@
"Griptape Agent Config: Expand",
"Griptape Agent Config: Google Drivers",
"Griptape Agent Config: Google [DEPRECATED]",
"Griptape Agent Config: Griptape Cloud",
"Griptape Agent Config: Grok Drivers",
"Griptape Agent Config: Groq Drivers",
"Griptape Agent Config: HuggingFace Drivers",
"Griptape Agent Config: HuggingFace [DEPRECATED]",
@@ -17339,6 +17453,7 @@
"Griptape Embedding Driver: OpenAI",
"Griptape Embedding Driver: OpenAI Compatible",
"Griptape Embedding Driver: Voyage AI",
"Griptape End Workflow",
"Griptape Expand: Agent Nodes",
"Griptape Load: Audio",
"Griptape Load: Image From URL",
@@ -17349,6 +17464,8 @@
"Griptape Prompt Driver: Azure OpenAI",
"Griptape Prompt Driver: Cohere",
"Griptape Prompt Driver: Google",
"Griptape Prompt Driver: Griptape Cloud",
"Griptape Prompt Driver: Grok",
"Griptape Prompt Driver: Groq",
"Griptape Prompt Driver: HuggingFace",
"Griptape Prompt Driver: LM Studio",
@@ -17382,6 +17499,7 @@
"Griptape Run: Toolkit Task",
"Griptape Save: Text",
"Griptape Set: Default Agent",
"Griptape Start Workflow",
"Griptape Text To Speech Driver: ElevenLabs",
"Griptape Text To Speech Driver: OpenAI",
"Griptape Tool: Audio Transcription",
@@ -20040,6 +20158,7 @@
"AddLabel",
"AppendInstanceDiffusionTracking",
"AppendStringsToList",
"ApplyRifleXRoPE_HunuyanVideo",
"AudioConcatenate",
"BOOLConstant",
"BatchCLIPSeg",
@@ -20193,6 +20312,7 @@
"TorchCompileLTXModel",
"TorchCompileModelFluxAdvanced",
"TorchCompileModelHyVideo",
"TorchCompileModelWanVideo",
"TorchCompileVAE",
"TransitionImagesInBatch",
"TransitionImagesMulti",
@@ -20469,6 +20589,7 @@
],
"https://github.com/kk8bit/KayTool": [
[
"AIO_Translater",
"Abc_Math",
"Baidu_Translater",
"Color_Adjustment",
@@ -20476,7 +20597,8 @@
"Display_Any",
"Image_Size_Extractor",
"Strong_Prompt",
"Tencent_Translater"
"Tencent_Translater",
"Text"
],
{
"title_aux": "KayTool"
@@ -20804,6 +20926,14 @@
"title_aux": "ComfyUI nodes to use CrossImageAttention"
}
],
"https://github.com/leeguandong/ComfyUI_FluxClipWeight": [
[
"CLIPTextEncodeFluxWeight"
],
{
"title_aux": "ComfyUI nodes to use FluxClipWeight"
}
],
"https://github.com/leeguandong/ComfyUI_FluxCustomId": [
[
"ApplyCustomIDFlux",
@@ -23832,6 +23962,14 @@
"title_aux": "Comfy UI Text List Product"
}
],
"https://github.com/orange90/ComfyUI-Regex-Runner": [
[
"RegexNode"
],
{
"title_aux": " ComfyUI-Regex-Runner"
}
],
"https://github.com/osi1880vr/prompt_quill_comfyui": [
[
"PromptQuillGenerate",
@@ -27861,14 +27999,6 @@
"title_aux": "ComfyUI-Environment-Visualizer"
}
],
"https://github.com/willmiao/ComfyUI-Lora-Manager": [
[
"LoRALoader"
],
{
"title_aux": "ComfyUI-Lora-Manager"
}
],
"https://github.com/windfancy/zsq_prompt": [
[
"BatchPromptJson",

View File

File diff suppressed because it is too large Load Diff

View File

@@ -42,7 +42,7 @@ import manager_downloader
from node_package import InstalledNodePackage
version_code = [3, 26, 1]
version_code = [3, 27, 2]
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
@@ -997,7 +997,7 @@ class UnifiedManager:
return result
def unified_enable(self, node_id, version_spec=None):
def unified_enable(self, node_id: str, version_spec=None):
"""
priority if version_spec == None
1. CNR latest in disk
@@ -1009,6 +1009,9 @@ class UnifiedManager:
result = ManagedResult('enable')
if 'comfyui-manager' in node_id.lower():
return result.fail(f"ignored: enabling '{node_id}'")
if version_spec is None:
version_spec = self.resolve_unspecified_version(node_id, guess_mode='inactive')
if version is None:
@@ -1074,9 +1077,12 @@ class UnifiedManager:
self.active_nodes[node_id] = version_spec, to_path
return result.with_target(to_path)
def unified_disable(self, node_id, is_unknown):
def unified_disable(self, node_id: str, is_unknown):
result = ManagedResult('disable')
if 'comfyui-manager' in node_id.lower():
return result.fail(f"ignored: disabling '{node_id}'")
if is_unknown:
version_spec = 'unknown'
else:
@@ -1132,6 +1138,9 @@ class UnifiedManager:
"""
result = ManagedResult('uninstall')
if 'comfyui-manager' in node_id.lower():
return result.fail(f"ignored: uninstalling '{node_id}'")
if is_unknown:
# remove from actives
repo_and_path = self.unknown_active_nodes.get(node_id)
@@ -1188,9 +1197,12 @@ class UnifiedManager:
return result
def cnr_install(self, node_id, version_spec=None, instant_execution=False, no_deps=False, return_postinstall=False):
def cnr_install(self, node_id: str, version_spec=None, instant_execution=False, no_deps=False, return_postinstall=False):
result = ManagedResult('install-cnr')
if 'comfyui-manager' in node_id.lower():
return result.fail(f"ignored: installing '{node_id}'")
node_info = cnr_utils.install_node(node_id, version_spec)
if node_info is None or not node_info.download_url:
return result.fail(f'not available node: {node_id}@{version_spec}')
@@ -1235,10 +1247,13 @@ class UnifiedManager:
return result
def repo_install(self, url, repo_path, instant_execution=False, no_deps=False, return_postinstall=False):
def repo_install(self, url: str, repo_path: str, instant_execution=False, no_deps=False, return_postinstall=False):
result = ManagedResult('install-git')
result.append(url)
if 'comfyui-manager' in url.lower():
return result.fail(f"ignored: installing '{url}'")
if not is_valid_url(url):
return result.fail(f"Invalid git url: {url}")
@@ -1359,7 +1374,7 @@ class UnifiedManager:
else:
return self.cnr_switch_version(node_id, instant_execution=instant_execution, no_deps=no_deps, return_postinstall=return_postinstall).with_ver('cnr')
async def install_by_id(self, node_id, version_spec=None, channel=None, mode=None, instant_execution=False, no_deps=False, return_postinstall=False):
async def install_by_id(self, node_id: str, version_spec=None, channel=None, mode=None, instant_execution=False, no_deps=False, return_postinstall=False):
"""
priority if version_spec == None
1. CNR latest
@@ -1368,6 +1383,9 @@ class UnifiedManager:
remark: latest version_spec is not allowed. Must be resolved before call.
"""
if 'comfyui-manager' in node_id.lower():
return ManagedResult('skip').fail(f"ignored: installing '{node_id}'")
repo_url = None
if version_spec is None:
if self.is_enabled(node_id):
@@ -3039,6 +3057,10 @@ async def restore_snapshot(snapshot_path, git_helper_extras=None):
# normalize github repo
for k, v in _git_info.items():
# robust filter out comfyui-manager while restoring snapshot
if 'comfyui-manager' in k.lower():
continue
norm_k = git_utils.normalize_url(k)
git_info[norm_k] = v

View File

@@ -1195,7 +1195,15 @@ async def install_custom_node(request):
git_url = None
if json_data['version'] != 'unknown':
selected_version = json_data.get('selected_version', 'latest')
selected_version = json_data.get('selected_version')
if skip_post_install:
if cnr_id in core.unified_manager.nightly_inactive_nodes or cnr_id in core.unified_manager.cnr_inactive_nodes:
core.unified_manager.unified_enable(cnr_id)
return web.Response(status=200)
elif selected_version is None:
selected_version = 'latest'
if selected_version != 'nightly':
risky_level = 'low'
node_spec_str = f"{cnr_id}@{selected_version}"
@@ -1578,6 +1586,9 @@ def restart(self):
if sys.platform.startswith('win32'):
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]))
cmds = [sys.executable, '-m', module_name] + sys_argv[1:]
else:
cmds = [sys.executable] + sys_argv

View File

@@ -1640,13 +1640,13 @@ export class CustomNodesManager {
}
if(unresolved_missing_nodes.size > 0) {
await this.getMissingNodesLegacy(hashMap, unresolved_missing_nodes, registered_nodes);
await this.getMissingNodesLegacy(hashMap, unresolved_missing_nodes);
}
return hashMap;
}
async getMissingNodesLegacy(hashMap, missing_nodes, registered_nodes) {
async getMissingNodesLegacy(hashMap, missing_nodes) {
const mode = manager_instance.datasrc_combo.value;
this.showStatus(`Loading missing nodes (${mode}) ...`);
const res = await fetchData(`/customnode/getmappings?mode=${mode}`);
@@ -1687,20 +1687,15 @@ export class CustomNodesManager {
let unresolved_missing_nodes = new Set();
for (let node_type of missing_nodes) {
if(node_type.startsWith('workflow/') || node_type.startsWith('workflow>'))
continue;
if (!registered_nodes.has(node_type)) {
const packs = name_to_packs[node_type.trim()];
if(packs)
packs.forEach(url => {
unresolved_missing_nodes.add(url);
});
else {
for(let j in regex_to_pack) {
if(regex_to_pack[j].regex.test(node_type)) {
unresolved_missing_nodes.add(regex_to_pack[j].url);
}
const packs = name_to_packs[node_type.trim()];
if(packs)
packs.forEach(url => {
unresolved_missing_nodes.add(url);
});
else {
for(let j in regex_to_pack) {
if(regex_to_pack[j].regex.test(node_type)) {
unresolved_missing_nodes.add(regex_to_pack[j].url);
}
}
}

View File

@@ -13,6 +13,36 @@
{
"author": "ZHO-ZHO-ZHO",
"title": "ComfyUI Wan2.1 [WIP]",
"reference": "https://github.com/ZHO-ZHO-ZHO/ComfyUI-Wan-ZHO",
"files": [
"https://github.com/ZHO-ZHO-ZHO/ComfyUI-Wan-ZHO"
],
"install_type": "git-clone",
"description": "Its estimated that ComfyUI itself will support it soon, so go ahead and give it a try!"
},
{
"author": "kijai",
"title": "ComfyUI-WanVideoWrapper [WIP]",
"reference": "https://github.com/kijai/ComfyUI-WanVideoWrapper",
"files": [
"https://github.com/kijai/ComfyUI-WanVideoWrapper"
],
"install_type": "git-clone",
"description": "ComfyUI diffusers wrapper nodes for WanVideo"
},
{
"author": "ltdrdata",
"title": "comfyui-unsafe-torch [UNSAFE]",
"reference": "https://github.com/ltdrdata/comfyui-unsafe-torch",
"files": [
"https://github.com/ltdrdata/comfyui-unsafe-torch"
],
"install_type": "git-clone",
"description": "disable torch.load's `weigths_only`"
},
{
"author": "IfnotFr",
"title": "⚡ ComfyUI Connect [WIP]",

View File

@@ -642,6 +642,7 @@
"DevToolsNodeWithBooleanInput",
"DevToolsNodeWithForceInput",
"DevToolsNodeWithOnlyOptionalInput",
"DevToolsNodeWithOptionalComboInput",
"DevToolsNodeWithOptionalInput",
"DevToolsNodeWithOutputList",
"DevToolsNodeWithSeedInput",
@@ -1339,12 +1340,16 @@
[
"A1111_FLUX_DATA_NODE",
"CategorizeNode",
"Delay_node",
"Downloader",
"FileMoveNode",
"FolderIteratorNODE",
"Get_cookies_Node",
"Get_json_value_Node",
"Get_video_Node",
"HashCalculationsNode",
"HuggingFaceUploadNode",
"IMG2URLNode",
"Image2GIFNode",
"ImageDownloader",
"InputDetectionNode",
@@ -1360,7 +1365,10 @@
"TextToJsonNode",
"TranslateAPINode",
"ZIPwith7zNode",
"img_understanding_Node",
"klingai_video_Node",
"path_join_Node",
"save_img_NODE",
"set_api_Node"
],
{
@@ -1585,7 +1593,9 @@
"CheckpointLoaderSimpleShared //SeedV",
"ControlNetLoaderAdvancedShared",
"LoraLoader //SeedV",
"Script"
"Script",
"Switch_Any(SEEDV)",
"TCD_Sampler(SEEDV)"
],
{
"title_aux": "ComfyUI-SeedV-Nodes [UNSAFE]"
@@ -1884,6 +1894,15 @@
"title_aux": "ComfyUI-PuLID-ZHO [WIP]"
}
],
"https://github.com/ZHO-ZHO-ZHO/ComfyUI-Wan-ZHO": [
[
"WanT2V_Generation_Zho",
"WanT2V_ModelLoader_Zho"
],
{
"title_aux": "ComfyUI Wan2.1 [WIP]"
}
],
"https://github.com/a-One-Fan/ComfyUI-Blenderesque-Nodes": [
[
"BlenderAlphaConvert",
@@ -2747,6 +2766,7 @@
"VPScheduler",
"VideoLinearCFGGuidance",
"VideoTriangleCFGGuidance",
"WanImageToVideo",
"WebcamCapture",
"unCLIPCheckpointLoader",
"unCLIPConditioning"
@@ -3163,6 +3183,15 @@
"https://github.com/grinlau18/ComfyUI_XISER_Nodes": [
[
"XIS_Float_Slider",
"XIS_FromListGet1Color",
"XIS_FromListGet1Cond",
"XIS_FromListGet1Float",
"XIS_FromListGet1Image",
"XIS_FromListGet1Int",
"XIS_FromListGet1Latent",
"XIS_FromListGet1Mask",
"XIS_FromListGet1Model",
"XIS_FromListGet1String",
"XIS_INT_Slider",
"XIS_PromptsWithSwitches",
"XIS_ResizeImageOrMask"
@@ -3894,6 +3923,27 @@
"title_aux": "ComfyUI-VideoNoiseWarp [WIP]"
}
],
"https://github.com/kijai/ComfyUI-WanVideoWrapper": [
[
"LoadWanVideoClipTextEncoder",
"LoadWanVideoT5TextEncoder",
"WanVideoBlockSwap",
"WanVideoDecode",
"WanVideoEmptyEmbeds",
"WanVideoEncode",
"WanVideoImageClipEncode",
"WanVideoLatentPreview",
"WanVideoLoraSelect",
"WanVideoModelLoader",
"WanVideoSampler",
"WanVideoTextEncode",
"WanVideoTorchCompileSettings",
"WanVideoVAELoader"
],
{
"title_aux": "ComfyUI-WanVideoWrapper [WIP]"
}
],
"https://github.com/kimara-ai/ComfyUI-Kimara-AI-Advanced-Watermarks": [
[
"KimaraAIBatchImages",
@@ -3913,6 +3963,7 @@
],
"https://github.com/kk8bit/KayTool": [
[
"AIO_Translater",
"Abc_Math",
"Baidu_Translater",
"Color_Adjustment",
@@ -3920,7 +3971,8 @@
"Display_Any",
"Image_Size_Extractor",
"Strong_Prompt",
"Tencent_Translater"
"Tencent_Translater",
"Text"
],
{
"title_aux": "KayTool"

View File

File diff suppressed because it is too large Load Diff

View File

@@ -11,6 +11,76 @@
{
"author": "Easymode-ai",
"title": "ComfyUI-BPT",
"reference": "https://github.com/Easymode-ai/ComfyUI-BPT",
"files": [
"https://github.com/Easymode-ai/ComfyUI-BPT"
],
"install_type": "git-clone",
"description": "Comfyui [a/BPT](https://github.com/whaohan/bpt) Wrapper (Trimesh in/out connections)"
},
{
"author": "ShmuelRonen",
"title": "ComfyUI-FreeVC_wrapper",
"reference": "https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper",
"files": [
"https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper"
],
"install_type": "git-clone",
"description": "A voice conversion extension node for ComfyUI based on [a/FreeVC](https://github.com/OlaWod/FreeVC), enabling high-quality voice conversion capabilities within the ComfyUI framework."
},
{
"author": "fat-tire",
"title": "ComfyUI Unified Media Suite",
"reference": "https://github.com/fat-tire/comfyui-unified-media-suite",
"files": [
"https://github.com/fat-tire/comfyui-unified-media-suite"
],
"install_type": "git-clone",
"description": "Lightweight [a/PyAV](https://pypi.org/project/av/)-powered ComfyUI nodes to load/save multimedia."
},
{
"author": "leeguandong",
"title": "ComfyUI nodes to use FluxClipWeight",
"reference": "https://github.com/leeguandong/ComfyUI_FluxClipWeight",
"files": [
"https://github.com/leeguandong/ComfyUI_FluxClipWeight"
],
"install_type": "git-clone",
"description": "In Flux, the T5 and CLIP in the text branch are weighted separately to regulate the strength of text-side embeddings."
},
{
"author": "SirWillance",
"title": " FoW_Suite_LIGHT",
"reference": "https://github.com/SirWillance/FoW_Suite_LIGHT",
"files": [
"https://github.com/SirWillance/FoW_Suite_LIGHT"
],
"install_type": "git-clone",
"description": "oW_Suite_LIGHT is the beginner-friendly version of the 'FoW' (Force Of Will) suite for ComfyUI, featuring PromptRefinerLight as the flagship node for simple prompt creation. It helps low-spec users craft raw prompts and collaborate with high-spec users for image generation, with a light, stable design—no tokenization or weighing, perfect for newbies! I developed it as my first coding project in 2 months, learning ComfyUIs capabilities along the way."
},
{
"author": "KAVVATARE",
"title": " ComfyUI-Light-N-Color",
"reference": "https://github.com/KAVVATARE/ComfyUI-Light-N-Color",
"files": [
"https://github.com/KAVVATARE/ComfyUI-Light-N-Color"
],
"install_type": "git-clone",
"description": "ComfyUI node that adds Brightness, RGB channels, and Depth of Field to AI-generated image"
},
{
"author": "ajbergh",
"title": "comfyui-ethnicity_hairstyle_clip_encoder",
"reference": "https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder",
"files": [
"https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder"
],
"install_type": "git-clone",
"description": "This ComfyUI custom node enhances the standard CLIP text encoding functionality by integrating ethnicity and hairstyle selection into the positive prompt. Designed to work seamlessly with ComfyUI, this node allows you to influence the conditioning process by dynamically appending descriptive modifiers. Users can choose a specific ethnicity or hairstyle, or opt for a 'random' selection that picks an option from a predefined CSV list."
},
{
"author": "RodrigoSKohl",
"title": "Interior Design for Comfyui",
@@ -21,6 +91,17 @@
"install_type": "git-clone",
"description": "This node is based on MykolaL/StableDesign"
},
{
"author": "orange90",
"title": " ComfyUI-Regex-Runner ",
"id": "comfyui-regex-runner",
"reference": "https://github.com/orange90/ComfyUI-Regex-Runner",
"files": [
"https://github.com/orange90/ComfyUI-Regex-Runner"
],
"install_type": "git-clone",
"description": "This is a node to run regex for strings."
},
{
"author": "smthemex",
"title": "ComfyUI_YuE",
@@ -672,16 +753,6 @@
],
"install_type": "git-clone",
"description": "Offering a series of utility nodes designed to simplify workflows and enhance efficiency"
},
{
"author": "iris-Neko",
"title": "ComfyUI_ascii_art",
"reference": "https://github.com/iris-Neko/ComfyUI_ascii_art",
"files": [
"https://github.com/iris-Neko/ComfyUI_ascii_art"
],
"install_type": "git-clone",
"description": "ComfyUI node for [a/ASCII art controlnet](https://civitai.com/models/986392)"
}
]
}

View File

@@ -429,6 +429,7 @@
"RGBABatchToImage",
"Random_Select_Prompt",
"Run_BEN_v2",
"Run_Similarity",
"Sam2AutoSegmentation_data",
"Save_Image_Out",
"Save_Image_To_Path",
@@ -453,10 +454,12 @@
"get_image_data",
"image_math",
"image_math_value",
"image_math_value_x10",
"invert_channel_adv",
"load_BEN_model",
"load_ColorName_config",
"load_EasyOCR_model",
"load_Similarity",
"load_color_config",
"load_model_value",
"mask_and_mask_math",
@@ -1534,11 +1537,8 @@
"TRANSFORM (JOV) \ud83c\udfdd\ufe0f",
"VALUE (JOV) \ud83e\uddec",
"VECTOR2 (JOV)",
"VECTOR2INT (JOV)",
"VECTOR3 (JOV)",
"VECTOR3INT (JOV)",
"VECTOR4 (JOV)",
"VECTOR4INT (JOV)",
"WAVE GEN (JOV) \ud83c\udf0a"
],
{
@@ -1664,6 +1664,47 @@
"title_aux": "Character Face Swap"
}
],
"https://github.com/ArtHommage/HommageTools": [
[
"HTBaseShiftNode",
"HTConversionNode",
"HTDiffusionLoaderMulti",
"HTDimensionAnalyzerNode",
"HTDimensionFormatterNode",
"HTFlexibleNode",
"HTInspectorNode",
"HTLayerCollectorNode",
"HTLayerExportNode",
"HTLevelsNode",
"HTMaskDilationNode",
"HTMaskValidatorNode",
"HTNodeStateController",
"HTNodeUnmuteAll",
"HTNullNode",
"HTOIDNNode",
"HTParameterExtractorNode",
"HTPhotoshopBlurNode",
"HTRegexNode",
"HTResizeNode",
"HTResolutionDownsampleNode",
"HTResolutionNode",
"HTSamplerBridgeNode",
"HTSchedulerBridgeNode",
"HTSplitterNode",
"HTStatusIndicatorNode",
"HTSurfaceBlurNode",
"HTSwitchNode",
"HTTensorInfoNode",
"HTTextCleanupNode",
"HTTrainingSizeNode",
"HTValueMapperNode",
"HTWidgetControlNode",
"ImageMaskResize"
],
{
"title_aux": "HommageTools for ComfyUI"
}
],
"https://github.com/ArtVentureX/comfyui-animatediff": [
[
"AnimateDiffCombine",
@@ -2030,7 +2071,9 @@
"ImageTextOverlay",
"Loop",
"LoopEnd",
"LoopStart"
"LoopStart",
"RandomTextOverlay",
"TextGrowth"
],
{
"title_aux": "ComfyUI-Book-Tools Nodes for ComfyUI"
@@ -2470,13 +2513,21 @@
"ClownGuide_Beta",
"ClownGuidesAB_Beta",
"ClownGuidesFluxAdvanced_Beta",
"ClownGuidesSimple_Beta",
"ClownGuides_Beta",
"ClownInpaint",
"ClownInpaintSimple",
"ClownOptions_Automation_Beta",
"ClownOptions_DetailBoost_Beta",
"ClownOptions_ExtraOptions_Beta",
"ClownOptions_FrameWeights",
"ClownOptions_ImplicitSteps_Beta",
"ClownOptions_SDE_Beta",
"ClownOptions_SDE_Noise",
"ClownOptions_StepSize_Beta",
"ClownRegionalConditioningFlux",
"ClownSampler",
"ClownSamplerAdvanced",
"ClownSamplerSelector_Beta",
"ClownsharKSampler",
"ClownsharKSamplerAutomation",
"ClownsharKSamplerAutomation_Advanced",
@@ -2486,9 +2537,7 @@
"ClownsharKSamplerGuides",
"ClownsharKSamplerGuidesMisc_Beta",
"ClownsharKSamplerOptions",
"ClownsharKSamplerOptions_SDE_Noise",
"ClownsharKSamplerSimple_Beta",
"ClownsharkSamplerOptions_FrameWeights",
"Conditioning Recast FP64",
"ConditioningAdd",
"ConditioningAverageScheduler",
@@ -2549,6 +2598,7 @@
"Set Precision",
"Set Precision Advanced",
"Set Precision Universal",
"SharkOptions_Beta",
"SharkSampler",
"Sigmas Abs",
"Sigmas Add",
@@ -2646,6 +2696,7 @@
[
"CocoImageLoader",
"ColorspaceNode",
"DynamicWidgetExample",
"JSONNode",
"JSONReaderNode",
"JSONValueFinderNode",
@@ -2792,14 +2843,18 @@
],
"https://github.com/Cyber-Blacat/ComfyUI-Yuan": [
[
", and the value is the function name in the right of the",
"Black and white",
"Image Judgment",
"ImageMinusMask",
"Light or Dark",
"Load Random Images",
"Mask Preprocess Morphology",
"Number",
"PhotoShop Transfer",
"Yuan"
"ShowSomething",
"ShowTensorShapeLayout",
"a fake Nod"
],
{
"title_aux": "ComfyUI-Yuan"
@@ -2922,7 +2977,7 @@
"AsciiGenerator"
],
{
"author": "Viet Nguyen <nhviet1009@gmail.com>",
"author": "DeepNeko <deepneko@outlook.com>",
"title_aux": "ascii-art-comfyui"
}
],
@@ -3051,6 +3106,7 @@
],
"https://github.com/Dobidop/ComfyStereo": [
[
"DeoVRViewNode",
"StereoImageNode"
],
{
@@ -3189,6 +3245,17 @@
"title_aux": "ComfyUI-Addoor"
}
],
"https://github.com/Easymode-ai/ComfyUI-BPT": [
[
"TrimeshBPT",
"TrimeshLoad",
"TrimeshPreview",
"TrimeshSave"
],
{
"title_aux": "ComfyUI-BPT"
}
],
"https://github.com/Easymode-ai/ComfyUI-ShadowR": [
[
"ShadowRModelLoader",
@@ -4152,6 +4219,7 @@
],
"https://github.com/GraftingRayman/ComfyUI_GraftingRayman": [
[
"GR BLIP 2 Caption Generator",
"GR Background Remover REMBG",
"GR Checkered Board",
"GR Counter",
@@ -5188,6 +5256,19 @@
"title_aux": "ComfyUI JMNodes"
}
],
"https://github.com/KAVVATARE/ComfyUI-Light-N-Color": [
[
"ControlNetSwitch",
"FluxLightingAndColor",
"FluxSamplerPuLID",
"ImageSwitch",
"LatentSwitch",
"LoadInputOutputImage"
],
{
"title_aux": " ComfyUI-Light-N-Color"
}
],
"https://github.com/KLL535/ComfyUI_SimpleButcher": [
[
"Simple Auto Bypass",
@@ -5527,6 +5608,7 @@
"VHS_SelectFilename",
"VHS_SelectImages",
"VHS_SelectLatents",
"VHS_SelectLatest",
"VHS_SelectMasks",
"VHS_SplitImages",
"VHS_SplitLatents",
@@ -7230,6 +7312,7 @@
"BatchImageToMask",
"LoadImageFromBase64",
"LoadImagesFromBase64Array",
"MapTrajectoriesToSegmentedMasks",
"MultiCutAndDragOnPath"
],
{
@@ -7645,6 +7728,8 @@
"Runware ControlNet PreProcessor",
"Runware Embedding Search",
"Runware Embeddings Combine",
"Runware IPAdapter",
"Runware IPAdapters Combine",
"Runware Image Caption",
"Runware Image Inference",
"Runware Image Masking",
@@ -8349,6 +8434,14 @@
"title_aux": "ComfyUI-FreeMemory"
}
],
"https://github.com/ShmuelRonen/ComfyUI-FreeVC_wrapper": [
[
"FreeVC Voice Conversion"
],
{
"title_aux": "ComfyUI-FreeVC_wrapper"
}
],
"https://github.com/ShmuelRonen/ComfyUI-Gemini_Flash_2.0_Exp": [
[
"AudioRecorder",
@@ -9977,6 +10070,7 @@
"VrchSwitchOSCControlNode",
"VrchTextConcatOSCControlNode",
"VrchTextKeyControlNode",
"VrchTextSrtPlayerNode",
"VrchTextSwitchOSCControlNode",
"VrchVideoWebViewerNode",
"VrchWebViewerNode",
@@ -11303,6 +11397,14 @@
"title_aux": "ComfyUI_merge_ASVL"
}
],
"https://github.com/ajbergh/comfyui-ethnicity_hairstyle_clip_encoder": [
[
"CLIPTextEncodeWithExtras"
],
{
"title_aux": "comfyui-ethnicity_hairstyle_clip_encoder"
}
],
"https://github.com/akatz-ai/ComfyUI-AKatz-Nodes": [
[
"AK_AdjustDepthmapBrightness",
@@ -14640,6 +14742,7 @@
"VPScheduler",
"VideoLinearCFGGuidance",
"VideoTriangleCFGGuidance",
"WanImageToVideo",
"WebcamCapture",
"unCLIPCheckpointLoader",
"unCLIPConditioning"
@@ -15773,7 +15876,6 @@
],
"https://github.com/dorpxam/ComfyUI-LTXVideoLoRA": [
[
"LTXVCheckpointLoaderLoRA",
"LTXVLoRABlockEdit",
"LTXVLoRALoader",
"LTXVLoRASelector"
@@ -16285,6 +16387,16 @@
"title_aux": "FASHN Virtual Try-On"
}
],
"https://github.com/fat-tire/comfyui-unified-media-suite": [
[
"MediaLoad",
"MediaMerge",
"MediaSave"
],
{
"title_aux": "ComfyUI Unified Media Suite"
}
],
"https://github.com/fblissjr/ComfyUI-DatasetHelper": [
[
"DatasetBatchNode"
@@ -17285,6 +17397,8 @@
"Griptape Agent Config: Expand",
"Griptape Agent Config: Google Drivers",
"Griptape Agent Config: Google [DEPRECATED]",
"Griptape Agent Config: Griptape Cloud",
"Griptape Agent Config: Grok Drivers",
"Griptape Agent Config: Groq Drivers",
"Griptape Agent Config: HuggingFace Drivers",
"Griptape Agent Config: HuggingFace [DEPRECATED]",
@@ -17339,6 +17453,7 @@
"Griptape Embedding Driver: OpenAI",
"Griptape Embedding Driver: OpenAI Compatible",
"Griptape Embedding Driver: Voyage AI",
"Griptape End Workflow",
"Griptape Expand: Agent Nodes",
"Griptape Load: Audio",
"Griptape Load: Image From URL",
@@ -17349,6 +17464,8 @@
"Griptape Prompt Driver: Azure OpenAI",
"Griptape Prompt Driver: Cohere",
"Griptape Prompt Driver: Google",
"Griptape Prompt Driver: Griptape Cloud",
"Griptape Prompt Driver: Grok",
"Griptape Prompt Driver: Groq",
"Griptape Prompt Driver: HuggingFace",
"Griptape Prompt Driver: LM Studio",
@@ -17382,6 +17499,7 @@
"Griptape Run: Toolkit Task",
"Griptape Save: Text",
"Griptape Set: Default Agent",
"Griptape Start Workflow",
"Griptape Text To Speech Driver: ElevenLabs",
"Griptape Text To Speech Driver: OpenAI",
"Griptape Tool: Audio Transcription",
@@ -20040,6 +20158,7 @@
"AddLabel",
"AppendInstanceDiffusionTracking",
"AppendStringsToList",
"ApplyRifleXRoPE_HunuyanVideo",
"AudioConcatenate",
"BOOLConstant",
"BatchCLIPSeg",
@@ -20193,6 +20312,7 @@
"TorchCompileLTXModel",
"TorchCompileModelFluxAdvanced",
"TorchCompileModelHyVideo",
"TorchCompileModelWanVideo",
"TorchCompileVAE",
"TransitionImagesInBatch",
"TransitionImagesMulti",
@@ -20469,6 +20589,7 @@
],
"https://github.com/kk8bit/KayTool": [
[
"AIO_Translater",
"Abc_Math",
"Baidu_Translater",
"Color_Adjustment",
@@ -20476,7 +20597,8 @@
"Display_Any",
"Image_Size_Extractor",
"Strong_Prompt",
"Tencent_Translater"
"Tencent_Translater",
"Text"
],
{
"title_aux": "KayTool"
@@ -20804,6 +20926,14 @@
"title_aux": "ComfyUI nodes to use CrossImageAttention"
}
],
"https://github.com/leeguandong/ComfyUI_FluxClipWeight": [
[
"CLIPTextEncodeFluxWeight"
],
{
"title_aux": "ComfyUI nodes to use FluxClipWeight"
}
],
"https://github.com/leeguandong/ComfyUI_FluxCustomId": [
[
"ApplyCustomIDFlux",
@@ -23832,6 +23962,14 @@
"title_aux": "Comfy UI Text List Product"
}
],
"https://github.com/orange90/ComfyUI-Regex-Runner": [
[
"RegexNode"
],
{
"title_aux": " ComfyUI-Regex-Runner"
}
],
"https://github.com/osi1880vr/prompt_quill_comfyui": [
[
"PromptQuillGenerate",
@@ -27861,14 +27999,6 @@
"title_aux": "ComfyUI-Environment-Visualizer"
}
],
"https://github.com/willmiao/ComfyUI-Lora-Manager": [
[
"LoRALoader"
],
{
"title_aux": "ComfyUI-Lora-Manager"
}
],
"https://github.com/windfancy/zsq_prompt": [
[
"BatchPromptJson",

View File

@@ -1,7 +1,7 @@
[project]
name = "comfyui-manager"
description = "ComfyUI-Manager provides features to install and manage custom nodes for ComfyUI, as well as various functionalities to assist with ComfyUI."
version = "3.26.1"
version = "3.27.2"
license = { file = "LICENSE.txt" }
dependencies = ["GitPython", "PyGithub", "matrix-client==0.4.0", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions", "toml", "uv", "chardet"]