首页龙虾技能列表 › ComfyUI — 本地 ComfyUI 工作流运行器

🖼️ ComfyUI — 本地 ComfyUI 工作流运行器

v1.0.1

通过 HTTP API 运行本地 ComfyUI 工作流。支持执行指定文件路径/名称的工作流、处理原始 API 格式 JSON 以及默认捆绑工作流。

0· 3,100·0 当前·0 累计
by @kelvincai522·MIT-0
下载技能包
License
MIT-0
最后更新
2026/2/5
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
安全
high confidence
技能文件、指令和所需二进制文件与其声明的目的(运行本地 ComfyUI 工作流)一致;未请求任何无关的凭据,其安装/风险面有限且已解释。
评估建议
此技能看似适合运行本地 ComfyUI,但在安装或运行前,请审查以下点:- 文件写入:下载器将在 ~/ComfyUI/models/<子文件夹> 写入模型文件,并可能创建 ~/.local/bin/pget(从 GitHub Releases 下载的可执行文件)。- 可执行文件安装:pget 将下载到您的主目录并设置为可执行文件。如果您更喜欢自己安装 pget 或使用 --no-pget 避免自动安装。- 本地服务器访问:运行脚本将与预期位于 127.0.0.1:8188 的 ComfyUI 服务器通信。确保该服务器是一个可信的本地 ComfyUI 实例。技能仅在您明确提供时下载文件,不会联系外部 API。- 工作流编辑:代理被指示在运行前修改工作流 JSON(提示、种子等)。如果您有内容策略问题,请检查任何编辑的工作流(技能资产中的临时文件)- 例如,捆绑的 tmp-workflow 包含一个明确的色情提示。如果您对上述内容感到舒适(仅从可信源下载模型权重并允许技能写入您的 ComfyUI 安装),则此技能与其声明的目的成比例。...
详细分析 ▾
用途与能力
名称/描述、运行脚本、下载脚本和工作流资产都与“本地运行 ComfyUI 工作流”一致。所需二进制(python3)和对本地 ComfyUI 安装的引用适用于声明的目的。
指令范围
SKILL.md 指示代理读取和编辑工作流 JSON(资产或用户提供的)并运行捆绑的运行器和下载器。这需要在技能资产下读写文件并与用户的 ~/ComfyUI 安装和其 localhost API 交互 - 这是预期的 - 但用户应该意识到代理将进行文件系统更改(写入 tmp 工作流 JSON)并可能启动/期待 ComfyUI 服务器。
安装机制
技能是指令仅(无全局安装规格),但 download_weights 脚本可以从 GitHub Releases 自动下载 pget 二进制文件(https://github.com/replicate/pget/releases/latest/download)到 ~/.local/bin,并将模型文件写入 ~/ComfyUI/models/<子文件夹>,如用户请求。使用 GitHub Releases 是一个合理的来源,但它下载并写入一个可执行文件到用户的主目录,用户可能希望审查。
凭证需求
技能未声明任何环境变量或凭据。脚本仅使用本地路径(~/ComfyUI, ~/.local/bin)和网络访问,当用户明确请求下载模型权重或调用用户提供的远程 URL 时。未请求任何无关的秘密。
持久化与权限
always:false,并且未请求修改其他技能。可能的唯一持久更改是创建 ~/.local/bin/pget(下载 pget 时)和写入用户的 ComfyUI 模型目录下的模型文件 - 两者都限定在用户的主目录内,与技能的目的一致。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.12026/2/5
● 可疑

安装命令 点击复制

官方npx clawhub@latest install comfyui
镜像加速npx clawhub@latest install comfyui --registry https://cn.clawhub-mirror.com

技能文档

概述

使用 API 格式的 JSON 在本地服务器(默认 127.0.0.1:8188)上运行 ComfyUI 工作流,并返回输出图像。

运行前编辑工作流

运行脚本仅接受 --workflow 。在运行之前,你必须检查并编辑工作流 JSON,运用你对 ComfyUI API 格式的最佳了解。不要假设固定的节点 ID、class_type 名称或 _meta.title 值——用户可能已更新默认工作流或提供了自定义工作流。

对于每次运行(包括默认工作流):

  • 读取工作流 JSON(默认:skills/comfyui/assets/default-workflow.json,或用户提供的路径/文件)。
  • 识别与提示相关的节点:通过检查图形来查找包含主要文本提示的节点——例如 PrimitiveStringMultilineCLIPTextEncode(正向文本),或任何具有 _meta.titleclass_type 暗示 "Prompt" / "positive" / "text" 的节点。将相应的输入(例如 inputs.value,或编码器的文本输入)更新为你从用户那里得出的图像提示(主体、风格、光照、质量)。如果用户没有要求自定义图像,你可以保留现有提示或仅在需要时进行调整。
  • 可选识别风格/前缀节点——例如 StringConcatenate,或作为样式的第二个字符串输入。如果用户要求特定风格或清除默认前缀,则设置它们。
  • 可选设置新种子——找到采样器类节点(例如 KSamplerBasicGuider,或任何具有 seed 输入的节点)并将 seed 设置为新的随机整数,以便每次运行可以不同。
  • 将修改后的工作流写入临时文件(例如 skills/comfyui/assets/tmp-workflow.json)。对于任何内联 Python 使用 ~/ComfyUI/venv/bin/python;不要使用裸 python
  • 运行:comfyui_run.py --workflow 。如果工作流结构不清楚或找不到提示/采样器节点,按原样运行文件,只更改你能可靠识别的部分。对于任意用户提供的 JSON 采用相同方法:首先检查,然后在你最佳了解的范围内编辑,然后运行。

运行脚本(单一职责)

~/ComfyUI/venv/bin/python skills/comfyui/scripts/comfyui_run.py \
  --workflow 

该脚本仅将工作流加入队列并轮询直到完成。它打印包含 prompt_id 和输出 images 的 JSON。所有提示/风格/种子的更改都由你预先在 JSON 中完成。

如果服务器无法访问

如果运行脚本失败并出现连接错误(例如连接被拒绝或超时到 127.0.0.1:8188),ComfyUI 可能未安装或未运行。检查: ~/ComfyUI 是否存在并包含 main.py

  • 如果未安装: 安装 ComfyUI(例如克隆仓库、创建 venv、安装依赖项,然后启动服务器)。示例:
git clone https://github.com/comfyanonymous/ComfyUI.git ~/ComfyUI
cd ~/ComfyUI
python3 -m venv venv
~/ComfyUI/venv/bin/pip install -r requirements.txt

然后启动服务器(见下文)。告诉用户根据工作流可能需要将模型权重安装到 ~/ComfyUI/models/ 中。

  • 已安装但未运行: 启动 ComfyUI 服务器,使 API 在端口 8188 上可用。示例:
~/ComfyUI/venv/bin/python ~/ComfyUI/main.py --listen 127.0.0.1

在后台或单独的终端中运行,使其保持运行。然后重试工作流运行。使用 ~(或用户的主目录)以便在其机器上正常工作。

来自 URL 的模型权重

当用户粘贴或发送模型权重 URL 列表(每行一个,或逗号分隔)时,将这些文件下载到 ComfyUI 安装目录,以便工作流以后可以使用它们。

  • 规范化列表——每行一个 URL;剥离空行和注释(以 # 开头的行)。
  • 运行下载脚本,并指定 ComfyUI 基础路径(默认 ~/ComfyUI)。该脚本在可用时使用 pget 进行并行下载;如果 pget 不在 PATH 中,它会自动安装到 ~/.local/bin(无需 sudo)。如果无法安装 pget(例如不支持的 OS/架构),它会回退到内置下载。使用 ComfyUI venv Python 以便脚本正确运行:
~/ComfyUI/venv/bin/python skills/comfyui/scripts/download_weights.py --base ~/ComfyUI

将 URL 作为参数传递,或通过标准输入管道传输文件/列表:

echo "https://example.com/model.safetensors" | ~/ComfyUI/venv/bin/python skills/comfyui/scripts/download_weights.py --base ~/ComfyUI

或将用户的列表保存到临时文件并运行:

~/ComfyUI/venv/bin/python skills/comfyui/scripts/download_weights.py --base ~/ComfyUI < /tmp/weight_urls.txt

要强制使用内置下载(无 pget):添加 --no-pget

  • 子文件夹: 脚本从 URL/文件名推断 ComfyUI 模型子文件夹(例如 vaecliplorascheckpointstext_encoderscontrolnetupscale_models)。用户可以选择每行指定一个子文件夹,格式为 url subfolder(例如 https://.../model.safetensors vae)。你还可以使用 --subfolder loras 传递默认子文件夹,以便该运行中的所有 URL 都进入 models/loras/
  • 现有文件: 默认情况下,脚本会跳过已存在于磁盘上的 URL;使用 --overwrite 替换。
  • 路径: 文件写入 ~/ComfyUI/models// 下。告诉用户每个文件保存到的位置,以及如果需要他们可以在 ComfyUI 服务器(重新)启动后运行工作流。支持在 ComfyUI/models/ 下的子文件夹:checkpointsclipclip_visioncontrolnetdiffusion_modelsembeddingslorastext_encodersunetvaevae_approxupscale_models 等。当自动推断错误时使用 --subfolder

运行后

输出保存在 ComfyUI/output/ 下。使用脚本输出中的 images 列表来定位文件(文件名 + 子文件夹)。

⚠️ 始终将输出发送给用户

成功的 ComfyUI 运行后,你必须将生成的图像发送给用户。不要仅用文本回复文件名或使用 NO_REPLY。

  • 解析脚本输出 JSON 中的 images(每个都有 filenamesubfoldertype)。
  • 构建完整路径:ComfyUI/output/ + 子文件夹 + 文件名(例如 ComfyUI/output/z-image_00007_.png)。
  • 通过用户所在的渠道发送图像(例如使用消息/发送工具并提供图像 path,以便用户收到文件)。如果有帮助,可以包含简短的说明(例如 "给你。" 或 "东京街头场景。")。每次成功的运行都必须导致用户收到图像。永远不要只给他们一个文件名或不发送。
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务