1实现原理 · 为什么它能做到
实现方式是「零代码 + 外部 CLI 委托」:happyhorse-1-0/ 只有一份 SKILL.md,无脚本;运行时由宿主 agent 用 Bash 执行 `runcomfy run happyhorse/happyhorse-1-0/text-to-video --input '<JSON>' --output-dir <path>`。视频与音频都在 RunComfy 云上生成,skill 只负责把意图翻成正确 JSON 与提示词。
1. The skill invokes `runcomfy run happyhorse/happyhorse-1-0/text-to-video` with a JSON body matching the schema.
完整生命周期协议(5 步):CLI 带 bearer token POST 到 Model API → 拿到 request_id → 每 2 秒轮询 GET .../requests/<id>/status → 终态后 GET .../requests/<id>/result → 只下载 host 以 .runcomfy.net / .runcomfy.com 结尾的 URL,其它 URL 只列出不抓取。
4. On terminal status, the CLI fetches `GET .../requests/<id>/result` and downloads any URL whose host ends with `.runcomfy.net` or `.runcomfy.com` into `--output-dir`. Other URLs are listed but not fetched.
输入 schema 共 7 个字段,覆盖文本/画幅/分辨率/时长/复现/水印:prompt(≤2500 字符,6 语言)、aspect_ratio(5 值,默认 16:9)、resolution(720P/1080P,默认 1080P)、duration(3–15 秒,默认 5)、seed(默认 0)、watermark(默认 true)。
| `watermark` | bool | no | true | Provider watermark. |
提示法针对时间维度:写动作演进而非静帧(多个时间性动词串联)、镜头与机位前置、迭代时一条视觉节拍一个片段。
**Describe motion over time, not a still.** "A woman turns from the window, walks two paces to the desk, picks up the cup, lifts it to her face, takes a sip" beats "a woman drinking coffee".
多镜头一致性靠『每镜重申锚点』实现:写两个节拍时必须在每个 Shot 里重述同一服装/道具(red wool coat / blue scarf),模型才能保持跨镜身份。
**Multi-shot consistency** — when describing two beats, restate the anchor at each: `"Shot 1: tall woman in red wool coat, blue scarf, in a rainy alley. Shot 2: same woman in red coat / blue scarf, now ducking under an awning."` HappyHorse holds the look but needs the anchor.
音频在同趟生成(对白/环境/Foley),但不接受外部音轨驱动口型;要音轨驱动应换 Wan 2.7(audio_url)或 Seedance 2.0 Pro——这条边界写在 Limitations 里。
- **Audio is in-pass only** — you can't pass external audio to drive lip-sync. For audio-driven lip-sync, use Wan 2.7 (which accepts an `audio_url`) or Seedance 2.0 Pro.
自我限界段(本族唯一):明确『不是自托管视频运行器』『不是能力授予,依赖可用的 RunComfy 账号』,把 skill 的定位说死。
Not a self-hosted video runner. Not a capability grant — depends on a working RunComfy account.
路由表把家族其它视频模型分工列全(音轨口型 → Wan 2.7、参考视频 + 精细对白口型 → Seedance 2.0 Pro、运动编辑 → Kling、快迭代 → LTX 2),并声明用户显式点名时无条件路由回本技能。
| Detailed lip-synced dialogue + reference video | Seedance 2.0 Pro |
2核心能力
3外部依赖
| Kind | Dependency / Endpoint |
|---|---|
| cli | runcomfy(RunComfy 官方 CLI) |
| package | @runcomfy/cli(npm 全局包) |
| package | npx skills(skills.sh 安装器) |
| api | RunComfy Model API(HappyHorse 1.0 text-to-video) |
| api | RunComfy 请求状态/结果/取消端点(轮询与中断) |
| network | RunComfy 产物下载白名单 |
| network | RunComfy 站点/模型页/文档(文档引用,非运行时调用) |
| network | GitHub(技能源码链接) |
4管控建议与判定依据
- scripts/: 执行本地脚本或命令: (skill 本体无脚本)由宿主 agent 以 Bash 执行仓外 CLI:`runcomfy run <vendor>/<model>/<endp
- 网络端点: 声明外部网络访问: POST https://model-api.runcomfy.net/v1/models/happyhorse/happyhorse-1-0/tex
- 本地工作目录: 文件读写与工件输出: 生成产物由仓外 CLI 下载写入 `--output-dir`(文档称单文件 > 2 GiB 时中止,防磁盘灌满)
5第二遍独立确认
- [ok] skill 目录内容 = 仅 SKILL.md — git ls-tree HEAD 与 ls -a 双向核实;仓库根仅 LICENSE + README.md + 31 个技能目录,无 scripts/、plugins/、.claude/。
- [ok] 全部外部依赖条目回查调用点真实存在 — runcomfy CLI 调用点 3 处(默认/竖屏/720p 试跑)、npm 安装 1 处、npx skills 1 处、model-api POST 1 处、status/result/cancel 三个端点各 1 处、白名单 1 处、文档/模型页/GitHub 链接多处,均实读命中。
- [discrepancy] Ctrl-C 取消的 HTTP 语义与同仓 CLI 说明书一致 — 本技能写『Ctrl-C 时发送 POST .../requests/<id>/cancel』,同仓 runcomfy-cli/SKILL.md 写『Ctrl-C sends DELETE to the request endpoint』,其余四份兄弟技能只写 '`Ctrl-C` cancels the remote request before exit.'(不含动词)。同一个 CLI 在两份文档里被描述成两种 HTTP 动词,至少一处不准确;CLI 源码不在仓内,无法在本仓判定孰是。
- [unlocatable] #1 on Artificial Analysis Video Arena(Elo 1333 t2v / 1392 i2v)主张 — 该排名出现在 description、正文首段与 Where it shines 三处,但本技能未给任何链接或数据来源;同仓 ai-video-generation/SKILL.md 与 image-to-video/SKILL.md 复述同一主张(后者写 Elo 1392)。榜单本身在仓外(artificialanalysis.ai),本次未做独立核实,记为源码内无法定位的证据。
- [discrepancy] 路由建议的目标模型在本仓有对应技能 — 'Cinematic motion editing on existing footage | Kling Video O1' 与 'Ultra-fast iteration (sub-second per frame) | LTX 2' 在仓库内没有同名技能目录(全仓无 ltx-* 目录;kling-3-0/SKILL.md 自称 'Kling 3.0 (also called Kling V3.0)')。Wan 2.7 / Seedance 2.0 Pro 两条有同名目录,属有效引用。
- [unlocatable] Security & Privacy 的技术断言可在本仓证实 — 0600 token 权限、2 GiB 下载上限、无 shell 展开、下载白名单、退出码语义、轮询间隔 2s 与取消动词均为仓外 @runcomfy/cli 行为;仓内无 CLI 源码或版本 pin,只能作为文档自述引用。
- [discrepancy] 安装一行与 GitHub 链接指向旧仓 agentspace-so/runcomfy-skills — 安装行 `npx skills add agentspace-so/runcomfy-skills --skill happyhorse-1-0 -g` 与 GitHub 链接 github.com/agentspace-so/runcomfy-skills 指向旧仓;本仓 pin 在 prime-skills/runcomfy-agent-skills(README 用 runcomfy-agent-skills)。gh api:旧仓仍存在(5★、pushed 2026-04-29、含 happyhorse-1-0 目录);prime-skills/runcomfy-agent-skills 与 agentspace-so/runcomfy-agent-skills 为同一仓(相同 stats)。按文档安装可能装到旧版。
- [discrepancy] 『watermark 可关』的安全含义是否被文档提示 — schema 给出 `watermark` 默认 true、可设 false(示例小节标题即 '**Vertical short (9:16, 8s, no watermark):**' 并把 watermark 设为 false),但 Security & Privacy 段完全未提『关闭供应方水印后产物无来源标识』这一滥用面(本族其它技能不提供该开关,无同类提示可比)。属安全提示覆盖不全,非代码风险。
6结论
ed6d01d2aaa14890…