关于 runpod-comfyui-models
runpod-comfyui-models 是用于修复适配 RunpodDirect 的 ComfyUI UI 工作流 JSON 的技能。它依据证据识别模型元数据,并另存修复副本,不覆盖原文件,也不猜测有歧义的模型。
主要功能
- 01从 ComfyUI PNG 提取工作流
- 02盘点模型加载节点选择
- 03依据来源证据解析模型身份
- 04将元数据写入新工作流副本
- 05谨慎处理歧义与受限访问
适用场景
- 01修复 RunpodDirect 工作流元数据
- 02恢复输出 PNG 中嵌入的工作流
- 03应用元数据前审核未决模型候选项
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ runpod/ runpod-plugins-official --skill runpod-comfyui-models安装后在 Claude Code 中输入/runpod-comfyui-models确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
evals/always-output-workflow.eval.mdambiguous-filename.eval.mdapi-inventory-only.eval.mdgated-model.eval.mdmixed-resolved-ambiguous-output.eval.mdnontechnical-handoff.eval.mdpng-output-extraction.eval.mdrepair-and-handoff.eval.mdrunpoddirect-required-handoff.eval.mdsupport-intake.eval.mdtemplate-recommendation.eval.mdunsafe-download-url.eval.mdreference/metadata.mdresolution.mdrunpoddirect.mdscripts/apply_model_metadata.pyextract_png_workflow.pyinventory_workflow_models.pytests/test_model_metadata_scripts.pytest_png_workflow_extractor.py详细介绍
修复适用于 RunpodDirect 的 ComfyUI 工作流
返回一个新的 UI 工作流 JSON,其中包含可信的 properties.models 记录,供 ComfyUI-RunpodDirect 使用——绝不要仅为了让图表进入队列,就替换成看似合理的模型。绝不要编辑、替换或覆盖提供的 JSON 或 PNG。对于每个可恢复的 UI 工作流,都必须交付且仅交付一个新的 <workflow-stem>.repaired.json——即使解析尚未完成、存在歧义、受到访问限制或被中断,也必须如此。
术语——工作流、提示词与元数据记录
| 术语 | 含义 | 此处的作用 |
|---|---|---|
| UI 工作流 JSON | ComfyUI 前端导出/导入的图表:节点、连线、小组件值、properties | 本工具唯一会标注的 JSON |
API prompt JSON | POST 到 /prompt 的执行格式,以节点 ID 为键 | 仅作为清单证据——绝不标注 |
properties.models 记录 | 加载器节点的模型元数据条目(name、url、directory,以及可选的 hash) | 修复时新增或修正的内容 |
标注仅针对 UI 格式;API 提示词没有可移植的模型元数据约定。
接收文件
- 尚未提供文件 → 只询问一次:“请附上工作流 JSON 或原始 ComfyUI 输出 PNG。”(截图和重新编码的图像通常会丢失工作流。)
- 已提供文件 → 不再询问其他接收问题:必要时提取内容,建立清单,解析并写入修复副本,然后返回。
- 没有可恢复的 UI 工作流(仅有 API JSON、已剥离工作流数据的 PNG)→ 这是唯一的阻碍;请用户提供原始 UI 工作流或 PNG。
确定处理路径
| 观察到的状态 | 操作 |
|---|---|
| 每项模型需求的元数据都完整,且未报告问题 | 原样保留其内容,写入唯一的新最终 JSON,并说明没有新增记录。只有在用户明确要求,或实时故障提供了问题证据时,才验证或加固。 |
| 文件名准确但没有可信 URL | 检查节点上下文,然后从原始模板来源、ComfyUI-Manager、Hugging Face 或 Civitai 查找候选项。 |
| 文件名通用或存在多个可信匹配项 | 不要应用有歧义的元数据,也不要下载。发布部分修复的工作流,报告其路径,然后展示候选项并请用户选择。 |
| 文件受访问限制或许可限制 | 先发布部分修复的工作流,然后暂停;在确认访问权限和接受许可之前,不进行身份验证或下载。 |
| RunpodDirect 路由不可用 | 生成修复后的工作流;将工作清单保留为临时文件,并且仅在环境需要时推荐或诊断 RunpodDirect。 |
参考资料
| 参考资料 | 解答的问题 |
|---|---|
| reference/resolution.md | 这是哪个确切的模型文件?证据、来源顺序、置信度政策。 |
| reference/metadata.md | 如何将获准的元数据写入工作流?补丁规则、不安全 URL 的处理、确切的交付说明。 |
| reference/runpoddirect.md | 当前扩展是否可用,以及如何安全驱动它?功能检测、下载授权、URL/重定向/密钥安全。 |
低摩擦约定
- 检查 / 核查 → 只读操作。
- 查找 / 修复 / 更正 → 还要写入新的修复副本。
- 下载 / 让它在此 Pod 上运行 → 还要下载已验证且内容未变的公开文件组。
- 运行 / 端到端测试 → 此外还要进行一次受控冒烟测试。
绝不重复确认用户开头的意图已涵盖的步骤。只针对实质性决策询问一次:存在歧义、访问受限或需要接受许可、需要安装或重启、需要决定成本/存储,或需要执行超出最初请求的操作。如果没有待决事项,就完成已获授权的工作并一次性报告——可选的下一步不是问题。
工作流
- 提取(仅限 PNG 输入):
python3 -B extract_png_workflow.py从 ComfyUI 输出 PNG 中提取嵌入的 UIworkflow,并存入任务的临时目录。 - 清点:
python3 -B inventory_workflow_models.py列出所有加载器选项,包括子图中的选项——这些是证据,而非身份判定。 - 解析每个身份时遵循 reference/resolution.md,并在找到第一个
verified发布者制品时停止;将审核清单保留在临时目录中。 - 应用:
python3 -B apply_model_metadata.py --allow-unresolved每次都会写入新工作流,即使无法解析任何内容也一样;补丁规则、不安全 URL 处理和发布契约见 reference/metadata.md。 - 实时检查(仅限请求范围内):对 pod 的 RunpodDirect 路由进行一次批量只读探测——可以使用
curl,应批量执行,而非逐条显示执行过程——之后仅下载授权的内容,具体遵循 reference/runpoddirect.md。
仅在使用出错后查阅 --help。工作状态(提取的 JSON、清单、审核清单)存放在一个任务专用临时目录中;修复后的 JSON 验证通过后,删除该目录。修复后的 JSON 是唯一持久化的产物。使用通俗语言交接——具体措辞见 reference/metadata.md。
后续分流
| 实际任务是…… | 转交给 |
|---|---|
| 为工作流配置 pod | 黄金路径 02(索引:黄金路径),然后使用 runpod-mcp 或 runpodctl |
| 已准确知道模型仓库和文件 | companion-clis |
| 模板 pod 无法启动,或模板 pod 缺少模型 | runpod-templates |
| 安装或了解 RunpodDirect 本身 | reference/runnpoddirect.md |
评论
支持 Markdown