Compare commits

...

5 Commits

Author SHA1 Message Date
Dr.Lt.Data
bba55d4d5a update DB
Some checks failed
Python Linting / Run Ruff (push) Has been cancelled
2025-12-12 23:08:38 +09:00
Dr.Lt.Data
87111bd889 update DB 2025-12-12 22:09:35 +09:00
SKFRMSEHF
3661ffd3ab
Update custom-node-list.json (#2388) 2025-12-12 21:41:13 +09:00
Dr.Lt.Data
d8f111a5e3 bump version 2025-12-12 18:16:51 +09:00
Benjamin Lu
ae5565ce68
ComfyUI version listing + nightly current fix (#2334)
* Improve comfyui version listing

* Fix ComfyUI semver selection and stable update

* Fix nightly current detection on default branch

* Fix: use tag_ref.name explicitly and cache get_remote_name result

- Use tag_ref.name instead of tag_ref object for checkout
- Cache get_remote_name() result to avoid duplicate calls

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Dr.Lt.Data <dr.lt.data@gmail.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 18:15:12 +09:00
11 changed files with 9718 additions and 9085 deletions

View File

@ -36782,6 +36782,16 @@
"description": "Enhance first and last frames for smooth video loop generation in ComfyUI. Based on WAN Video workflow.",
"tags": ["video", "frame", "loop", "workflow"]
},
{
"author": "princepainter",
"title": "Comfyui-PainterAudioLength",
"reference": "https://github.com/princepainter/Comfyui-PainterAudioLength",
"files": [
"https://github.com/princepainter/Comfyui-PainterAudioLength"
],
"install_type": "git-clone",
"description": "A tool for calculating audio duration that takes audio input and outputs the audio length as a floating-point number. (Description by CC)"
},
{
"author": "rafacost",
"title": "rafacostComfy",
@ -38035,6 +38045,16 @@
"install_type": "git-clone",
"description": "Two simple nodes that help you author sequence-friendly prompts from a single script that contains multiple clips. (Description by CC)"
},
{
"author": "TuonoMindCode",
"title": "ComfyUI-Resolution-Suggest-Downscale",
"reference": "https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale",
"files": [
"https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale"
],
"install_type": "git-clone",
"description": "Resolution suggestion and downscale helper node for ComfyUI."
},
{
"author": "sooxt98",
"title": "comfyui_longcat_image",
@ -38255,16 +38275,6 @@
"install_type": "git-clone",
"description": "Essential utility nodes for ComfyUI including prompt queue, batch processing, camera angle control, and resolution selector. (Description by CC)"
},
{
"author": "Zeknes",
"title": "Comfyui-LLM-Chat",
"reference": "https://github.com/Zeknes/Comfyui-LLM-Chat",
"files": [
"https://github.com/Zeknes/Comfyui-LLM-Chat"
],
"install_type": "git-clone",
"description": "Custom ComfyUI node providing unified access to multiple Large Language Models including OpenAI-compatible APIs and local Ollama instances with image support."
},
{
"author": "dandancow874",
"title": "ComfyUI-LMStudio-Controller",
@ -38407,7 +38417,57 @@
"install_type": "git-clone",
"description": "Converts normal maps to depth maps for use in ComfyUI. (Description by CC)"
},
{
"author": "SKFRMSEHF",
"title": "SK-ComfyUI-FolderingLoader",
"id": "skloader",
"reference": "https://github.com/SKFRMSEHF/comfyui_SK_Loader",
"files": [
"https://github.com/SKFRMSEHF/comfyui_SK_Loader"
],
"install_type": "git-clone",
"description": "Unified loader nodes with folder organization support for checkpoints, LoRA, VAE, and diffusion models"
},
{
"author": "dcyd-lun",
"title": "ComfyUI_text_diff",
"reference": "https://github.com/dcyd-lun/ComfyUI_text_diff",
"files": [
"https://github.com/dcyd-lun/ComfyUI_text_diff"
],
"install_type": "git-clone",
"description": "Compare two texts with GitHub/GitLab-style diff highlighting in ComfyUI"
},
{
"author": "darrell-goh",
"title": "ComfyUI-NanoBanana_node",
"reference": "https://github.com/darrell-goh/ComfyUI-NanoBanana_node",
"files": [
"https://github.com/darrell-goh/ComfyUI-NanoBanana_node"
],
"install_type": "git-clone",
"description": "A custom node for ComfyUI that allows you to interact with Nano Banana's Vertex API proxy, providing access to Gemini models with dynamic image inputs."
},
{
"author": "This-is-Uncut",
"title": "Custom-Node-ComfyUI-NBP-Uncut",
"reference": "https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut",
"files": [
"https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut"
],
"install_type": "git-clone",
"description": "Node to use NBP with custom API key to improve data privacy control."
},
{
"author": "drawthingsai",
"title": "draw-things-comfyui",
"reference": "https://github.com/drawthingsai/draw-things-comfyui",
"files": [
"https://github.com/drawthingsai/draw-things-comfyui"
],
"install_type": "git-clone",
"description": "The official Draw Things extension for ComfyUI. Sends image-generation requests to Draw Things over gRPC. Supports Bridge Mode for DT+ cloud and local model execution."
},

View File

@ -7328,8 +7328,11 @@
"https://github.com/FeiMao-326/Comfyui-General-API-Node": [
[
"FeiMao_326_GeneralAPINode",
"FeiMao_326_GetListElement",
"FeiMao_326_JsonParser",
"FeiMao_326_TextBatchReplace",
"FeiMao_326_TextIterator",
"FeiMao_326_TextSplitByDelimiter",
"ShowTextNode",
"SimpleTextNode"
],
@ -10614,10 +10617,18 @@
"JAX_EasyPrompt",
"JAX_EasyPromptSimple",
"JAX_ImageSizeMultiplier",
"JAX_KritaCanvas",
"JAX_KritaImageLayer",
"JAX_KritaMaskLayer",
"JAX_KritaOutput",
"JAX_KritaPipeIn",
"JAX_KritaResizeCanvas",
"JAX_KritaSelection",
"JAX_KritaSendText",
"JAX_KritaStrength",
"JAX_SamplerPipeOut"
"JAX_KritaStyle",
"JAX_Parameter",
"JAX_SamplerPipeOut",
"JAX_SendImageWebSocket"
],
{
"title_aux": "ComfyUI-Jax-Nodes"
@ -15504,6 +15515,19 @@
"title_aux": "ComfyUI SKBundle"
}
],
"https://github.com/SKFRMSEHF/comfyui_SK_Loader": [
[
"SK_CheckpointLoader",
"SK_CheckpointLoaderSimple",
"SK_LoraLoader",
"SK_UNETLoader",
"SK_VAELoader",
"SK_unCLIPCheckpointLoader"
],
{
"title_aux": "SK-ComfyUI-FolderingLoader"
}
],
"https://github.com/SLAPaper/ComfyUI-Image-Selector": [
[
"ImageDuplicator",
@ -18628,6 +18652,14 @@
"title_aux": "ComfyUI-Unprompted"
}
],
"https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut": [
[
"NanoBananaProNode"
],
{
"title_aux": "Custom-Node-ComfyUI-NBP-Uncut"
}
],
"https://github.com/ThunderBolt4931/comfyui_pixel_forge": [
[
"ConcatenateBatchHorizontally",
@ -18981,6 +19013,14 @@
"title_aux": "ComfyUI-MultiClip-Text-Script"
}
],
"https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale": [
[
"TuonoResolutionSuggestDownscale"
],
{
"title_aux": "ComfyUI-Resolution-Suggest-Downscale"
}
],
"https://github.com/TuriSc/comfyui-text-line-selector": [
[
"TextLineSelectorNode"
@ -27503,6 +27543,7 @@
"GeminiImageNode",
"GeminiInputFiles",
"GeminiNode",
"GenerateTracks",
"GetImageSize",
"GetVideoComponents",
"GrowMask",
@ -27558,6 +27599,7 @@
"KlingDualCharacterVideoEffectNode",
"KlingImage2VideoNode",
"KlingImageGenerationNode",
"KlingImageToVideoWithAudio",
"KlingLipSyncAudioToVideoNode",
"KlingLipSyncTextToVideoNode",
"KlingOmniProEditVideoNode",
@ -27569,6 +27611,7 @@
"KlingSingleImageVideoEffectNode",
"KlingStartEndFrameNode",
"KlingTextToVideoNode",
"KlingTextToVideoWithAudio",
"KlingVideoExtendNode",
"KlingVirtualTryOnNode",
"LTXVAddGuide",
@ -27929,6 +27972,10 @@
"WanImageToImageApi",
"WanImageToVideo",
"WanImageToVideoApi",
"WanMoveConcatTrack",
"WanMoveTrackToVideo",
"WanMoveTracksFromCoords",
"WanMoveVisualizeTracks",
"WanPhantomSubjectToVideo",
"WanSoundImageToVideo",
"WanSoundImageToVideoExtend",
@ -28830,6 +28877,14 @@
"title_aux": "DarkPrompts"
}
],
"https://github.com/darrell-goh/ComfyUI-NanoBanana_node": [
[
"NanoBananaNode"
],
{
"title_aux": "ComfyUI-NanoBanana_node"
}
],
"https://github.com/darth-veitcher/comfydv": [
[
"CircuitBreaker",
@ -29075,6 +29130,14 @@
"title_aux": "comfyui_facetools"
}
],
"https://github.com/dcyd-lun/ComfyUI_text_diff": [
[
"TextDiff"
],
{
"title_aux": "ComfyUI_text_diff"
}
],
"https://github.com/denfrost/Den_ComfyUI_Workflow": [
[
"Den_CropImage_AS",
@ -29565,6 +29628,22 @@
"title_aux": "ComfyUI_Dragos_Nodes"
}
],
"https://github.com/drawthingsai/draw-things-comfyui": [
[
"DrawThingsControlNet",
"DrawThingsHints",
"DrawThingsLoRA",
"DrawThingsNegative",
"DrawThingsPositive",
"DrawThingsPrompt",
"DrawThingsRefiner",
"DrawThingsSampler",
"DrawThingsUpscaler"
],
{
"title_aux": "draw-things-comfyui"
}
],
"https://github.com/dreamhartley/ComfyUI_show_seed": [
[
"Show Seed"
@ -43958,6 +44037,14 @@
"title_aux": "Comfyui-PainterAudioCut"
}
],
"https://github.com/princepainter/Comfyui-PainterAudioLength": [
[
"PainterAudioLength"
],
{
"title_aux": "Comfyui-PainterAudioLength"
}
],
"https://github.com/princepainter/Comfyui-PainterFLF2V": [
[
"PainterFLF2V"
@ -49078,7 +49165,8 @@
"TALoadCheckpointModelWithName",
"TALoadDiffusionModelWithName",
"TALoadGGUFModelWithName",
"TAPromptController"
"TAPromptController",
"ta_captioning"
],
{
"title_aux": "TA-ComfyUI-Nodes-Pack"
@ -49845,7 +49933,8 @@
"https://github.com/ussoewwin/ComfyUI-NunchakuFluxLoraStacker": [
[
"FastGroupsBypasserV2",
"FluxLoraMultiLoader"
"FluxLoraMultiLoader",
"ModelPatchLoaderCustom"
],
{
"title_aux": "ComfyUI-NunchakuFluxLoraStacker"
@ -51679,6 +51768,8 @@
"PreviewImageLam",
"PromptTranslator",
"QRCode",
"QwenImageEditNode",
"QwenImageNode",
"SaveImageLam",
"SaveImgOutputLam",
"SectionEnd",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -44,7 +44,7 @@ import manager_migration
from node_package import InstalledNodePackage
version_code = [3, 38, 2]
version_code = [3, 38, 3]
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
@ -2531,22 +2531,22 @@ def update_to_stable_comfyui(repo_path):
logging.error('\t'+branch.name)
return "fail", None
versions, current_tag, _ = get_comfyui_versions(repo)
if len(versions) == 0 or (len(versions) == 1 and versions[0] == 'nightly'):
versions, current_tag, latest_tag = get_comfyui_versions(repo)
if latest_tag is None:
logging.info("[ComfyUI-Manager] Unable to update to the stable ComfyUI version.")
return "fail", None
if versions[0] == 'nightly':
latest_tag = versions[1]
else:
latest_tag = versions[0]
if current_tag == latest_tag:
tag_ref = next((t for t in repo.tags if t.name == latest_tag), None)
if tag_ref is None:
logging.info(f"[ComfyUI-Manager] Unable to locate tag '{latest_tag}' in repository.")
return "fail", None
if repo.head.commit == tag_ref.commit:
return "skip", None
else:
logging.info(f"[ComfyUI-Manager] Updating ComfyUI: {current_tag} -> {latest_tag}")
repo.git.checkout(latest_tag)
repo.git.checkout(tag_ref.name)
execute_install_script("ComfyUI", repo_path, instant_execution=False, no_deps=False)
return 'updated', latest_tag
except:
@ -3370,36 +3370,80 @@ async def restore_snapshot(snapshot_path, git_helper_extras=None):
def get_comfyui_versions(repo=None):
if repo is None:
repo = git.Repo(comfy_path)
repo = repo or git.Repo(comfy_path)
remote_name = None
try:
remote = get_remote_name(repo)
repo.remotes[remote].fetch()
remote_name = get_remote_name(repo)
repo.remotes[remote_name].fetch()
except:
logging.error("[ComfyUI-Manager] Failed to fetch ComfyUI")
versions = [x.name for x in repo.tags if x.name.startswith('v')]
def parse_semver(tag_name):
match = re.match(r'^v(\d+)\.(\d+)\.(\d+)$', tag_name)
return tuple(int(x) for x in match.groups()) if match else None
# nearest tag
versions = sorted(versions, key=lambda v: repo.git.log('-1', '--format=%ct', v), reverse=True)
versions = versions[:4]
def normalize_describe(tag_name):
if not tag_name:
return None
base = tag_name.split('-', 1)[0]
return base if parse_semver(base) else None
current_tag = repo.git.describe('--tags')
# Collect semver tags and sort descending (highest first)
semver_tags = []
for tag in repo.tags:
semver = parse_semver(tag.name)
if semver:
semver_tags.append((semver, tag.name))
semver_tags.sort(key=lambda x: x[0], reverse=True)
semver_tags = [name for _, name in semver_tags]
if current_tag not in versions:
versions = sorted(versions + [current_tag], key=lambda v: repo.git.log('-1', '--format=%ct', v), reverse=True)
versions = versions[:4]
latest_tag = semver_tags[0] if semver_tags else None
main_branch = repo.heads.master
latest_commit = main_branch.commit
latest_tag = repo.git.describe('--tags', latest_commit.hexsha)
try:
described = repo.git.describe('--tags')
except Exception:
described = ''
if latest_tag != versions[0]:
versions.insert(0, 'nightly')
else:
versions[0] = 'nightly'
try:
exact_tag = repo.git.describe('--tags', '--exact-match')
except Exception:
exact_tag = ''
head_is_default = False
if remote_name:
try:
default_head_ref = repo.refs[f'{remote_name}/HEAD']
default_commit = default_head_ref.reference.commit
head_is_default = repo.head.commit == default_commit
except Exception:
head_is_default = False
nearest_semver = normalize_describe(described)
exact_semver = exact_tag if parse_semver(exact_tag) else None
if head_is_default and not exact_tag:
current_tag = 'nightly'
else:
current_tag = exact_tag or described or 'nightly'
# Prepare semver list for display: top 4 plus the current/nearest semver if missing
display_semver_tags = semver_tags[:4]
if exact_semver and exact_semver not in display_semver_tags:
display_semver_tags.append(exact_semver)
elif nearest_semver and nearest_semver not in display_semver_tags:
display_semver_tags.append(nearest_semver)
versions = ['nightly']
if current_tag and not exact_semver and current_tag not in versions and current_tag not in display_semver_tags:
versions.append(current_tag)
for tag in display_semver_tags:
if tag not in versions:
versions.append(tag)
versions = versions[:6]
return versions, current_tag, latest_tag

View File

@ -1,5 +1,85 @@
{
"custom_nodes": [
{
"author": "Nynxz",
"title": "ComfyUI_DiffsynthPause",
"reference": "https://github.com/Nynxz/ComfyUI_DiffsynthPause",
"files": [
"https://github.com/Nynxz/ComfyUI_DiffsynthPause"
],
"install_type": "git-clone",
"description": "ComfyUI custom node for controlling Diffsynth checkpoint pausing behavior during image generation workflows. (Description by CC)"
},
{
"author": "binarystatic",
"title": "ComfyUI-BinarystaticMasterSeed",
"reference": "https://github.com/binarystatic/ComfyUI-BinarystaticMasterSeed",
"files": [
"https://github.com/binarystatic/ComfyUI-BinarystaticMasterSeed"
],
"install_type": "git-clone",
"description": "BinarystaticMasterSeed node for ComfyUI. (Description by CC)"
},
{
"author": "Aruntd008",
"title": "[WIP] ComfyUI_SeamlessPattern",
"reference": "https://github.com/Aruntd008/ComfyUI_SeamlessPattern",
"files": [
"https://github.com/Aruntd008/ComfyUI_SeamlessPattern"
],
"install_type": "git-clone",
"description": "SeamlessPatternNode for ComfyUI. (Description by CC)\nNOTE: The files in the repo are not organized."
},
{
"author": "SilentLuxRay",
"title": "[WIP] ComfyUI-Furrey-Super-Prompt",
"reference": "https://github.com/SilentLuxRay/ComfyUI-Furrey-Super-Prompt",
"files": [
"https://github.com/SilentLuxRay/ComfyUI-Furrey-Super-Prompt"
],
"install_type": "git-clone",
"description": "A personalized all-in-one node for ComfyUI that simplifies prompt management and LoRA handling with automatic translation to English. (Description by CC)\nNOTE: The files in the repo are not organized."
},
{
"author": "Rayen21",
"title": "[WIP] ComfyUI-PromptLinePlus",
"reference": "https://github.com/Rayen21/ComfyUI-PromptLinePlus",
"files": [
"https://github.com/Rayen21/ComfyUI-PromptLinePlus"
],
"install_type": "git-clone",
"description": "ComfyUI custom node that splits multi-line prompts by line, enabling batch image generation with each line triggering one execution and supporting custom prompt boxes. (Description by CC)\nNOTE: The files in the repo are not organized."
},
{
"author": "ashtar1984",
"title": "comfyui-switch-bypass-mute-by-group",
"reference": "https://github.com/ashtar1984/comfyui-switch-bypass-mute-by-group",
"files": [
"https://github.com/ashtar1984/comfyui-switch-bypass-mute-by-group"
],
"install_type": "git-clone",
"description": "ComfyUI custom node for group-based node switching, bypassing, and muting control. (Description by CC)"
},
{
"author": "rookiestar28",
"title": "ComfyUI_Security_Audit",
"reference": "https://github.com/rookiestar28/ComfyUI_Security_Audit",
"files": [
"https://github.com/rookiestar28/ComfyUI_Security_Audit"
],
"install_type": "git-clone",
"description": "A lightweight, dual-layer security extension for ComfyUI using AST-based static analysis and runtime monitoring to detect malicious code in custom nodes."
},
{
"author": "c1660181647-hash",
"title": "ComfyUI-MM-Visual-Encryption",
"reference": "https://github.com/c1660181647-hash/ComfyUI-MM-Visual-Encryption",
"files": [
"https://github.com/c1660181647-hash/ComfyUI-MM-Visual-Encryption"
],
"install_type": "git-clone",
"description": "A visual noise encryption custom node for ComfyUI, supporting Image and Video privacy protection."
},
{
"author": "charlierz",
"title": "comfyui-charlierz",

View File

@ -985,6 +985,14 @@
"title_aux": "comfyui-face-remap [WIP]"
}
],
"https://github.com/Aruntd008/ComfyUI_SeamlessPattern": [
[
"SeamlessPatternNode"
],
{
"title_aux": "[WIP] ComfyUI_SeamlessPattern"
}
],
"https://github.com/Aruntd008/ComfyUI_blender_render": [
[
"Blender Render Node",
@ -3438,6 +3446,14 @@
"title_aux": "ComfyUI-NVVS [WIP]"
}
],
"https://github.com/Nynxz/ComfyUI_DiffsynthPause": [
[
"nynxz.Patch.ZImageDiffsynthControlnetPause"
],
{
"title_aux": "ComfyUI_DiffsynthPause"
}
],
"https://github.com/OSAnimate/ComfyUI-SpriteSheetMaker": [
[
"ImageGridNode",
@ -3848,6 +3864,14 @@
"title_aux": "Comfyui-Koi-Toolkit"
}
],
"https://github.com/Rayen21/ComfyUI-PromptLinePlus": [
[
"PromptLinePlus"
],
{
"title_aux": "[WIP] ComfyUI-PromptLinePlus"
}
],
"https://github.com/RicherdLee/comfyui-oss-image-save": [
[
"SaveImageOSS"
@ -4117,6 +4141,14 @@
"title_aux": "ComfyUI-Shinsplat [UNSAFE]"
}
],
"https://github.com/SilentLuxRay/ComfyUI-Furrey-Super-Prompt": [
[
"FurreySuperPrompt"
],
{
"title_aux": "[WIP] ComfyUI-Furrey-Super-Prompt"
}
],
"https://github.com/SirVeggie/comfyui-sv-nodes": [
[
"SV-AccumulateNode",
@ -5681,6 +5713,14 @@
"title_aux": "ComfyUI_MoreComfy"
}
],
"https://github.com/ashtar1984/comfyui-switch-bypass-mute-by-group": [
[
"SwitchBypassMute"
],
{
"title_aux": "comfyui-switch-bypass-mute-by-group"
}
],
"https://github.com/avocadori/ComfyUI-AudioAmplitudeConverter": [
[
"NormalizeAmpToFloatNode"
@ -5849,6 +5889,14 @@
"title_aux": "Comfyui_AudioRecoder"
}
],
"https://github.com/binarystatic/ComfyUI-BinarystaticMasterSeed": [
[
"BinarystaticMasterSeed"
],
{
"title_aux": "ComfyUI-BinarystaticMasterSeed"
}
],
"https://github.com/birnam/ComfyUI-GenData-Pack": [
[
"Checkpoint From String \ud83d\udc69\u200d\ud83d\udcbb",
@ -6168,6 +6216,17 @@
"title_aux": "ComfyUI_FMJ [WIP]"
}
],
"https://github.com/c1660181647-hash/ComfyUI-MM-Visual-Encryption": [
[
"MM_Image_Decrypt",
"MM_Image_Encrypt",
"MM_Video_Decrypt",
"MM_Video_Encrypt"
],
{
"title_aux": "ComfyUI-MM-Visual-Encryption"
}
],
"https://github.com/casterpollux/ComfyUI-USO": [
[
"USOImageEncoder",
@ -6510,6 +6569,7 @@
"GeminiImageNode",
"GeminiInputFiles",
"GeminiNode",
"GenerateTracks",
"GetImageSize",
"GetVideoComponents",
"GrowMask",
@ -6565,6 +6625,7 @@
"KlingDualCharacterVideoEffectNode",
"KlingImage2VideoNode",
"KlingImageGenerationNode",
"KlingImageToVideoWithAudio",
"KlingLipSyncAudioToVideoNode",
"KlingLipSyncTextToVideoNode",
"KlingOmniProEditVideoNode",
@ -6576,6 +6637,7 @@
"KlingSingleImageVideoEffectNode",
"KlingStartEndFrameNode",
"KlingTextToVideoNode",
"KlingTextToVideoWithAudio",
"KlingVideoExtendNode",
"KlingVirtualTryOnNode",
"LTXVAddGuide",
@ -6936,6 +6998,10 @@
"WanImageToImageApi",
"WanImageToVideo",
"WanImageToVideoApi",
"WanMoveConcatTrack",
"WanMoveTrackToVideo",
"WanMoveTracksFromCoords",
"WanMoveVisualizeTracks",
"WanPhantomSubjectToVideo",
"WanSoundImageToVideo",
"WanSoundImageToVideoExtend",
@ -8042,6 +8108,7 @@
],
"https://github.com/grokuku/ComfyUI-Holaf": [
[
"HolafBypasser",
"HolafImageComparer",
"HolafInstagramResize",
"HolafKSampler",
@ -8050,6 +8117,7 @@
"HolafMaskToBoolean",
"HolafOverlayNode",
"HolafRatioCalculator",
"HolafRemote",
"HolafResolutionPreset",
"HolafSaveImage",
"HolafTiledKSampler",
@ -11323,6 +11391,15 @@
"title_aux": "comfyui-plus-integrations [WIP]"
}
],
"https://github.com/rookiestar28/ComfyUI_Security_Audit": [
[
"ComfyUI_Node_Audit",
"ComfyUI_Security_Audit"
],
{
"title_aux": "ComfyUI_Security_Audit"
}
],
"https://github.com/rossturk/comfyui-primitive-mesh": [
[
"PrimitiveMeshNode"
@ -11724,6 +11801,7 @@
"DandyCss",
"DandyCssLoader",
"DandyEditorSettings",
"DandyFloat",
"DandyFloatCollector",
"DandyFloatPreview",
"DandyFloatSplitter",
@ -11731,6 +11809,7 @@
"DandyHtml",
"DandyHtmlLoader",
"DandyImageCollector",
"DandyInt",
"DandyIntCollector",
"DandyIntPreview",
"DandyIntSplitter",

View File

@ -224,6 +224,11 @@
"last_update": "2024-11-30 12:34:28",
"author_account_age_days": 4551
},
"https://github.com/Aruntd008/ComfyUI_SeamlessPattern": {
"stars": 0,
"last_update": "2025-12-11 12:31:38",
"author_account_age_days": 1077
},
"https://github.com/Aruntd008/ComfyUI_blender_render": {
"stars": 0,
"last_update": "2025-12-11 12:23:07",
@ -1084,6 +1089,11 @@
"last_update": "2025-08-19 09:14:19",
"author_account_age_days": 203
},
"https://github.com/Nynxz/ComfyUI_DiffsynthPause": {
"stars": 0,
"last_update": "2025-12-04 23:27:59",
"author_account_age_days": 2132
},
"https://github.com/OSAnimate/ComfyUI-SpriteSheetMaker": {
"stars": 4,
"last_update": "2025-03-12 04:22:34",
@ -1234,6 +1244,11 @@
"last_update": "2025-12-01 02:59:58",
"author_account_age_days": 524
},
"https://github.com/Rayen21/ComfyUI-PromptLinePlus": {
"stars": 0,
"last_update": "2025-12-06 16:48:49",
"author_account_age_days": 3481
},
"https://github.com/RicherdLee/comfyui-oss-image-save": {
"stars": 0,
"last_update": "2024-12-10 09:08:39",
@ -1349,6 +1364,11 @@
"last_update": "2025-03-15 00:02:11",
"author_account_age_days": 1560
},
"https://github.com/SilentLuxRay/ComfyUI-Furrey-Super-Prompt": {
"stars": 0,
"last_update": "2025-12-08 17:49:06",
"author_account_age_days": 4887
},
"https://github.com/SirVeggie/comfyui-sv-nodes": {
"stars": 5,
"last_update": "2025-10-19 09:44:27",
@ -1899,6 +1919,11 @@
"last_update": "2025-08-11 13:46:34",
"author_account_age_days": 4505
},
"https://github.com/ashtar1984/comfyui-switch-bypass-mute-by-group": {
"stars": 0,
"last_update": "2025-12-09 16:36:06",
"author_account_age_days": 54
},
"https://github.com/avocadori/ComfyUI-AudioAmplitudeConverter": {
"stars": 0,
"last_update": "2025-05-29 07:57:22",
@ -1989,6 +2014,11 @@
"last_update": "2025-07-08 05:35:33",
"author_account_age_days": 685
},
"https://github.com/binarystatic/ComfyUI-BinarystaticMasterSeed": {
"stars": 0,
"last_update": "2025-12-11 15:13:17",
"author_account_age_days": 4928
},
"https://github.com/birnam/ComfyUI-GenData-Pack": {
"stars": 0,
"last_update": "2024-03-25 01:25:23",
@ -2089,6 +2119,11 @@
"last_update": "2025-11-18 13:57:19",
"author_account_age_days": 639
},
"https://github.com/c1660181647-hash/ComfyUI-MM-Visual-Encryption": {
"stars": 1,
"last_update": "2025-12-08 16:09:22",
"author_account_age_days": 88
},
"https://github.com/casterpollux/ComfyUI-USO": {
"stars": 6,
"last_update": "2025-09-01 16:08:39",
@ -3989,6 +4024,11 @@
"last_update": "2025-05-02 17:38:19",
"author_account_age_days": 4317
},
"https://github.com/rookiestar28/ComfyUI_Security_Audit": {
"stars": 1,
"last_update": "2025-12-11 14:33:38",
"author_account_age_days": 749
},
"https://github.com/rookiestar28/ComfyUI_Text_Processor": {
"stars": 5,
"last_update": "2025-11-26 05:22:32",

View File

@ -1,5 +1,76 @@
{
"custom_nodes": [
{
"author": "TuonoMindCode",
"title": "ComfyUI-Resolution-Suggest-Downscale",
"reference": "https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale",
"files": [
"https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale"
],
"install_type": "git-clone",
"description": "Resolution suggestion and downscale helper node for ComfyUI."
},
{
"author": "dcyd-lun",
"title": "ComfyUI_text_diff",
"reference": "https://github.com/dcyd-lun/ComfyUI_text_diff",
"files": [
"https://github.com/dcyd-lun/ComfyUI_text_diff"
],
"install_type": "git-clone",
"description": "Compare two texts with GitHub/GitLab-style diff highlighting in ComfyUI"
},
{
"author": "SKFRMSEHF",
"title": "SK-ComfyUI-FolderingLoader",
"id": "skloader",
"reference": "https://github.com/SKFRMSEHF/comfyui_SK_Loader",
"files": [
"https://github.com/SKFRMSEHF/comfyui_SK_Loader"
],
"install_type": "git-clone",
"description": "Unified loader nodes with folder organization support for checkpoints, LoRA, VAE, and diffusion models"
},
{
"author": "drawthingsai",
"title": "draw-things-comfyui",
"reference": "https://github.com/drawthingsai/draw-things-comfyui",
"files": [
"https://github.com/drawthingsai/draw-things-comfyui"
],
"install_type": "git-clone",
"description": "The official Draw Things extension for ComfyUI. Sends image-generation requests to Draw Things over gRPC. Supports Bridge Mode for DT+ cloud and local model execution."
},
{
"author": "darrell-goh",
"title": "ComfyUI-NanoBanana_node",
"reference": "https://github.com/darrell-goh/ComfyUI-NanoBanana_node",
"files": [
"https://github.com/darrell-goh/ComfyUI-NanoBanana_node"
],
"install_type": "git-clone",
"description": "A custom node for ComfyUI that allows you to interact with Nano Banana's Vertex API proxy, providing access to Gemini models with dynamic image inputs."
},
{
"author": "This-is-Uncut",
"title": "Custom-Node-ComfyUI-NBP-Uncut",
"reference": "https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut",
"files": [
"https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut"
],
"install_type": "git-clone",
"description": "Node to use NBP with custom API key to improve data privacy control."
},
{
"author": "princepainter",
"title": "Comfyui-PainterAudioLength",
"reference": "https://github.com/princepainter/Comfyui-PainterAudioLength",
"files": [
"https://github.com/princepainter/Comfyui-PainterAudioLength"
],
"install_type": "git-clone",
"description": "A tool for calculating audio duration that takes audio input and outputs the audio length as a floating-point number. (Description by CC)"
},
{
"author": "akaugun",
"title": "comfyui-lora-hook-trigger",

View File

@ -7328,8 +7328,11 @@
"https://github.com/FeiMao-326/Comfyui-General-API-Node": [
[
"FeiMao_326_GeneralAPINode",
"FeiMao_326_GetListElement",
"FeiMao_326_JsonParser",
"FeiMao_326_TextBatchReplace",
"FeiMao_326_TextIterator",
"FeiMao_326_TextSplitByDelimiter",
"ShowTextNode",
"SimpleTextNode"
],
@ -10614,10 +10617,18 @@
"JAX_EasyPrompt",
"JAX_EasyPromptSimple",
"JAX_ImageSizeMultiplier",
"JAX_KritaCanvas",
"JAX_KritaImageLayer",
"JAX_KritaMaskLayer",
"JAX_KritaOutput",
"JAX_KritaPipeIn",
"JAX_KritaResizeCanvas",
"JAX_KritaSelection",
"JAX_KritaSendText",
"JAX_KritaStrength",
"JAX_SamplerPipeOut"
"JAX_KritaStyle",
"JAX_Parameter",
"JAX_SamplerPipeOut",
"JAX_SendImageWebSocket"
],
{
"title_aux": "ComfyUI-Jax-Nodes"
@ -15504,6 +15515,19 @@
"title_aux": "ComfyUI SKBundle"
}
],
"https://github.com/SKFRMSEHF/comfyui_SK_Loader": [
[
"SK_CheckpointLoader",
"SK_CheckpointLoaderSimple",
"SK_LoraLoader",
"SK_UNETLoader",
"SK_VAELoader",
"SK_unCLIPCheckpointLoader"
],
{
"title_aux": "SK-ComfyUI-FolderingLoader"
}
],
"https://github.com/SLAPaper/ComfyUI-Image-Selector": [
[
"ImageDuplicator",
@ -18628,6 +18652,14 @@
"title_aux": "ComfyUI-Unprompted"
}
],
"https://github.com/This-is-Uncut/Custom-Node-ComfyUI-NBP-Uncut": [
[
"NanoBananaProNode"
],
{
"title_aux": "Custom-Node-ComfyUI-NBP-Uncut"
}
],
"https://github.com/ThunderBolt4931/comfyui_pixel_forge": [
[
"ConcatenateBatchHorizontally",
@ -18981,6 +19013,14 @@
"title_aux": "ComfyUI-MultiClip-Text-Script"
}
],
"https://github.com/TuonoMindCode/ComfyUI-Resolution-Suggest-Downscale": [
[
"TuonoResolutionSuggestDownscale"
],
{
"title_aux": "ComfyUI-Resolution-Suggest-Downscale"
}
],
"https://github.com/TuriSc/comfyui-text-line-selector": [
[
"TextLineSelectorNode"
@ -27503,6 +27543,7 @@
"GeminiImageNode",
"GeminiInputFiles",
"GeminiNode",
"GenerateTracks",
"GetImageSize",
"GetVideoComponents",
"GrowMask",
@ -27558,6 +27599,7 @@
"KlingDualCharacterVideoEffectNode",
"KlingImage2VideoNode",
"KlingImageGenerationNode",
"KlingImageToVideoWithAudio",
"KlingLipSyncAudioToVideoNode",
"KlingLipSyncTextToVideoNode",
"KlingOmniProEditVideoNode",
@ -27569,6 +27611,7 @@
"KlingSingleImageVideoEffectNode",
"KlingStartEndFrameNode",
"KlingTextToVideoNode",
"KlingTextToVideoWithAudio",
"KlingVideoExtendNode",
"KlingVirtualTryOnNode",
"LTXVAddGuide",
@ -27929,6 +27972,10 @@
"WanImageToImageApi",
"WanImageToVideo",
"WanImageToVideoApi",
"WanMoveConcatTrack",
"WanMoveTrackToVideo",
"WanMoveTracksFromCoords",
"WanMoveVisualizeTracks",
"WanPhantomSubjectToVideo",
"WanSoundImageToVideo",
"WanSoundImageToVideoExtend",
@ -28830,6 +28877,14 @@
"title_aux": "DarkPrompts"
}
],
"https://github.com/darrell-goh/ComfyUI-NanoBanana_node": [
[
"NanoBananaNode"
],
{
"title_aux": "ComfyUI-NanoBanana_node"
}
],
"https://github.com/darth-veitcher/comfydv": [
[
"CircuitBreaker",
@ -29075,6 +29130,14 @@
"title_aux": "comfyui_facetools"
}
],
"https://github.com/dcyd-lun/ComfyUI_text_diff": [
[
"TextDiff"
],
{
"title_aux": "ComfyUI_text_diff"
}
],
"https://github.com/denfrost/Den_ComfyUI_Workflow": [
[
"Den_CropImage_AS",
@ -29565,6 +29628,22 @@
"title_aux": "ComfyUI_Dragos_Nodes"
}
],
"https://github.com/drawthingsai/draw-things-comfyui": [
[
"DrawThingsControlNet",
"DrawThingsHints",
"DrawThingsLoRA",
"DrawThingsNegative",
"DrawThingsPositive",
"DrawThingsPrompt",
"DrawThingsRefiner",
"DrawThingsSampler",
"DrawThingsUpscaler"
],
{
"title_aux": "draw-things-comfyui"
}
],
"https://github.com/dreamhartley/ComfyUI_show_seed": [
[
"Show Seed"
@ -43958,6 +44037,14 @@
"title_aux": "Comfyui-PainterAudioCut"
}
],
"https://github.com/princepainter/Comfyui-PainterAudioLength": [
[
"PainterAudioLength"
],
{
"title_aux": "Comfyui-PainterAudioLength"
}
],
"https://github.com/princepainter/Comfyui-PainterFLF2V": [
[
"PainterFLF2V"
@ -49078,7 +49165,8 @@
"TALoadCheckpointModelWithName",
"TALoadDiffusionModelWithName",
"TALoadGGUFModelWithName",
"TAPromptController"
"TAPromptController",
"ta_captioning"
],
{
"title_aux": "TA-ComfyUI-Nodes-Pack"
@ -49845,7 +49933,8 @@
"https://github.com/ussoewwin/ComfyUI-NunchakuFluxLoraStacker": [
[
"FastGroupsBypasserV2",
"FluxLoraMultiLoader"
"FluxLoraMultiLoader",
"ModelPatchLoaderCustom"
],
{
"title_aux": "ComfyUI-NunchakuFluxLoraStacker"
@ -51679,6 +51768,8 @@
"PreviewImageLam",
"PromptTranslator",
"QRCode",
"QwenImageEditNode",
"QwenImageNode",
"SaveImageLam",
"SaveImgOutputLam",
"SectionEnd",

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.38.2"
version = "3.38.3"
license = { file = "LICENSE.txt" }
dependencies = ["GitPython", "PyGithub", "matrix-nio", "transformers", "huggingface-hub>0.20", "typer", "rich", "typing-extensions", "toml", "uv", "chardet"]