Compare commits

...

8 Commits
3.32 ... 3.32.2

12 changed files with 993 additions and 704 deletions

View File

@@ -25252,6 +25252,28 @@
"install_type": "git-clone",
"description": "This is a custom node collection for ComfyUI that provides some utility nodes."
},
{
"author": "cyberhirsch",
"title": "Seb Nodes",
"id": "seb_nodes",
"reference": "https://github.com/cyberhirsch/seb_nodes",
"files": [
"https://github.com/cyberhirsch/seb_nodes"
],
"install_type": "git-clone",
"description": "Save image node with dynamic paths and an 'Open Folder' button."
},
{
"author": "Alastor 666 1933",
"title": "Caching to not Waste",
"id": "caching_to_not_waste",
"reference": "https://github.com/alastor-666-1933/caching_to_not_waste",
"files": [
"https://github.com/alastor-666-1933/caching_to_not_waste"
],
"install_type": "git-clone",
"description": "This node allows you to cache/caching/store and reuse resized images, ControlNet images, masks, and texts. It avoids repeating heavy operations by loading previously saved files — saving time, memory, and processing power in future executions."
},
@@ -25703,3 +25725,4 @@
}
]
}

View File

@@ -252,6 +252,28 @@
"title_aux": "Comfyui-ergouzi-samplers"
}
],
"https://github.com/1hew/ComfyUI-1hewNodes": [
[
"BatchMaskMathOps",
"BlendModes",
"CoordinateExtractor",
"CroppedImagePaste",
"ImageAddLabel",
"ImageBlendModesByCSS",
"ImageCropWithBBox",
"ImageDetailHLFreqSeparation",
"ImageEditStitch",
"ImagePlot",
"LumaMatte",
"MaskBlend",
"MaskMathOps",
"SliderValueRangeMapping",
"Solid"
],
{
"title_aux": "ComfyUI 1hewNodes"
}
],
"https://github.com/1mckw/Comfyui-Gelbooru": [
[
"Gelbooru (ID)",
@@ -1152,6 +1174,14 @@
"title_aux": "ComfyUI-APQNodes"
}
],
"https://github.com/AIWarper/ComfyUI-NormalCrafterWrapper": [
[
"NormalCrafterNode"
],
{
"title_aux": "NormalCrafterWrapper"
}
],
"https://github.com/AInseven/ComfyUI-fastblend": [
[
"FillDarkMask",
@@ -4785,6 +4815,18 @@
"title_aux": "Save Image Plus for ComfyUI"
}
],
"https://github.com/Goshe-nite/comfyui-gps-supplements": [
[
"KSampler to Image Saver",
"Lora Prompt Concatenation",
"Lora to String",
"Model to String",
"gpsdebugger"
],
{
"title_aux": "GPS' Supplements for ComfyUI"
}
],
"https://github.com/Gourieff/ComfyUI-ReActor": [
[
"ImageRGBA2RGB",
@@ -13912,6 +13954,17 @@
"title_aux": "FAI-Node"
}
],
"https://github.com/alastor-666-1933/caching_to_not_waste": [
[
"caching_controlnet",
"caching_image",
"caching_mask",
"caching_text"
],
{
"title_aux": "Caching to not Waste"
}
],
"https://github.com/alessandroperilli/apw_nodes": [
[
"APW_CloudImageSize",
@@ -18229,6 +18282,14 @@
"title_aux": "ComfyUI-MaskBatchPermutations"
}
],
"https://github.com/cyberhirsch/seb_nodes": [
[
"SaveImageAdvanced"
],
{
"title_aux": "Seb Nodes"
}
],
"https://github.com/czcz1024/Comfyui-FaceCompare": [
[
"FaceCompare"
@@ -20184,6 +20245,15 @@
"title_aux": "RF Nodes"
}
],
"https://github.com/fpgaminer/joycaption_comfyui": [
[
"JJC_JoyCaption",
"JJC_JoyCaption_Custom"
],
{
"title_aux": "JoyCaption Nodes"
}
],
"https://github.com/frankchieng/ComfyUI_Aniportrait": [
[
"AniPortrait_Audio2Video",
@@ -20305,6 +20375,14 @@
"title_aux": "ComfyUI-BDsInfiniteYou"
}
],
"https://github.com/gasparuff/CustomSelector": [
[
"CustomSelector"
],
{
"title_aux": "comfyui-customselector"
}
],
"https://github.com/gelasdev/ComfyUI-FLUX-BFL-API": [
[
"FluxDevRedux_BFL",

View File

@@ -84,6 +84,11 @@
"last_update": "2024-06-28 05:28:05",
"author_account_age_days": 447
},
"https://github.com/1hew/ComfyUI-1hewNodes": {
"stars": 2,
"last_update": "2025-05-12 14:18:56",
"author_account_age_days": 770
},
"https://github.com/1mckw/Comfyui-Gelbooru": {
"stars": 4,
"last_update": "2025-04-06 14:11:25",
@@ -469,6 +474,11 @@
"last_update": "2024-11-21 08:56:49",
"author_account_age_days": 205
},
"https://github.com/AIWarper/ComfyUI-NormalCrafterWrapper": {
"stars": 39,
"last_update": "2025-05-09 22:07:32",
"author_account_age_days": 199
},
"https://github.com/AInseven/ComfyUI-fastblend": {
"stars": 215,
"last_update": "2024-11-22 03:32:25",
@@ -1689,6 +1699,11 @@
"last_update": "2024-11-13 06:03:10",
"author_account_age_days": 5254
},
"https://github.com/Goshe-nite/comfyui-gps-supplements": {
"stars": 0,
"last_update": "2025-05-12 00:36:39",
"author_account_age_days": 982
},
"https://github.com/Gourieff/ComfyUI-ReActor": {
"stars": 524,
"last_update": "2025-03-09 17:04:21",
@@ -4844,6 +4859,11 @@
"last_update": "2024-08-02 03:35:41",
"author_account_age_days": 3812
},
"https://github.com/alastor-666-1933/caching_to_not_waste": {
"stars": 0,
"last_update": "2025-05-09 14:50:09",
"author_account_age_days": 4371
},
"https://github.com/alessandroperilli/apw_nodes": {
"stars": 1,
"last_update": "2025-05-11 21:30:45",
@@ -6199,6 +6219,11 @@
"last_update": "2024-05-28 13:09:32",
"author_account_age_days": 2252
},
"https://github.com/cyberhirsch/seb_nodes": {
"stars": 0,
"last_update": "2025-05-07 16:41:33",
"author_account_age_days": 2189
},
"https://github.com/czcz1024/Comfyui-FaceCompare": {
"stars": 0,
"last_update": "2024-06-14 07:13:32",
@@ -6829,6 +6854,11 @@
"last_update": "2024-08-13 22:01:40",
"author_account_age_days": 2643
},
"https://github.com/fpgaminer/joycaption_comfyui": {
"stars": 0,
"last_update": "2025-05-12 06:56:57",
"author_account_age_days": 4792
},
"https://github.com/frankchieng/ComfyUI_Aniportrait": {
"stars": 55,
"last_update": "2024-09-13 10:41:16",
@@ -6884,6 +6914,11 @@
"last_update": "2025-04-01 03:12:04",
"author_account_age_days": 4026
},
"https://github.com/gasparuff/CustomSelector": {
"stars": 0,
"last_update": "2025-05-09 06:17:31",
"author_account_age_days": 4316
},
"https://github.com/gelasdev/ComfyUI-FLUX-BFL-API": {
"stars": 29,
"last_update": "2024-11-27 16:23:47",

View File

@@ -43,7 +43,7 @@ import manager_downloader
from node_package import InstalledNodePackage
version_code = [3, 32]
version_code = [3, 32, 2]
version_str = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')

View File

@@ -15,6 +15,7 @@ import re
import logging
import platform
import shlex
import cm_global
cache_lock = threading.Lock()
@@ -256,7 +257,7 @@ def get_installed_packages(renew=False):
pip_map[normalized_name] = y[1]
except subprocess.CalledProcessError:
logging.error("[ComfyUI-Manager] Failed to retrieve the information of installed pip packages.")
return set()
return {}
return pip_map
@@ -422,12 +423,13 @@ class PIPFixer:
# fix numpy
try:
np = new_pip_versions.get('numpy')
if np is not None:
if StrictVersion(np) >= StrictVersion('2'):
cmd = make_pip_cmd(['install', "numpy<2"])
subprocess.check_output(cmd , universal_newlines=True)
if cm_global.pip_overrides.get('numpy') == 'numpy<2':
if np is not None:
if StrictVersion(np) >= StrictVersion('2'):
cmd = make_pip_cmd(['install', "numpy<2"])
subprocess.check_output(cmd , universal_newlines=True)
logging.info("[ComfyUI-Manager] 'numpy' dependency were fixed")
logging.info("[ComfyUI-Manager] 'numpy' dependency were fixed")
except Exception as e:
logging.error("[ComfyUI-Manager] Failed to restore numpy")
logging.error(e)

View File

@@ -692,16 +692,6 @@
"install_type": "git-clone",
"description": "VideoDepthAnything nodes for ComfyUI"
},
{
"author": "MITCAP",
"title": "ComfyUI OpenAI DALL-E 3 Node [WIP]",
"reference": "https://github.com/MITCAP/OpenAI-ComfyUI",
"files": [
"https://github.com/MITCAP/OpenAI-ComfyUI"
],
"install_type": "git-clone",
"description": "This project provides custom nodes for ComfyUI that integrate with OpenAI's DALL-E 3 and GPT-4o models. The nodes allow users to generate images and describe images using OpenAI's API.\nNOTE: The files in the repo are not organized."
},
{
"author": "benmizrahi",
"title": "ComfyGCS [WIP]",

View File

@@ -148,11 +148,20 @@
],
"https://github.com/1hew/ComfyUI-1hewNodes": [
[
"BatchMaskMathOps",
"BlendModes",
"CoordinateExtractor",
"ImageConcatenate",
"CroppedImagePaste",
"ImageAddLabel",
"ImageBlendModesByCSS",
"ImageCropWithBBox",
"ImagePaste",
"ImageDetailHLFreqSeparation",
"ImageEditStitch",
"ImagePlot",
"LumaMatte",
"MaskBlend",
"MaskMathOps",
"SliderValueRangeMapping",
"Solid"
],
{
@@ -949,6 +958,7 @@
"DevToolsNodeWithSeedInput",
"DevToolsNodeWithStringInput",
"DevToolsNodeWithUnionInput",
"DevToolsNodeWithV2ComboInput",
"DevToolsNodeWithValidation",
"DevToolsObjectPatchNode",
"DevToolsRemoteWidgetNode",
@@ -1295,6 +1305,20 @@
"title_aux": "ComfyUI-Notifier"
}
],
"https://github.com/George0726/ComfyUI-video-accessory": [
[
"VideoAcc_CameraTrajectoryRecam",
"VideoAcc_ImageResizeAdvanced",
"VideoAcc_ImageUpscaleVideo",
"VideoAcc_LoadImage",
"VideoAcc_LoadVideo",
"VideoAcc_SaveMP4",
"VideoAcc_imageSize"
],
{
"title_aux": "ComfyUI-video-accessory [WIP]"
}
],
"https://github.com/Grant-CP/ComfyUI-LivePortraitKJ-MPS": [
[
"DownloadAndLoadLivePortraitModels",
@@ -1748,15 +1772,6 @@
"title_aux": "comfy-tif-support"
}
],
"https://github.com/MITCAP/OpenAI-ComfyUI": [
[
"OpenAIDalle3Node",
"OpenAIImageDescriptionNode"
],
{
"title_aux": "ComfyUI OpenAI DALL-E 3 Node [WIP]"
}
],
"https://github.com/ManuShamil/ComfyUI_BodyEstimation_Nodes": [
[
"CogitareLabsPoseIDExtractor"
@@ -2165,6 +2180,7 @@
"https://github.com/SanDiegoDude/ComfyUI-HiDream-Sampler": [
[
"HiDreamImg2Img",
"HiDreamResolutionSelect",
"HiDreamSampler",
"HiDreamSamplerAdvanced"
],
@@ -2465,6 +2481,34 @@
"title_aux": "TWanVideoSigmaSampler: EXPERIMENTAL [WIP]"
}
],
"https://github.com/TheJorseman/IntrinsicCompositingClean-ComfyUI": [
[
"AlbedoHarmonizer",
"AlbedoModelLoader",
"CompleteRelighting",
"CompositeNormalsCalculator",
"DepthEstimator",
"DepthModelLoader",
"ExtractSmallBgShd",
"HarmonizedImageCreator",
"ImageResizer",
"ImageResizerNP",
"ImageResizerNPMASK",
"IntrinsicDecomposer",
"IntrinsicModelLoader",
"LightCoeffExtractor",
"LoadImagePIL",
"MaskApplier",
"MaskGenerator",
"NormalsExtractor",
"NormalsModelLoader",
"ReshadingModelLoader",
"ReshadingProcessor"
],
{
"title_aux": "IntrinsicCompositingClean-ComfyUI"
}
],
"https://github.com/ThisModernDay/ComfyUI-InstructorOllama": [
[
"OllamaInstructorNode"
@@ -2972,6 +3016,14 @@
"title_aux": "ComfyUI_BeySoft"
}
],
"https://github.com/bheins/ComfyUI-glb-to-stl": [
[
"GLBToSTLNode"
],
{
"title_aux": "ComfyUI-glb-to-stl [WIP]"
}
],
"https://github.com/birnam/ComfyUI-GenData-Pack": [
[
"Checkpoint From String \ud83d\udc69\u200d\ud83d\udcbb",
@@ -3629,7 +3681,7 @@
"SaveImage",
"SaveImageWebsocket",
"SaveLatent",
"SaveSVG",
"SaveSVGNode",
"SaveVideo",
"SaveWEBM",
"SelfAttentionGuidance",
@@ -4146,12 +4198,16 @@
[
"GagaAddStringArray",
"GagaBatchStringReplace",
"GagaGetDirList",
"GagaGetFileList",
"GagaGetImageInfoByUpload",
"GagaGetImageInfoWithUrl",
"GagaGetImageWithPath",
"GagaGetStringArrayByIndex",
"GagaGetStringArraySize",
"GagaGetStringListSize",
"GagaPythonScript",
"GagaSaveImageToPath",
"GagaSaveImageWithInfo",
"GagaSaveImagesToGif",
"GagaSplitStringToList",
@@ -4263,6 +4319,7 @@
[
"CreatePointsString",
"XISER_Canvas",
"XIS_CanvasMaskProcessor",
"XIS_CompositorProcessor",
"XIS_CropImage",
"XIS_DynamicBatchKSampler",
@@ -5094,6 +5151,8 @@
"https://github.com/kijai/ComfyUI-HunyuanVideoWrapper": [
[
"DownloadAndLoadHyVideoTextEncoder",
"HunyuanVideoFresca",
"HunyuanVideoSLG",
"HyVideoBlockSwap",
"HyVideoCFG",
"HyVideoContextOptions",
@@ -5673,6 +5732,7 @@
"LF_SaveImageForCivitAI",
"LF_SaveJSON",
"LF_SaveMarkdown",
"LF_SaveText",
"LF_SchedulerSelector",
"LF_Sepia",
"LF_SequentialSeedsGenerator",
@@ -5681,6 +5741,7 @@
"LF_Something2Number",
"LF_Something2String",
"LF_SortJSONKeys",
"LF_SortTags",
"LF_String",
"LF_StringReplace",
"LF_StringTemplate",
@@ -5810,6 +5871,17 @@
"title_aux": "ComfyUI-MMYolo"
}
],
"https://github.com/maurorilla/ComfyUI-MisterMR-Nodes": [
[
"AddLogo",
"AddSingleObject",
"AddSingleText",
"ColorNode"
],
{
"title_aux": "ComfyUI-glb-to-stl [WIP]"
}
],
"https://github.com/mehbebe/ComfyLoraGallery": [
[
"LoraGallery"
@@ -6981,7 +7053,6 @@
"CLIPTokenCounter",
"GeminiNode",
"KoboldCppApiNode",
"KoboldCppLauncherNode",
"LoraStrengthXYPlot"
],
{
@@ -7271,28 +7342,19 @@
],
"https://github.com/xmarked-ai/ComfyUI_misc": [
[
"AceColorFixX",
"AceFloatX",
"AceIntegerX",
"BLIPMatcherX",
"BlendLatentsX",
"CheckpointLoaderBNB_X",
"CheckpointLoaderNF4_X",
"ColorCorrectionX",
"ColorSpaceConversionX",
"ColorTransferNodeX",
"CommonSourcesX",
"ConstantColorX",
"ConvexHullByMaskX",
"DeepSeekX",
"DepthDisplaceX",
"DummyTestNodeX",
"EmptyLatentX",
"ExpressionsX",
"FourCornerPinMaskX",
"GaussianBlurX",
"GaussianMaskBlurX",
"HiDreamAttentionScaleAllBlocksWithIPAdapterNode",
"IfConditionX",
"ImageCompositionX",
"ImageTileSquare",
@@ -7301,18 +7363,12 @@
"LoopCloseX",
"LoopOpenX",
"LoraBatchSamplerX",
"PixtralVisionX",
"PixtralX",
"RegionTesterNodeX",
"RegionalPromptSamplerX",
"RelightX",
"RemoveBackgroundX",
"SaveImageX",
"SelectiveDepthLoraBlocksX",
"SimpleBlockerX",
"SimpleWD14TaggerX",
"SplineImageMask",
"UnetLoaderBNB_X",
"WhiteBalanceX"
],
{

View File

File diff suppressed because it is too large Load Diff

View File

@@ -10,6 +10,16 @@
},
{
"author": "MITCAP",
"title": "ComfyUI OpenAI DALL-E 3 Node [REMOVED]",
"reference": "https://github.com/MITCAP/OpenAI-ComfyUI",
"files": [
"https://github.com/MITCAP/OpenAI-ComfyUI"
],
"install_type": "git-clone",
"description": "This project provides custom nodes for ComfyUI that integrate with OpenAI's DALL-E 3 and GPT-4o models. The nodes allow users to generate images and describe images using OpenAI's API.\nNOTE: The files in the repo are not organized."
},
{
"author": "raspie10032",
"title": "ComfyUI NAI Prompt Converter [REMOVED]",

View File

@@ -10,6 +10,16 @@
{
"author": "Yuan-ManX",
"title": "ComfyUI-Muyan-TTS",
"reference": "https://github.com/Yuan-ManX/ComfyUI-Muyan-TTS",
"files": [
"https://github.com/Yuan-ManX/ComfyUI-Muyan-TTS"
],
"install_type": "git-clone",
"description": "Make Muyan-TTS avialbe in ComfyUI."
},
{
"author": "fpgaminer",
"title": "JoyCaption Nodes",
@@ -64,6 +74,28 @@
"install_type": "git-clone",
"description": "This is a custom node collection for ComfyUI that provides some utility nodes."
},
{
"author": "cyberhirsch",
"title": "Seb Nodes",
"id": "seb_nodes",
"reference": "https://github.com/cyberhirsch/seb_nodes",
"files": [
"https://github.com/cyberhirsch/seb_nodes"
],
"install_type": "git-clone",
"description": "Save image node with dynamic paths and an 'Open Folder' button."
},
{
"author": "Alastor 666 1933",
"title": "Caching to not Waste",
"id": "caching_to_not_waste",
"reference": "https://github.com/alastor-666-1933/caching_to_not_waste",
"files": [
"https://github.com/alastor-666-1933/caching_to_not_waste"
],
"install_type": "git-clone",
"description": "This node allows you to cache/caching/store and reuse resized images, ControlNet images, masks, and texts. It avoids repeating heavy operations by loading previously saved files — saving time, memory, and processing power in future executions."
},
{
"author": "yichengup",
"title": "comfyui-face-liquify",
@@ -659,36 +691,6 @@
],
"install_type": "git-clone",
"description": "Imagen descripcion prompt system"
},
{
"author": "philipy1219",
"title": "ComfyUI-TaylorSeer",
"reference": "https://github.com/philipy1219/ComfyUI-TaylorSeer",
"files": [
"https://github.com/philipy1219/ComfyUI-TaylorSeer"
],
"install_type": "git-clone",
"description": "This project is the ComfyUI implementation of the TaylorSeer project [a/https://github.com/Shenyi-Z/TaylorSeer](https://github.com/Shenyi-Z/TaylorSeer)."
},
{
"author": "marklieberman",
"title": "ComfyUI-Liebs-Toast",
"reference": "https://github.com/marklieberman/ComfyUI-Liebs-Toast",
"files": [
"https://github.com/marklieberman/ComfyUI-Liebs-Toast"
],
"install_type": "git-clone",
"description": "A node to display a toast notification. Use it to send a toast when your prompt is complete. Also pairs well with [a/ComfyUI-Liebs_Picker](https://github.com/marklieberman/ComfyUI-Liebs-Picker) and [a/cg-image-filter](https://github.com/chrisgoringe/cg-image-filter) to be notified when the picker is waiting."
},
{
"author": "hua(Kungfu)",
"title": "ComfyUI_to_webui",
"reference": "https://github.com/kungful/ComfyUI_to_webui",
"files": [
"https://github.com/kungful/ComfyUI_to_webui"
],
"install_type": "git-clone",
"description": "Encapsulate the comfyui workflow as a gradio webui"
}
]
}

View File

@@ -252,6 +252,28 @@
"title_aux": "Comfyui-ergouzi-samplers"
}
],
"https://github.com/1hew/ComfyUI-1hewNodes": [
[
"BatchMaskMathOps",
"BlendModes",
"CoordinateExtractor",
"CroppedImagePaste",
"ImageAddLabel",
"ImageBlendModesByCSS",
"ImageCropWithBBox",
"ImageDetailHLFreqSeparation",
"ImageEditStitch",
"ImagePlot",
"LumaMatte",
"MaskBlend",
"MaskMathOps",
"SliderValueRangeMapping",
"Solid"
],
{
"title_aux": "ComfyUI 1hewNodes"
}
],
"https://github.com/1mckw/Comfyui-Gelbooru": [
[
"Gelbooru (ID)",
@@ -1152,6 +1174,14 @@
"title_aux": "ComfyUI-APQNodes"
}
],
"https://github.com/AIWarper/ComfyUI-NormalCrafterWrapper": [
[
"NormalCrafterNode"
],
{
"title_aux": "NormalCrafterWrapper"
}
],
"https://github.com/AInseven/ComfyUI-fastblend": [
[
"FillDarkMask",
@@ -4785,6 +4815,18 @@
"title_aux": "Save Image Plus for ComfyUI"
}
],
"https://github.com/Goshe-nite/comfyui-gps-supplements": [
[
"KSampler to Image Saver",
"Lora Prompt Concatenation",
"Lora to String",
"Model to String",
"gpsdebugger"
],
{
"title_aux": "GPS' Supplements for ComfyUI"
}
],
"https://github.com/Gourieff/ComfyUI-ReActor": [
[
"ImageRGBA2RGB",
@@ -13912,6 +13954,17 @@
"title_aux": "FAI-Node"
}
],
"https://github.com/alastor-666-1933/caching_to_not_waste": [
[
"caching_controlnet",
"caching_image",
"caching_mask",
"caching_text"
],
{
"title_aux": "Caching to not Waste"
}
],
"https://github.com/alessandroperilli/apw_nodes": [
[
"APW_CloudImageSize",
@@ -18229,6 +18282,14 @@
"title_aux": "ComfyUI-MaskBatchPermutations"
}
],
"https://github.com/cyberhirsch/seb_nodes": [
[
"SaveImageAdvanced"
],
{
"title_aux": "Seb Nodes"
}
],
"https://github.com/czcz1024/Comfyui-FaceCompare": [
[
"FaceCompare"
@@ -20184,6 +20245,15 @@
"title_aux": "RF Nodes"
}
],
"https://github.com/fpgaminer/joycaption_comfyui": [
[
"JJC_JoyCaption",
"JJC_JoyCaption_Custom"
],
{
"title_aux": "JoyCaption Nodes"
}
],
"https://github.com/frankchieng/ComfyUI_Aniportrait": [
[
"AniPortrait_Audio2Video",
@@ -20305,6 +20375,14 @@
"title_aux": "ComfyUI-BDsInfiniteYou"
}
],
"https://github.com/gasparuff/CustomSelector": [
[
"CustomSelector"
],
{
"title_aux": "comfyui-customselector"
}
],
"https://github.com/gelasdev/ComfyUI-FLUX-BFL-API": [
[
"FluxDevRedux_BFL",

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.32"
version = "3.32.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"]