免费获取学习方案
ARTICLE DETAIL

资讯详情

深耕编程基础知识与建站技术分享的一线实战洞察。

ComfyUI Manager节点列表空白的5种解法:KeyError favorites报错一次搞定

ComfyUI Manager节点列表空白的5种解法:KeyError favorites报错一次搞定 ComfyUI Manager节点列表空白的5种解法KeyError favorites报错一次搞定【免费下载链接】ComfyUI-ManagerComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various custom nodes of ComfyUI. Furthermore, this extension provides a hub feature and convenience functions to access a wide range of information within ComfyUI.项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-Manager你有没有遇到过这样的场景打开 ComfyUI 想装一个新节点结果 Manager 的Install Custom Nodes界面一直转圈最后给你一片空白。切到控制台一看一行红色报错赫然在目——KeyError: favorites。更麻烦的是之前装好的节点也全部失联没法更新、没法管理。本文就用 ComfyUI-ManagerComfyUI 官配的扩展管理器负责自定义节点的安装、卸载、禁用、启用与信息聚合来还原这条踩坑路先快速判断问题属于哪种类型再给出两条立竿见影的修复命令最后带你看懂节点列表从远程服务器到你的屏幕上到底经历了什么。一、先别慌1 分钟对照你的报错类型不是所有列表空白都指向同一个原因。先打开 ComfyUI 的终端窗口根据报错内容对号入座现象大概率原因处理思路报错KeyError: favorites本地extras.json数据缺少 favorites 字段切换数据源为 remote 模式网络请求超时 / Connection Error无法访问远程 channel检查网络、代理或改用 local 模式列表能显示但为空当前 channel 数据本身不全切回默认 channel 并清空缓存界面一直转圈不结束前端等待后端响应超时刷新页面并重启 ComfyUI 后端如果你的报错正是KeyError: favorites可以直接跳到下面的修复部分。这一行报错的本质是 Manager 在给节点列表打标签时去数据文件里取 favorites收藏节点名单却发现这个字段压根不存在于是一整页列表都渲染失败。二、五分钟修复先切换数据源再考虑回退版本修复一把 DB 模式从默认缓存切到 remoteComfyUI-Manager 顶部菜单点开Settings设置找到DB Channel / DB Mode这一项。你会看到三个选项Channel (1day cache)默认模式把远程数据缓存到本地缓存有效期一天Local直接使用 ComfyUI-Manager 内置的离线数据Channel (remote)每次都向远程服务器请求最新完整数据不做缓存优先。请选择Channel (remote)。这一步强制 Manager 重新从服务器拉取包含 favorites 字段的完整extras.json绕开本地那份缺字段的旧缓存。切换后回到节点列表页面正常情况下列表会在一两分钟内恢复。小贴士如果你是完全离线的环境remote 模式会失败。此时应选择 Local 模式但要注意——Local 数据是随 Manager 版本打包的只有升级 Manager 才会更新且旧版本内置数据同样可能缺字段所以离线用户更推荐做修复二。修复二回退到社区验证过的稳定版本如果切 remote 后依然报错说明问题出在 Manager 程序本身升级后对数据结构的解析要求变严了。此时把 Manager 回退到稳定提交即可cd /你的comfyui路径/custom_nodes/ComfyUI-Manager git checkout ca078e5这个提交号在社区中被大量用户验证过列表加载稳定。回退后重启 ComfyUI再按修复一把 DB 模式保持为 remote基本就能彻底解决。注意git checkout是直接切到某个历史提交属于临时分支状态。想再回到最新版先执行git checkout main或git checkout master切回主分支再git pull拉取更新即可。三、原理拆解一份节点列表的三站式旅程为什么换个数据源就能解决KeyError: favorites这要从 Manager 拉取节点列表的数据链路说起。以glob/manager_core.py中的get_data_by_mode()为核心整个过程分三站拉取站根据当前 DB 模式决定数据从哪来。local 模式读ComfyUI-Manager/extras.jsonremote/cache 模式则从 channel 地址请求extras.json、github-stats.json等文件。缓存站remote 模式拉到数据后会写进ComfyUI-Manager/.cache/目录文件名是 URL 哈希加原始文件名例如xxx_extras.json。默认的 1day cache 模式会优先读这份缓存——问题往往就出在这里缓存是旧版生成的缺了新版要求的 favorites 字段。加工站populate_favorites()读取缓存或内置的extras.json执行json_obj_extras[favorites]取出收藏名单。只要这一步拿不到 favorites 键异常立刻抛出后续的收藏标记、界面渲染全部中断。所以切到 remote 模式的本质是用一次强制刷新把缓存站里那份过期残次品数据换掉。这也是为什么很多用户反馈清一次浏览器缓存没用但切一下 remote 就好了——问题根本不在浏览器而在 Manager 自己的.cache目录。顺带一提若你之前把 channel 改成了非默认源界面顶部会显示红色 Channel 标识列表也会变少甚至空白。此时应回到 Manager 的channel 设置恢复默认源因为默认 channel 的数据覆盖面最广。四、进阶玩法用命令行直接换模式不想点 UIComfyUI-Manager 自带的命令行工具cm-cli.py支持同样的三种模式。在custom_nodes/ComfyUI-Manager目录下执行# 用 remote 模式刷新全部节点的最新信息 python cm-cli.py update all --mode remote # 查看当前可用列表也支持 --channel 指定数据源 python cm-cli.py show all --mode remote--mode可取值remote、local、cache与 UI 里的三种 DB 模式一一对应。这条命令在排查列表能不能拉到、是不是 channel 的问题时特别好用——命令行报错信息更直接能快速区分是网络故障还是数据缺字段。五、防复发清单这 4 件事建议长期坚持踩过一次坑就别再踩第二次。把下面几条养成习惯能大幅降低同类问题复发的概率升级 Manager 前先备份把整个custom_nodes/目录复制一份或直接在 ComfyUI 里用 Manager 的 Snapshot 功能导出一个环境快照出问题秒回滚。理解三种模式的适用场景日常用默认的 1day cache快出现异常列表用 remote强制拉新离线环境用 local但要接受数据陈旧。定期清理.cache缓存ComfyUI-Manager/.cache/下堆积的旧缓存是报错的温床删掉该目录后重启 ComfyUIManager 会自动重新拉取。善用环境隔离推荐在 Python 虚拟环境中运行 ComfyUI配合独立安装目录出问题直接重建环境避免污染全局依赖。六、写在最后KeyError: favorites听起来吓人本质不过是旧数据撞上了新代码。记住一句话先切 remote 换数据再回退版本换代码两步基本覆盖九成以上的场景。如果这两步都做完仍无解那就检查一下 ComfyUI 所在磁盘的写入权限并确认 ComfyUI 版本没有被 Manager 的最低要求卡住。工具是死的思路是活的。理解了节点列表从远程文件 → 本地缓存 → 界面渲染的完整链路以后再遇到类似的 JSON 字段报错你也能举一反三第一时间定位到该换数据还是该换版本。【免费下载链接】ComfyUI-ManagerComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various custom nodes of ComfyUI. Furthermore, this extension provides a hub feature and convenience functions to access a wide range of information within ComfyUI.项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-Manager创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表