用途
Image Edit 是 RunComfy 上的图像编辑技能,核心定位是一个“按意图路由”的调度器。它不会把用户锁定在某个单一模型上,而是根据用户真正想要完成的编辑类型,在 RunComfy 模型目录中选择合适的编辑模型执行。
主要能力与路由逻辑
该技能依据一张意图对照表对用户需求进行分类,然后选择以下四条路线之一:
- Nano Banana Edit(模型 google/nano-banana-2/edit):默认路线,适合通用编辑与批量处理。支持每次调用传入 1–20 张图片,单次输出 1–4 张,可锁定宽高比与分辨率以保持系列一致性。适用于批量一致编辑(如 SKU 图库、A/B 变体)、换背景并保持主体身份、以及用空间语言描述(如“左边的物体”“右上角”)的局部增删。未指定时默认使用此路线。
- GPT Image 2 Edit(模型 openai/gpt-image-2/edit):适合多语言文字与多参考图合成。在多语言排版(日文假名、西里尔文、阿拉伯文)方面表现突出;支持编号引用多张参考图(主体来自图 1、场景来自图 2、色调来自图 3);支持布局级方向性指令(如“把标题从右上移到下方居中”);可在翻译标题变体之间保持身份一致。最多 10 个参考 URL,第一张为主图,其余为辅助图。
- Flux Kontext Pro(模型 blackforestlabs/flux-1-kontext/pro/edit):适合单张图的单次精确局部编辑,例如“她现在拿着一把橙色雨伞”。仅支持单张源图,不支持数组;单参考、单指令、高保真保留。
- Z-Image Turbo Inpaint(模型 tongyi-mai/z-image/turbo/inpainting):适合基于蒙版的精确区域编辑。必须提供灰度蒙版 URL(白色 = 重绘区域,黑色 = 保留区域),strength 可调,边缘一致。适用于蒙版驱动的物体移除(线缆、水印、干扰物)以及区域替换(用蒙版整体换背景)。
使用方式
使用前需具备:
- RunComfy CLI:
npm i -g @runcomfy/cli - RunComfy 账号:
runcomfy login - CI / 容器环境:设置
RUNCOMFY_TOKEN=<token>
安装技能:
npx skills add agentspace-so/runcomfy-skills --skill image-edit -g
调用方式为 runcomfy run <model_id>,并通过 --input 传入 JSON,通过 --output-dir 指定输出目录。示例(Nano Banana Edit):
runcomfy run google/nano-banana-2/edit \
--input '{
"prompt": "Keep the subject identity, pose, and clothing unchanged. Convert the background into a rainy neon cyberpunk street.",
"image_urls": ["https://.../portrait.jpg"]
}' \
--output-dir <absolute/path>
各模型的字段结构不同,例如 Nano Banana Edit 支持 prompt、image_urls(1–20 个 HTTPS URL)、number_of_images、aspect_ratio、resolution、output_format、seed、enable_web_search;GPT Image 2 Edit 支持 prompt、images(最多 10 个 URL)、size(auto、1024_1024、1024_1536、1536_1024);Flux Kontext Pro 使用 prompt、image(单图)等;Z-Image Turbo Inpaint 需要 prompt、image、mask_image,并可设置 strength、control_scale 等。
工作流程:技能选择一个模型,用匹配的 JSON 体调用 runcomfy run <model_id>;CLI 向 Model API 发送 POST 请求,轮询请求状态,获取结果,并将 .runcomfy.net/.runcomfy.com 的 URL 下载到 --output-dir。Ctrl-C 可在退出前取消远程请求。
提示词与参数建议(源自技能资料)
- 保留优先:先写“保持 [身份 / 姿态 / 品牌 / 构图] 不变”,再说明要做的修改。
- 空间范围:可用“仅背景”“左边的物体”“右上象限”等具体位置描述。
- 批量一致性:批量任务中锁定 aspect_ratio 与 resolution。
- 小步迭代:复合编辑建议拆成多次短步骤。
- 多语言文本:在提示中精确引用图内文字,并说明文字体系(如“日文假名”“西里尔文”“阿拉伯文从右到左”)。
- 多参考图:用编号对应(“主体来自图 1,光照来自图 2”)。
- 蒙版:需要灰度蒙版 URL,白色为重绘区域,黑色为保留;蒙版边缘轻微模糊(1–3px)通常比锐利二值边缘融合更好。strength 取值:0.3–0.5 用于修图/清理,0.6–0.7 用于带风格匹配的物体替换,0.8–1.0 用于整区替换。
适用场景
- 批量保持身份一致的图像编辑(如商品图库、A/B 变体)
- 换背景同时保留主体身份
- 用空间语言描述的局部物体增删
- 多语言或非拉丁文字的图内文字重写
- 多参考图合成(主体、场景、色调分别来自不同图)
- 布局级精确重定位
- 单张图单次精确局部编辑
- 基于蒙版的物体移除与区域替换
限制
- 每条路线继承其所属模型的限制:Nano Banana 为 1–20 输入、1–4 输出;GPT Image 2 Edit 最多 10 个参考、4 种固定尺寸;Flux Kontext 仅单参考;Z-Image Inpaint 必须有蒙版。
- 不支持多路线混合,技能每次调用只选择一个模型。
- 若用户明确指定了品牌模型,则路由到对应的品牌技能(gpt-image-edit、flux-kontext、nano-banana-edit)以获得更完整的处理。
退出码
- 0:成功
- 64:CLI 参数错误
- 65:输入 JSON 错误 / schema 不匹配
- 69:上游 5xx
- 75:可重试(超时 / 429)
- 77:未登录或 token 被拒
完整参考见 docs.runcomfy.com/cli/troubleshooting。
安全与隐私
- Token 存储:
runcomfy login将 API token 写入~/.config/runcomfy/token.json,权限模式 0600(仅所有者可读写)。在 CI / 容器中可通过RUNCOMFY_TOKEN环境变量绕过文件。 - 输入边界:用户提示以 JSON 字符串通过
--input传给 CLI;CLI 不做 shell 展开,直接将 JSON 体通过 HTTPS 传给 Model API,提示内容不构成 shell 注入面。 - 第三方内容:传入的图片 / 蒙版 / 视频 URL 由 RunComfy 模型服务器抓取,而非本地 CLI。应将外部 URL 视为不可信;基于图像的提示注入是所有图像/视频编辑模型的已知风险。
- 出站端点:仅 model-api.runcomfy.net(请求提交)以及 *.runcomfy.net / *.runcomfy.com(生成结果的下载白名单)。无遥测、无回调。
- 生成文件大小上限:CLI 会中止任何超过 2 GiB 的单个下载,以防恶意或失控的模型输出占满磁盘。
暂未提供的信息
资料未提供该技能的收费、价格、平台支持范围、处理速度或效果保证等具体信息。