higgsfield-seedance
Structures video generation prompts using a specific cinematography formula to improve success rates and quality.
Install
mkdir -p .claude/skills/higgsfield-seedance && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18751" && unzip -o skill.zip -d .claude/skills/higgsfield-seedance && rm skill.zipInstalls to .claude/skills/higgsfield-seedance
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Rewrites scene descriptions using professional cinematography language, structures prompts with a six-slot formula (camera + subject + action + setting + style + lighting), and diagnoses content filter rejections via a preflight linter. Use whenever the user asks for a Seedance 2.0 / Seedance Pro prompt, describes a scene for Seedance generation, mentions Seedance, reports a Seedance generation failure or flagged prompt, or is burning credits on Seedance regenerations.Key capabilities
- →Rewrite scene descriptions using cinematography language
- →Structure prompts with a six-slot formula
- →Diagnose content filter rejections via a preflight linter
- →Optimize scenes for Seedance generation
- →Extend existing video clips
- →Apply prompt-craft laws for better generation
How it works
The skill rewrites scene descriptions into professional cinematography language, structures them using a six-slot formula, and uses a preflight linter to diagnose and prevent content filter rejections.
Inputs & outputs
When to use higgsfield-seedance
- →Creating video generation prompts
- →Debugging failed video generations
- →Optimizing scenes for Seedance
About this skill
Higgsfield Seedance Director
QUICK FACTS
Generated-checked block (scripts/build_index.py verifies anchors). Read the linked sections for full context — these lines are routing aids, not the rules themselves.
- The filter is an LLM reading full-scene intent, not a keyword blacklist — describe a SCENE, not a subject; fix the voice first →
- Instant fail (<10s) = filter rejection; delayed fail (>30s) = infra/complexity — never regenerate an instant fail unchanged →
- Six slots, in order: Camera + Subject + Action + Setting + Style + Lighting; missing 3+ slots is where flags come from →
- Empirical prompt-craft laws: 50–80-word attention sweet spot (front-load the load-bearing element), name a director/lens not "cinematic", "fast" degrades motion, no negative prompts in the body →
- Five prompt modes: Reference-Based / Continuation / Expand Shot / Edit Shot / Transformation — pick the mode before writing →
- [OFFICIAL] block scaffold for production prompts: SCENE CONTEXT → … → POSITIVE LOCKS, distributed style (no prefix), FOV in degrees only, CAMERA block 3rd, cut ladder oner / CUT n / timed / freestyle →
- [FIELD] 13-project corpus calibration: word length scales with register (218w → 2,059w medians — the 50–80w sweet spot is single-shot-only), video briefs hand-authored (
enhance_promptoff), Style Prefix = per-project constant compiled into home blocks → - [FIELD] Three "helpful-instinct" drift sources, each with a standing lock: environment invention (#1, above character drift), character-height equalization, scale drift on wides →
- Build-safe construction for crowds/destruction/creatures: evacuated cities, contained fights ("stays at the sea surface"), the safe benchmark scene →
- Extend an existing clip: attach it as a video reference + open with "The scene continues." — match source resolution AND duration; chain cap ~2 (hard 3), then re-anchor from ORIGINAL references →
- Tutorial-demonstrated patterns (reference-role vocabulary incl. VARIETY reference, SCREEN REALISM + duration-match composites, 60:30:10 grade, red-arrow prop annotation):
PRODUCTION-PATTERNS.mdin this directory - Hard engine rules (age-blind, exit-frame = cut, off-screen = nonexistent, no reflections, ≤3 tracked characters, double-contrast cuts) + high-risk shot table:
ENGINE-RULES.mdin this directory - Reference roles: Character / Last-Frame / Environment / Prop — role determines what the prompt may re-describe →
- Working modes: Exploration / Continuation / Bridging / Repair (distinct from prompt modes) →
- Layer 1 briefing vs Layer 2 production prompt — never paste Layer 1 into the prompt box →
- Native 4K is available in
mode=stdonly;mode=fast(Seedance 2.0 Fast) caps at 480p/720p — in Cinema Studio the model is still capped at 1080p → - Always preflight:
python3 scripts/seedance_lint.py --preflight --model seedance_2_0 "<prompt>"— enums come from../../specs/model-specs.json(fast+1080p/4K and Kling 21:9 are auto-caught) → - 480p drafts validate the prompt, NOT the take — no seed param; pin Hero Frame + start/end frames to carry a look →
- ZH prompts: hard 1,800-char cap; ZH antislop list enforced by the linter →
- Flagged prompt → rewrite playbook per linter rule, then voice pass →
- Repeated flags → full loop-breaker procedure + LOG THE OUTCOME (
--confirmed/add-quality) →
Use this skill whenever the user wants a Seedance 2.0 / Seedance Pro prompt, OR whenever a Seedance generation has been blocked, flagged, or silently failed. This skill's job is to stop credit waste on filter rejections.
Engine rules (read with this file): the hard rendering constraints of the Seedance 2.0 engine — age-blind characters, exit-frame = implicit cut, off-screen = nonexistent, no reflection shots, ≤3 tracked characters, the double-contrast cut rule — live in
ENGINE-RULES.mdin this directory, together with the high-risk shot table (reflections, same-character doubles, crowds, text rendering) and its mitigations. This SKILL.md is theEN-directorprofile of that rule core; theZH-houseandbilingual-JSONprofiles (../../docs/Seedance 2 Skill.md) obey the same core. Flag high-risk shot types at authoring time — never silently break a rule the project's hero image happens to conflict with.
Production patterns (sibling reference): patterns demonstrated working in Higgsfield's own Seedance-4K film tutorial — reference-role vocabulary, coordinate blocking, video-reference screen composites, prompted imperfection, 60:30:10 grade — live in
PRODUCTION-PATTERNS.mdin this directory, labeled[DEMO].
The Filter Model — Read This First
Seedance 2.0's content filter is not a keyword blacklist. It is a language model that reads the full prompt as a single scene and judges intent and context. Most users burn hours swapping individual words — that loop does not work.
The filter compares two things:
- A prompt that reads like a filmmaker describing a shot → tends to pass.
- A prompt that reads like a note to a friend → tends to fail.
A word that looks sensitive in isolation can sit inside a well-constructed cinematic prompt without issue — the filter reads the full picture. A prompt with no picture to read (no setting, no visual purpose, no narrative logic) gives the filter nothing to work with, and it errs on the side of caution.
Practical rule: the prompt must describe a scene, not a subject. Fix the voice first, then fix the words.
Instant Fail vs. Delayed Fail — the Diagnostic
This single heuristic saves time on every failure:
| Failure timing | Meaning | What to do |
|---|---|---|
| < 10 seconds (instant) | Content filter rejection — prompt never reached the GPU | Rewrite for voice + remove risk tokens. Do not regenerate unchanged. |
| > 30 seconds (delayed) | Infrastructure, timeout, or complexity — prompt passed the filter but the render failed | Simplify action density, cut length, try again |
If the user is seeing instant fails in a loop, it is a filter issue — never a GPU issue. Stop them from regenerating before the rewrite.
The Seedance Prompt Formula
Every Seedance prompt should hit these six slots, in this order:
[Camera movement] + [Subject] + [Action] + [Setting] + [Style] + [Lighting]
All six are technically optional — but a prompt that includes all six almost never gets flagged, because the filter has full context to interpret every word. A prompt missing 3+ slots is where flags come from.
Minimum viable Seedance prompt
Slow dolly-in on a figure in a dark overcoat standing alone at the end of a rain-slick alley. Cold teal shadows, single practical streetlamp, shallow depth of field.
Camera ✓ Subject ✓ Action ✓ Setting ✓ Style ✓ Lighting ✓ — all six slots, ~30 words, passes the filter because the scene is fully legible.
Prompt-Craft Laws
A set of Seedance-2.0-specific prompt rules. These are empirical —
practitioner A/B findings that are plausible given the architecture but are
not in the official model spec. Treat them as strong heuristics and let the
repo's iteration discipline (../higgsfield-prompt/SKILL.md § The Iteration
Rule) confirm them on your own material, rather than as guaranteed model
behavior.
Length and order — the attention model
Seedance reads the prompt left-to-right with diminishing attention weight. The first sentence carries the most influence; by the third sentence you are in "detail territory," where the model stops treating elements as primary instructions and starts sampling them diffusely.
- Sweet spot: 50–80 words. A 70-word prompt reliably outperforms a structurally identical 200-word version of the same scene — more words past ~3 sentences buys diffusion, not control.
- Structure in three sentences: ① subject + action, ② camera + style, ③ constraints / positive locks.
- Lead with the single most load-bearing element. When a shot lives on its subject, the subject opens the prompt; when it lives on a camera move, the move opens it.
Relationship to the two length numbers. This 50–80-word figure is the coherence optimum. The >180-word figure in § Pre-flight Linter is a different axis — the filter/encoder risk ceiling (>220 often hard-fails the text encoder). 50–80 is where to sit; ~180 is where it starts to break. They don't conflict.
Relationship to the six-slot formula. The six slots guarantee the filter sees a complete scene (presence). The attention model governs weight (order
- length). Keep all six slots present, but the slot list's camera-first ordering is a completeness checklist, not a mandate to open with the camera word when the shot's identity is the subject.
Name the thing — kill empty adjectives
cinematic, epic, beautiful, high quality, amazing are high-frequency
labels attached to an enormous range of training footage — dark thrillers,
bright rom-coms, nature docs all read as "cinematic" — so the model samples a
broad, diffuse distribution and they move the output toward nothing in
particular. Don't just delete the slop word (Voice Rewrite §6) — substitute a
named, narrowly-trained referent:
| Empty adjective | Named
Content truncated.
When not to use it
- →When regenerating an instant fail unchanged
- →When swapping individual words to bypass the filter
- →When pasting Layer 1 briefing directly into the prompt box
Limitations
- →The content filter is an LLM reading full-scene intent, not a keyword blacklist
- →Instant fail (<10s) indicates filter rejection
- →Native 4K is available in mode=std only
How it compares
This skill provides a structured, linter-validated approach to prompt engineering for Seedance, focusing on cinematic language and specific prompt formulas to avoid common generation failures and credit waste.
Compared to similar skills
higgsfield-seedance side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| higgsfield-seedance (this skill) | 0 | 21d | No flags | Advanced |
| system-prompt-writer | 6 | 9mo | No flags | Intermediate |
| video-report | 7 | 2mo | No flags | Beginner |
| skills | 6 | 5mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
system-prompt-writer
aws-samples
This skill should be used when writing or improving system prompts for AI agents, providing expert guidance based on Anthropic's context engineering principles.
video-report
remotion-dev
Generate a report about a video
skills
atopile
How to write and maintain `.claude/skills/*/SKILL.md` files: source-of-truth-first process, verification steps, and conventions.
review-claudemd
ykdojo
Review recent conversations to find improvements for CLAUDE.md files.
writing-documentation-for-llms
CaptainCrouton89
Teaches how to write effective documentation and instructions for LLMs by assuming competence, using progressive disclosure, prioritizing examples over explanations, and building feedback loops into workflows.
intelligent-prompt-generator
huangserva
智能提示词生成器 v2.0 - 支持人像/跨domain/设计三种模式,语义理解、常识推理、一致性检查