HappyHorse 1.0's (Alibaba Kling team) core differentiator:Native joint audio-video generation + strict word-count adherence. This skill helps you produce compact prompts that match its temperament.
When not to use this skill
- Need a 10-15 second long video / multi-shot switching → use seedance-prompter or seedance-storyboard
- Complex narrative / multiple subjects → use Seedance
- Existing prompt won't render → if it's still within HappyHorse's scope, I can take a look, otherwise use seedance-debugger
The Five Golden Rules
See methodology/02-advanced-formulas.md。
Rule 1: Subject first, action after
- ❌
Walking through a forest, a woman... - ✅
A woman in hiking gear walking through a forest...
Rule 2: Explicitly specify the camera technique
HappyHorse's understanding of "close-up" and "wide-angle" is very precise,don't leave it for the model to guess。
Rule 3: Keep prompt length between 30-55 words
- Too short (<30 words) → vague output
- Too long (>60 words) → the model ignores the second half
After writing, count the English word count.
Rule 4: Add motion descriptors for physical effects
Hair, water, fabric, smoke, flames: add slow motion、motion blur or fluid dynamics
Rule 5: Explicitly specify the audio content
Audio activation path(this is the core capability that distinguishes HappyHorse from Seedance):
with rain on leaves audible→ sound of rain hitting leaveswith engine roar audible→ roar of an enginespeaking English at a natural pace→ natural English dialoguespeaking Korean at a measured pace→ Korean dialoguewith ambient coffee shop chatter audible→ cafe ambiencewith the pour sound audible→ pouring water / liquid soundswith faint crackling sound audible→ crackling flameswith hoofbeats audible→ hoofbeatswith drone motor whine audible→ drone motor soundcomplete silence/near silence with faint wind audible→ pure silence or ambient floor noise
Not writing an audio prompt = the model may not generate audio or may generate random audio.Actively write it。
Workflow
Step 1: Decide whether a timed beat is needed
If the user's request includestemporal structure(e.g. "stay still for 2 seconds first, then the image gradually fades in", "do A for the first 3 seconds, do B for the last 5 seconds"), use the CrePal timed beat approach:
8s duration. First 2s: black. Slow fade reveals: [画面 A]...
Otherwise, just write the compact 30-55 word version.
Step 2: Assemble according to the formula
[主体(明确特征)] [动作(具体)] [场景] [镜头大小+运动] [光影] [音频路径] [质量/风格].
Write in English.
Step 3: Count words
- Copy into a word count tool or count mentally → strictly 30-55 words
- Over 55 words: delete adjectives (don't delete core elements), keep the subject/camera/audio path
- Under 30 words: add shot size or audio details
Step 4: Output format
## 生成的提示词
\`\`\`
[完整提示词]
\`\`\`
**词数**:N · **时长建议**:N-Ns · **比例**:[X:Y]
**音频路径**:[突出说明用了什么音频提示]
**可调点**:[换音频/换镜头/换光影都可以怎么改]
⚠️ Hard rule for how to write duration (check every time)
Duration information has 2 places to go, choose one, they can't be used at the same time, and it can't be put in the wrong place:
| User scenario | Where duration goes | How to write it |
|---|---|---|
| User only says "make an X video" (no explicit timing) | Only put it in external metadata | Inside the promptDo not writeduration;**时长建议**:5-7s Put it in the trailing metadata line |
| The user explicitly says "first N seconds... then..." (there is a temporal beat) | Put it at the very beginning of the prompt as a temporal anchor | Ns duration, first Ns: black. [content] this structure |
Counterexample(❌ Don't write it like this):
晨光透过咖啡店玻璃门...温暖琥珀色调,16:9,5 秒。 ← 把时长埋在 prompt 中段/末尾
Positive example A(✓ No explicit timing — prose without duration):
晨光透过咖啡店玻璃门,木质门牌"OPEN"翻转...
(门铃叮当声 + 咖啡机蒸汽嘶嘶声)
Then write the metadata line:**时长建议**:5s
Positive example B(✓ Explicit timing — duration first):
5s duration. 晨光透过咖啡店玻璃门,木质门牌"OPEN"翻转...
Self-check list(Must pass before output):
- Does the prompt contain duration descriptions like "N seconds" / "Ns" / "lasting N seconds"?
- If present, is it at the very beginning as a temporal anchor?
- If it is not at the very beginning,move it to the external metadata line, and delete it from inside the prompt.
Practical examples
User input:"Make a video of a street guitarist on a rainy night"
Judgment: 6-8 second compact scene, needs audio (guitar sound + rain sound) → no temporal beat needed, use the compact template.
Output:
A guitar player busking on a rain-slicked city street at night, medium shot, neon reflections on wet pavement, rain falling softly, with acoustic guitar sound audible, warm tungsten light from shop windows.
Word count:30 · Duration suggestion:6-8s · Ratio:16:9
Audio path:with acoustic guitar sound audible Activate the native guitar audio track; ambient rain sound will be included even if not written (because the scene is rain).
Adjustable points: replace warm tungsten light from shop windows with harsh sodium streetlight only to change it to a cold tone; add with light rain on awning audible to strengthen the rain sound layers.
User input: "I want 8 seconds, first 2 seconds black screen, then slowly reveal a valley"
Judgment: Clear temporal structure → use the temporal beat template.
Output:
8s duration, first 2s: black. Slow fade reveals: wide shot, mountain valley at dawn, low mist between pine trees, single dirt road leading into the scene, no people. Camera very slowly pushes forward on a dolly. Soft blue-gold light on the horizon. Quiet, cinematic, high production value.
Word count:48 · Duration suggestion:8s · Ratio:16:9
Audio path: Not specified → HappyHorse defaults to matching morning wind ambient noise; you can add with distant birdsong audible to further strengthen it.
Adjustable points: replace dirt road with wooden cabin in distance to add visual anchors; changeblue-gold light to pink-orange for a warmer tone.
The correct approach for image-to-video (with an existing reference image)
When there is a reference image,do not repeatedly describe content already present in the image, focus on describing changes:
| ✅ Should write | ❌ Should not write |
|---|---|
walks toward camera / head turns left |
Repeat the clothing colors already in the image |
slow push-in / lateral tracking right |
Repeat the composition already in the image |
hair drifts / fabric ripples / steam rises |
Repeat the subject appearance already in the image |
Reference resources
- Advanced formulas:methodology/02-进阶公式.md
- Camera movement dictionary:methodology/05-运镜词典.md
- 57 tested prompts:prompts/happyhorse/README.md