happyhorse-1-0

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

HappyHorse 1.0 — Pro Pack on RunComfy

HappyHorse 1.0 — RunComfy专业版套件

HappyHorse 1.0 — currently #1 on Artificial Analysis Video Arena (Elo 1333 t2v / 1392 i2v) — hosted on the RunComfy Model API. Native 1080p video with in-pass synchronized audio (dialogue, ambient, Foley) and multi-shot character consistency.
bash
npx skills add agentspace-so/runcomfy-skills --skill happyhorse-1-0 -g
HappyHorse 1.0——目前在Artificial Analysis Video Arena中排名第一(文本转视频Elo评分1333,图像转视频Elo评分1392)——托管于RunComfy Model API。支持生成原生1080p视频,具备生成过程同步音频(对话、环境音、拟音)和多镜头角色一致性特性。
bash
npx skills add agentspace-so/runcomfy-skills --skill happyhorse-1-0 -g

When to pick this model (vs siblings)

模型选择指南(与同类模型对比)

You wantUse
Multi-shot story with character / wardrobe consistencyHappyHorse 1.0
Native audio in the same generation passHappyHorse 1.0
Currently-#1 blind-vote video modelHappyHorse 1.0
Detailed lip-synced dialogue + reference videoSeedance 2.0 Pro
Fine motion control + multi-reference conditioningWan 2.7
Ultra-fast iteration (sub-second per frame)LTX 2
Cinematic motion editing on existing footageKling Video O1
If the user said "HappyHorse" / "happy horse video" explicitly, route here regardless.
你的需求选择模型
需要角色/服装一致的多镜头故事HappyHorse 1.0
需要在生成过程中同步生成原生音频HappyHorse 1.0
当前盲选排名第一的视频生成模型HappyHorse 1.0
需要精准唇同步对话+参考视频Seedance 2.0 Pro
需要精细运动控制+多参考条件Wan 2.7
需要超快速迭代(每帧耗时不到1秒)LTX 2
需要对现有素材进行电影级运动编辑Kling Video O1
若用户明确提及“HappyHorse”/“happy horse video”,则直接选择该模型。

Prerequisites

前置条件

  1. RunComfy CLI
    npm i -g @runcomfy/cli
  2. RunComfy account
    runcomfy login
    opens a browser device-code flow.
  3. CI / containers — set
    RUNCOMFY_TOKEN=<token>
    instead of
    runcomfy login
    .
  1. RunComfy CLI — 执行
    npm i -g @runcomfy/cli
    安装
  2. RunComfy账号 — 执行
    runcomfy login
    会打开浏览器设备码登录流程
  3. CI/容器环境 — 设置环境变量
    RUNCOMFY_TOKEN=<token>
    替代
    runcomfy login
    操作

Endpoints + input schema

接口与输入配置

happyhorse/happyhorse-1-0/text-to-video

happyhorse/happyhorse-1-0/text-to-video

FieldTypeRequiredDefaultNotes
prompt
stringyesUp to 2,500 chars. 6 languages (CN/EN/JP/KR/DE/FR).
aspect_ratio
enumno
16:9
16:9
,
9:16
,
1:1
,
4:3
,
3:4
only.
resolution
enumno
1080P
720P
or
1080P
.
duration
intno53–15 seconds.
seed
intno00..2^31-1. Reuse for variant comparisons.
watermark
boolnotrueProvider watermark.
字段类型是否必填默认值说明
prompt
string最多2500字符,支持6种语言(中/英/日/韩/德/法)
aspect_ratio
枚举
16:9
仅支持
16:9
9:16
1:1
4:3
3:4
resolution
枚举
1080P
可选
720P
1080P
duration
int53-15秒
seed
int0取值范围0到2^31-1,重复使用可对比变体效果
watermark
booltrue是否添加服务商水印

How to invoke

调用方式

Default (16:9 1080p 5s):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{"prompt": "<user prompt>"}' \
  --output-dir <absolute/path>
Vertical short (9:16, 8s, no watermark):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{
    "prompt": "<user prompt>",
    "aspect_ratio": "9:16",
    "duration": 8,
    "watermark": false
  }' \
  --output-dir <absolute/path>
Cheaper test pass (720p):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{"prompt": "<user prompt>", "resolution": "720P", "duration": 3}' \
  --output-dir <absolute/path>
The CLI submits, polls every 2s until terminal, then downloads any
*.runcomfy.net
/
*.runcomfy.com
URL from the result into
--output-dir
. Stdout is the result JSON. Stderr is progress.
默认配置(16:9 1080p 5秒):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{"prompt": "<用户提示词>"}' \
  --output-dir <绝对路径>
竖版短视频(9:16,8秒,无水印):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{
    "prompt": "<用户提示词>",
    "aspect_ratio": "9:16",
    "duration": 8,
    "watermark": false
  }' \
  --output-dir <绝对路径>
低成本测试(720p):
bash
runcomfy run happyhorse/happyhorse-1-0/text-to-video \
  --input '{"prompt": "<用户提示词>", "resolution": "720P", "duration": 3}' \
  --output-dir <绝对路径>
CLI会提交请求,每2秒轮询一次直到完成,然后将结果中所有
*.runcomfy.net
/
*.runcomfy.com
的URL下载到
--output-dir
目录。标准输出为结果JSON,标准错误输出为进度信息。

Prompting — what actually works

提示词撰写技巧

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".
Camera + shot in plain English. Front-load the shot:
"Wide shot. ..."
/
"Tracking shot. ..."
/
"Locked tripod, low angle. ..."
works as a real directive. Specify lens feel:
"35mm anamorphic"
,
"shallow DOF"
,
"crushed shadows"
.
One visual beat per clip when iterating. Don't pile up "she walks AND the dog runs AND a car passes". Pick the beat, get it sharp, then layer with multi-shot prompts.
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.
Audio direction — say what you want to hear:
"distant temple bells, footsteps on wet pavement, no dialogue"
or
"warm friendly tone, English"
.
Anti-patterns:
  • Static-frame descriptions (no temporal verbs) → motion will be vague.
  • Conflicting style directions → cancels.
  • 2500 char prompts → degrades.
  • Aspect ratios outside the 5 supported → 422.
描述随时间变化的动作,而非静态画面。 例如“一位女士从窗边转身,走两步到书桌前,拿起杯子,举到脸边,喝一口”比“一位女士喝咖啡”效果更好。
用直白英语描述镜头与视角。 开头明确镜头类型:
"Wide shot. ..."
/
"Tracking shot. ..."
/
"Locked tripod, low angle. ..."
会被当作真实指令。可指定镜头质感:
"35mm anamorphic"
"shallow DOF"
"crushed shadows"
迭代时每个片段只聚焦一个视觉节拍。 不要堆砌“她走路AND狗跑AND车经过”。先确定核心节拍,优化到位后再通过多镜头提示词叠加内容。
多镜头一致性——描述两个节拍时,每个节拍都要重复锚点信息:
"Shot 1: 穿红色羊毛大衣、蓝色围巾的高个子女士在雨中小巷。Shot 2: 同一位穿红色大衣/蓝色围巾的女士,现在躲在雨棚下。"
HappyHorse能保持角色外观,但需要明确锚点。
音频指令——直接描述想要的声音:
"远处的寺庙钟声,湿地上的脚步声,无对话"
"温暖友好的语气,英语"
反模式:
  • 静态画面描述(无时间动词)→ 动作会模糊
  • 冲突的风格指令→ 效果抵消
  • 超过2500字符的提示词→ 质量下降
  • 使用5种支持外的宽高比→ 返回422错误

Where it shines

优势场景

Use caseWhy HappyHorse 1.0
Multi-shot brand stories with one consistent characterNative cross-shot identity preservation
Talking-head explainers needing in-clip voiceover + ambientSynchronized audio in the same pass
Multilingual short-form ads6 prompt languages, no script-quality drop
Cinematic 1080p deliveryNative 1080p output, broadcast-ready
Blind-vote leader for general video quality#1 on Artificial Analysis Video Arena
使用场景选择HappyHorse 1.0的原因
需要角色一致的多镜头品牌故事原生跨镜头身份保持能力
需要内置旁白+环境音的讲解类视频生成过程同步音频
多语言短视频广告支持6种语言提示词,脚本质量无下降
电影级1080p交付原生1080p输出,符合广播级标准
盲选综合视频质量第一在Artificial Analysis Video Arena中排名第一

Sample prompts (verified to produce strong results)

验证有效的示例提示词

From the model page (cinematic scope):
Wide shot. A lone astronaut in dusty orange suit with blue-gray harness
skis across lunar plain, leaving parallel tracks in gray regolith.
Mid-stride, poles planted, pushing in 1/6th gravity with subtle upward
drift. Fine dust haze along ski tracks. Crescent Earth above lunar
horizon, blue-white glow against black sky. Raw sunlight, crushed
shadows, no fill. 8K photorealistic.
Multi-shot consistency:
Shot 1: Medium close-up. A woman in a navy trench coat enters a
rain-slick neon-lit Tokyo alley, looks left, holds up an umbrella.
Shot 2: Same woman in same navy trench, now under the awning of a
ramen shop, shaking water off the umbrella. Warm interior glow, soft
chatter, gentle rain on metal roof in the audio.
Vertical platform-native:
9:16 vertical short. A barista in a black apron pulls a single
espresso shot, steam rising into the morning sun, rich crema slowly
forming. Close-up handheld, shallow DOF, warm cafe ambience and the
hiss of the steam wand.
模型页面示例(电影级场景):
Wide shot. A lone astronaut in dusty orange suit with blue-gray harness
skis across lunar plain, leaving parallel tracks in gray regolith.
Mid-stride, poles planted, pushing in 1/6th gravity with subtle upward
drift. Fine dust haze along ski tracks. Crescent Earth above lunar
horizon, blue-white glow against black sky. Raw sunlight, crushed
shadows, no fill. 8K photorealistic.
多镜头一致性示例:
Shot 1: Medium close-up. A woman in a navy trench coat enters a
rain-slick neon-lit Tokyo alley, looks left, holds up an umbrella.
Shot 2: Same woman in same navy trench, now under the awning of a
ramen shop, shaking water off the umbrella. Warm interior glow, soft
chatter, gentle rain on metal roof in the audio.
竖版平台原生示例:
9:16 vertical short. A barista in a black apron pulls a single
espresso shot, steam rising into the morning sun, rich crema slowly
forming. Close-up handheld, shallow DOF, warm cafe ambience and the
hiss of the steam wand.

Limitations

局限性

  • Duration cap 15s — for longer narratives, segment into multi-shot prompts and stitch.
  • Aspect ratios — only the 5 documented values; ultra-wide cinematic gets cropped or rejected.
  • 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.
  • No free image-to-video on this template — i2v is supported by HappyHorse via a separate pipeline; the t2v endpoint here is text-only.
  • 时长上限15秒——如需更长叙事,分割为多镜头提示词后拼接
  • 宽高比限制——仅支持文档中列出的5种;超宽电影级比例会被裁剪或拒绝
  • 仅生成过程同步音频——无法导入外部音频驱动唇同步。如需音频驱动唇同步,使用Wan 2.7(支持
    audio_url
    参数)或Seedance 2.0 Pro
  • 本模板无免费图像转视频功能——HappyHorse的图像转视频功能通过独立管道支持;本文档中的文本转视频接口仅支持文本输入

Exit codes

退出码

The
runcomfy
CLI uses sysexits-style codes:
codemeaning
0success
64bad CLI args
65bad input JSON / schema mismatch (e.g.
duration: 30
would 422)
69upstream 5xx
75retryable: timeout / 429
77not signed in or token rejected
runcomfy
CLI使用sysexits风格的退出码:
代码含义
0成功
64CLI参数错误
65输入JSON错误/ schema不匹配(例如
duration: 30
会返回422)
69上游服务5xx错误
75可重试:超时/429限流
77未登录或令牌被拒绝

How it works

工作原理

  1. The skill invokes
    runcomfy run happyhorse/happyhorse-1-0/text-to-video
    with a JSON body matching the schema.
  2. The CLI POSTs to
    https://model-api.runcomfy.net/v1/models/happyhorse/happyhorse-1-0/text-to-video
    with the user's bearer token.
  3. The Model API returns a
    request_id
    ; the CLI polls
    GET .../requests/<id>/status
    every 2 seconds.
  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.
  5. Ctrl-C
    while polling sends
    POST .../requests/<id>/cancel
    so you don't get billed for GPU you stopped.
  1. 技能调用
    runcomfy run happyhorse/happyhorse-1-0/text-to-video
    ,传入符合schema的JSON参数
  2. CLI携带用户的Bearer令牌向
    https://model-api.runcomfy.net/v1/models/happyhorse/happyhorse-1-0/text-to-video
    发送POST请求
  3. Model API返回
    request_id
    ;CLI每2秒轮询
    GET .../requests/<id>/status
    获取状态
  4. 请求完成后,CLI获取
    GET .../requests/<id>/result
    ,并将所有主机后缀为
    .runcomfy.net
    .runcomfy.com
    的URL下载到
    --output-dir
    。其他URL仅列出不下载
  5. 轮询时按
    Ctrl-C
    会发送
    POST .../requests/<id>/cancel
    请求,避免为已停止的GPU使用付费

What this skill is not

本技能不包含的内容

Not a self-hosted video runner. Not a capability grant — depends on a working RunComfy account.
不是自托管视频生成器。需要依赖可用的RunComfy账号,无法直接授予生成能力。

Security & Privacy

安全与隐私

  • Token storage:
    runcomfy login
    writes the API token to
    ~/.config/runcomfy/token.json
    with mode 0600 (owner-only read/write). Set
    RUNCOMFY_TOKEN
    env var to bypass the file entirely in CI / containers.
  • Input boundary: the user prompt is passed as a JSON string to the CLI via
    --input
    . The CLI does NOT shell-expand the prompt; it transmits the JSON body directly to the Model API over HTTPS. No shell injection surface from prompt content.
  • Third-party content: image / mask / video URLs you pass are fetched by the RunComfy model server, not by the CLI on your machine. Treat external URLs as untrusted; image-based prompt injection is a known risk for any image-edit / video-edit model.
  • Outbound endpoints: only
    model-api.runcomfy.net
    (request submission) and
    *.runcomfy.net
    /
    *.runcomfy.com
    (download whitelist for generated outputs). No telemetry, no callbacks.
  • Generated-file size cap: the CLI aborts any single download > 2 GiB to prevent disk-fill from a malicious or runaway model output.
  • 令牌存储
    runcomfy login
    会将API令牌写入
    ~/.config/runcomfy/token.json
    ,权限为0600(仅所有者可读写)。在CI/容器环境中可设置
    RUNCOMFY_TOKEN
    环境变量跳过文件存储
  • 输入边界:用户提示词通过
    --input
    以JSON字符串形式传递给CLI。CLI不会对提示词进行shell扩展,直接通过HTTPS将JSON体发送给Model API。提示词内容不存在shell注入风险
  • 第三方内容:你传入的图像/蒙版/视频URL由RunComfy模型服务器获取,而非本地CLI。请将外部URL视为不可信;基于图像的提示注入是所有图像编辑/视频编辑模型的已知风险
  • 出站接口:仅访问
    model-api.runcomfy.net
    (提交请求)和
    *.runcomfy.net
    /
    *.runcomfy.com
    (生成结果下载白名单)。无遥测,无回调
  • 生成文件大小限制:CLI会终止任何超过2 GiB的单个下载,防止恶意或异常模型输出占满磁盘