
image-to-video
在 RunComfy 上将任何静态图像动画化——此技能是一个智能路由器,根据用户意图匹配 RunComfy 目录中正确的 i2v 模型。对于一般动画,选择 HappyHorse 1.0 I2V(竞技场排名第一,原生音频,身份保持);对于自定义配音唇形同步,选择 Wan 2.7 并附带 `audio_url`;对于图像+参考视频+参考音频的多模态动画,选择 Seedance 2.0 Pro。每个模型都附带文档化的提示模式,使调用者无需在错误模型上反复尝试即可获得更清晰的输出。通过本地 RunComfy CLI 调用 `runcomfy run <vendor>/<model>/image-to-video`(或端点变体)。触发词包括“image to video”、“image-to-video”、“i2v”、“animate image”、“make this move”或任何明确要求将静态图像转为视频的表述。
在 RunComfy 上将任何静态图像动画化——此技能是一个智能路由器 根据用户意图匹配 RunComfy 目录中正确的 i2v 模型。 对于一般动画,选择 HappyHorse 1.0 I2V(竞技场排名第一,原生音频, 身份保持);对于自定义配音唇形同步,选择 Wan 2.7 并附带 `audio_url`;对于图像+参考视频+参考音频的多模态动画,选择 Seedance 2.0 Pro。每个模型都附带文档化的提示模式,使调用者 无需在错误模型上反复尝试即可获得更清晰的输出。通过本地 RunComfy CLI 调用 `runcomfy run <vendor>/<model>/image-to-video`(或端点变体)。 触发词包括“image to video”、“image-to-video”、“i2v”、“animate image”、 “make this move”或任何明确要求将静态图像转为视频的表述。
图像转视频 — RunComfy 专业包
runcomfy.com · HappyHorse I2V · Wan 2.7 · Seedance 2.0 Pro · GitHub
图像转视频,意图路由。 此技能不局限于单一模型——它根据用户实际需求在 RunComfy 目录中选择正确的 i2v 模型:肖像动画、自定义配音唇形同步或多模态合成。
npx skills add agentspace-so/runcomfy-skills --skill image-to-video -g
根据用户意图选择正确的模型
| 用户意图 | 模型 | 原因 |
|---|---|---|
| 动画化肖像——保持身份稳定 | HappyHorse 1.0 I2V | Artificial Analysis Arena 排名第一(Elo 1392);面部保真度高 |
| 产品展示 / 360度 / 宏观运动 | HappyHorse 1.0 I2V | 几何保持 + 平滑相机运动 |
| 一次生成原生同步环境音频 | HappyHorse 1.0 I2V | 单次音频合成 |
| 动画化 并 与 自定义配音轨道 唇形同步 | Wan 2.7 + audio_url |
接受您自己的 MP3/WAV(3–30秒,≤15MB)并驱动唇形同步 |
| 多语言配音变体(相同图像,每次调用不同音频) | Wan 2.7 + audio_url |
相同镜头,每次调用更换 audio_url |
| 多模态——图像 + 参考视频 + 参考音频组合 | Seedance 2.0 Pro | 最多9个图像参考,3个视频参考(每个2–15秒),3个音频参考 |
| 品牌一致叙事,包含角色参考 + 场景参考 + 语音参考 | Seedance 2.0 Pro | 图像保持身份,视频保持场景,音频保持语音 |
| 未指定时的默认选择 | HappyHorse 1.0 I2V | 最佳综合质量 + 原生音频 |
代理读取此表,分类用户意图,并选择下方匹配的子章节。
前提条件
- RunComfy CLI —
npm i -g @runcomfy/cli - RunComfy 账户 —
runcomfy login打开浏览器设备码流程。 - CI / 容器 — 设置
RUNCOMFY_TOKEN=<token>。 - 源图像 URL — JPEG/PNG/WebP,最小300像素,≤10MB;宽高比 1:2.5 到 2.5:1(HappyHorse)——其他模型有类似规格。
路由 1:HappyHorse 1.0 I2V — 默认用于肖像 / 产品 / 一般动画
模型:happyhorse/happyhorse-1-0/image-to-video · 竞技场排名:#1(Elo 1392)
模式
| 字段 | 类型 | 必需 | 默认值 | 说明 |
|---|---|---|---|---|
image_url |
string | 是 | — | JPEG/JPG/PNG/WEBP。最小300像素。宽高比 1:2.5–2.5:1。≤10MB。 |
prompt |
string | 是 | — | ≤5000 非CJK字符或2500 CJK字符。描述运动/相机/光照。 |
resolution |
enum | 否 | 1080P |
720P 或 1080P。 |
duration |
int | 否 | 5 | 3–15秒。 |
seed |
int | 否 | 0 | 用于变体比较时重复使用。 |
watermark |
bool | 否 | true | 提供商水印开关。 |
输出宽高比 = 输入宽高比。不支持独立重构图。
调用
runcomfy run happyhorse/happyhorse-1-0/image-to-video \
--input '{
"image_url": "https://.../portrait.jpg",
"prompt": "Gentle camera drift around the subject'\''s face, subtle breathing motion, identity-stable features, soft natural light."
}' \
--output-dir <absolute/path>
提示技巧
- 以运动动词开头:"drift"、"dolly in"、"orbit"、"tilt up"、"reveal"、"blink"、"breathe"。优先描述什么在移动。
- 不要重复描述图像——模型已看到图像。将标记集中在变化上。
- 明确保持目标:"identity-stable features"、"packaging unchanged"、"background geometry stable"。
- 光照演变:"rim light intensifying"、"shadows shortening as camera rises"。
- 每个片段一个节拍——单一主要运动(orbit 或 dolly 或 tilt 或角色动作)。
路由 2:Wan 2.7 + audio_url — 当用户有自定义配音时
模型:wan-ai/wan-2-7/text-to-video(不是 /image-to-video——Wan 2.7 的 t2v 端点接受驱动唇形同步的 audio_url)
关于 Wan 2.7 的 i2v 说明:Wan 2.7 的主要 i2v 动画在此没有专用端点。对于纯 i2v(仅通过运动提示动画化图像),优先选择 HappyHorse i2v。仅在用户有自定义音频轨道并希望与生成的说话头部片段唇形同步时,才使用 Wan 2.7。
模式(Wan 2.7 t2v 带音频)
| 字段 | 类型 | 必需 | 默认值 | 说明 |
|---|---|---|---|---|
prompt |
string | 是 | — | 最多约5000字符。描述说话头部镜头:构图、光照、运动。 |
audio_url |
string | 是(用于唇形同步) | — | WAV/MP3,3–30秒,≤15MB。驱动唇形同步。 |
aspect_ratio |
enum | 否 | 16:9 |
16:9、9:16、1:1、4:3、3:4。 |
resolution |
enum | 否 | 1080p |
720p 或 1080p。 |
duration |
enum | 否 | 5 |
2–15(整数秒)。匹配您的音频长度。 |
negative_prompt |
string | 否 | — | 要避免的具体问题(例如 "no subtitles, no flicker")。 |
seed |
int | 否 | — | 可复现性。 |
调用
runcomfy run wan-ai/wan-2-7/text-to-video \
--input '{
"prompt": "Medium close-up of a confident spokesperson in a softly-lit recording booth, leaning slightly toward the camera, locked tripod, shallow DOF, warm key light from camera-left.",
"audio_url": "https://.../voiceover-en.mp3",
"duration": 12,
"aspect_ratio": "9:16"
}' \
--output-dir <absolute/path>
提示技巧
- 描述说话头部镜头——构图、光照、镜头感觉。音频驱动唇形同步;提示构建其周围的视觉框架。
- 将
duration匹配到音频长度——如果片段过长,超出音频部分将静音。 - 使用
negative_prompt处理问题:"no subtitles, no flicker, no distorted hands"。 - 对于多语言配音——相同提示,每次调用更换
audio_url。锁定种子以实现跨语言视觉一致性。
路由 3:Seedance 2.0 Pro — 多模态动画(图像 + 参考视频 + 参考音频)
模型:bytedance/seedance-v2/pro
当用户希望单个片段组合主题图像 + 参考视频中的场景 + 参考音频中的语音语调时使用。
模式(Seedance 2.0 Pro,i2v 相关字段)
| 字段 | 类型 | 必需 | 默认值 | 说明 |
|---|---|---|---|---|
prompt |
string | 是 | — | 中文 ≤500 字符 或 英文 ≤1000 词。 |
image_url |
array | 是(用于 i2v) | [] |
0–9 张图像。第一张是主要主题。 |
video_url |
array | 否 | [] |
0–3 个参考片段(MP4/MOV),每个 2–15 秒。 |
audio_url |
array | 否 | [] |
0–3 个参考音频(WAV/MP3),每个 2–15 秒,< 15MB。 |
aspect_ratio |
enum | 否 | adaptive |
adaptive、16:9、9:16、4:3、3:4、1:1、21:9。 |
duration |
int | 否 | 5 | 4–15(整数秒)。 |
resolution |
enum | 否 | 720p |
480p 或 720p。 |
generate_audio |
bool | 否 | true | 一次生成同步语音 / 音效 / 音乐。 |
seed |
int | 否 | — | 可复现性。 |
调用
runcomfy run bytedance/seedance-v2/pro \
--input '{
"prompt": "Subject from image 1 walks through the café in video 1, voice tone matches audio 1. Medium close-up, slow push-in, warm light, gentle ambience.",
"image_url": ["https://.../subject.jpg"],
"video_url": ["https://.../cafe-locked-shot.mp4"],
"audio_url": ["https://.../voice-tone.mp3"],
"duration": 8
}' \
--output-dir <absolute/path>
提示技巧
- 图像与文本分工——使用
image_url保持稳定(面部、服装、品牌);使用prompt描述演变(动作、情绪、光照)。 - 在提示中为参考编号:
"subject from image 1, lighting from video 1, voice from audio 1"。Seedance 能正确路由线索。 - 参考媒体规格——视频/音频必须为 2–15 秒;音频 < 15MB。
- 不要混合截然不同的美学——如果图像 1 是水彩风格而视频 1 是照片写实,输出会漂移。
限制
- 每个路由继承其模型的限制。 HappyHorse:15秒上限,输出宽高比 = 输入宽高比。Wan 2.7:15秒上限,音频 3–30秒/15MB。Seedance:此模板上限 720p,15秒上限。
- 不支持多路由混合。 此技能每次调用选择一个模型。如果用户希望在同一片段中同时使用 HappyHorse 动画和 Wan 风格的唇形同步,需要两次调用加拼接(超出本技能范围)。
- 品牌特定覆盖——如果用户指定了未列出的特定模型变体(例如 Wan 2.6、Seedance 1.5),则路由到相应的品牌技能(
wan-2-7、seedance-v2),而不是强制通过此技能。
退出码
| 码 | 含义 |
|---|---|
| 0 | 成功 |
| 64 | CLI 参数错误 |
| 65 | 输入 JSON 错误 / 模式不匹配 |
| 69 | 上游 5xx |
| 75 | 可重试:超时 / 429 |
| 77 | 未登录或令牌被拒绝 |
完整参考:docs.runcomfy.com/cli/troubleshooting。
工作原理
此技能根据用户意图选择 HappyHorse 1.0 I2V / Wan 2.7 t2v+audio / Seedance 2.0 Pro 之一,并使用匹配的 JSON 主体调用 runcomfy run <model_id>。CLI 向模型 API 发送 POST 请求,轮询请求,获取结果,并将任何 .runcomfy.net/.runcomfy.com URL 下载到 --output-dir。Ctrl-C 在退出前取消远程请求。
安全与隐私
- 令牌存储:
runcomfy login将 API 令牌写入~/.config/runcomfy/token.json,权限模式为 0600(仅所有者读写)。在 CI/容器中设置RUNCOMFY_TOKEN环境变量可绕过文件。 - 输入边界:用户提示通过
--input作为 JSON 字符串传递给 CLI。CLI 不会对提示进行 shell 扩展;它直接将 JSON 主体通过 HTTPS 传输到模型 API。提示内容不存在 shell 注入风险。 - 第三方内容:您传递的图像/遮罩/视频 URL 由 RunComfy 模型服务器获取,而非您机器上的 CLI。将外部 URL 视为不可信;基于图像的提示注入是任何图像编辑/视频编辑模型的已知风险。
- 出站端点:仅
model-api.runcomfy.net(请求提交)和*.runcomfy.net/*.runcomfy.com(生成输出的下载白名单)。无遥测,无回调。 - 生成文件大小上限:CLI 会中止任何超过 2 GiB 的单个下载,以防止恶意或失控模型输出导致磁盘填满。





