Packaging fallback
该技能提供自定义节点注册表元数据、校验与发布的打包回退说明。
一、注册表元数据
注册表元数据位于 pack 的 pyproject.toml 中。comfy node init 会拒绝覆盖已存在的文件,因此需要就地编辑。
[project] 承载 name、description、version、license、dependencies 与 urls.Repository;[tool.comfy] 承载 PublisherId、DisplayName、Icon 与 includes。
二、兼容性范围
两个兼容性范围来源不同。[tool.comfy].requires-comfyui 声明 ComfyUI 的范围;前端范围则是 [project].dependencies 中的一条 comfyui-frontend-package 条目,该条目会从发布的依赖列表中剥离,而不是被安装。操作系统与加速器通过 [project].classifiers 声明。
三、校验与发布
在 comfy node publish --token <token> 之前先运行 comfy node validate;它会执行发布检查但不上传。空的 project.version 会导致失败,动态版本则需要 [tool.comfy.version].path。
四、归档内容
归档内容取决于 git,两种情况会以相反方向出错。在 git 检出中,归档的是 git 跟踪的文件,减去 .comfyignore 匹配项,再加上所有 [tool.comfy].includes 路径——includes 会覆盖 .comfyignore,因此未在列表中列出的未跟踪资源会被漏掉。在 git 检之外,或没有可用 git 时,整棵树会被归档,减去 .comfyignore 匹配项,因此未跟踪的密钥或本地权重会被一并发布。发布前应阅读归档的文件列表,而不是仅凭目录树推断。