Seedance
songguoxs/seedance-prompt-skill
This skill should be used when the user asks to "generate video prompts", "create Seedance prompts", "write video descriptions", mentions "Seedance", "seedance", "即梦", "即梦平台", "视频提示词", "视频生成"…
Prompt ByteDance's Seedance 2 video line — the Subject/Motion/Environment/Look/Camera/Audio formula, how dialogue in double quotes gets voiced and lip-synced, writing the sound mix instead of…
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install nodetool-ai/nodetool seedance-2-prompting --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .claude/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .claude/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-promptingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install nodetool-ai/nodetool seedance-2-prompting --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .agents/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .agents/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .agents/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install nodetool-ai/nodetool seedance-2-prompting --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .cursor/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .cursor/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/nodetool-ai/nodetool.git --path packages/system-skills/seedance-2-prompting--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install nodetool-ai/nodetool seedance-2-prompting --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .gemini/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .gemini/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install nodetool-ai/nodetool seedance-2-promptingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .github/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .github/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .github/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install nodetool-ai/nodetool seedance-2-prompting --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nodetool-ai/nodetool.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/packages/system-skills/seedance-2-prompting .opencode/skills/seedance-2-prompting && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "seedance-2-prompting" agent skill from https://github.com/nodetool-ai/nodetool/tree/main/packages/system-skills/seedance-2-prompting into .opencode/skills/seedance-2-prompting/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "seedance-2-prompting", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
seedance-2-promptingPrompt ByteDance's Seedance 2 video line — the Subject/Motion/Environment/Look/Camera/Audio formula, how dialogue in double quotes gets voiced and lip-synced, writing the sound mix instead of…
Seedance 2 Prompting is an agent skill from nodetool-ai/nodetool. Prompt ByteDance's Seedance 2 video line — the Subject/Motion/Environment/Look/Camera/Audio formula, how dialogue in double quotes gets voiced and lip-synced, writing the sound mix instead of leaving it open, cutting between shots in one generation, the JSON beat-sheet brief that holds an arc across a whole piece, and giving physics a consequence to chase. Use whenever the model id contains seedance-2 (bytedance/seedance-2.0 and its fast and mini variants, bytedance/seedance-2.5, kie's bytedance/seedance-2…
Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Media & Creative, covering AI video generation. It works with Seedance. The repository describes itself as: Agent-first Creative Workspace. The licence is AGPL-3.0.
Read from SKILL.md and the folder at commit 339f069. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
fal.aiFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Seedance 2 Prompting loads about 2.9k tokens when it runs. Until then it costs about 180 tokens; SKILL.md has 1,282 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from nodetool-ai/nodetool at commit 339f069, republished under its AGPL-3.0 licence (© nodetool-ai). 1,282 words, ~2,881 tokens.
.claude/skills/seedance-2-prompting/SKILL.md (or your agent's skills folder).Seedance 2 writes the picture and the sound in the same pass, and that one fact changes the prompt. You are not describing a frame; you are directing a short scene including the camera move and the mix, and the model has to hold all of it together. It follows plain natural language, so the prompts that work read like a short shot brief: who, doing what, where, shot how, and what it sounds like.
That also decides how a multi-scene piece is built: the sound belongs to the
clip that generated it, so several Seedance clips cut together restart their
mix at every join. video-audio-continuity covers when the whole piece has to
be one generation, and the sound-design vocabulary that gets past the
copyright filter.
Reach it with find_model for text_to_video or image_to_video, then
generate_video / animate_image. Duration set to auto lets the model pick a
length to fit the content; pin it anywhere from 4 to 15 seconds instead when
the cut matters.
Two parts do the work:
Everything after is optional, added as the shot needs it:
Loaded up:
A glassblower in a leather apron pulls a glowing orange gather of molten glass from the furnace, turns the rod steadily to keep it from slumping, then lifts a blowpipe to his lips and breathes into it as the bulb swells and the glass deepens from orange toward red. A dim workshop lit almost entirely by the mouth of the furnace, tools and half-finished pieces on the bench behind him, a warm documentary look with the highlights blown out slightly. The camera opens on a slow push-in toward his hands, then arcs around to catch the molten glass against the dark of the room. Audio: the low roar of the furnace, the creak of the turning rod, a faint hiss as the surface cools, no music.
Every layer there is a decision the model no longer invents.
Dialogue goes in double quotes. The model voices it, matches lips to it and times it to the cut. Keep lines short — a long monologue drifts out of sync, so split a speech across two lines and let the cut carry it. Direct the delivery too ("play her line dry and a little proud, his quiet and worn out").
Subtitles work by describing a voiceover and asking for the text along the bottom edge, timed to the voice.
Ambience is a sound brief. Name the sounds you want in the mix, and write "no music" when you mean it. An open prompt comes back scored like a car advert.
The vague-versus-specific gap is the same as everywhere else, and costs more here because a bad clip costs seconds of render. "A beautiful cinematic video of a dancer, stunning, 8k, masterpiece" returns a stock dancer under flat even light. Set the dress, the spin, the heel strikes, the lone spotlight and the guitar, and the model spends its effort rendering your scene instead of inventing one.
Prose carries one shot. For a whole piece with a shape — a hook, a turn, a
drop, a peak — hand Seedance a JSON brief instead: global fields that hold for
the entire clip, then a timeline of beats, each one naming its function, its
picture and its sound. The function label (fn) is what keeps the model from
flattening the arc into eight equally-weighted shots.
Six global fields, then the beats:
duration — the whole clip, within what the endpoint you called accepts.camera — one move across the whole clip, not one per beat. A single
continuous push-in reads as a shot; a new move every three seconds reads as
a montage.light — the source, its colour temperature, and how it changes over the
clip. Name it once and every beat inherits it.style — genre, lens character, grain, palette, and one or two reference
points for restraint.negative_prompt — the artifacts you actually see: jitter, bent limbs,
morphing faces, flicker.audio_note — the rule the mix obeys across every beat. "One continuous bed,
never full silence" is what stops the model resetting the sound at each cut.{
"duration": "25s",
"camera": "One continuous slow, steady push-in from extreme wide to close-up across the 25s; shallow depth by the end.",
"light": "Single unseen source above; cold white-cyan 6500K key casts down, intensifying steadily from a whisper to a flood; deep blue 6000K twilight ambient; hard top key, soft fill.",
"style": "Mysterious sci-fi first contact, withheld reveal, intimate awe; anamorphic, atmospheric haze, fine film grain, deep teal-twilight palette; Arrival / Close Encounters restraint.",
"negative_prompt": "Avoid jitter and bent limbs; stable facial features, no morphing, no flickering.",
"audio_note": "ONE continuous bed, never full silence; dips to sub-bass rumble at the DROP instead of cutting.",
"timeline": [
{"t":"0:00-0:03","fn":"Cold Open / Hook","visual":"Extreme wide, near-dark. A small child alone in a vast twilight field, tiny and still; wind begins bending the wheat toward one point, a faint unnatural tint at frame edge - source unseen.","audio":"Low sub-bass drone, faint wind, one distant detuned low-brass signal tone."},
{"t":"0:03-0:08","fn":"Setup / World","visual":"Medium wide. The child looks up; ordinary dusk field established as a cold light starts to rise on them from somewhere above, still unshown.","audio":"The tone bends; sparse high harmonics enter; sub-rumble slowly grows."},
{"t":"0:08-0:11","fn":"Inciting Incident","visual":"Medium. The 'but then': cold light intensifies on the child's face - curiosity dawning, not fear. The unseen presence is undeniable now.","audio":"First swell; a soft riser begins; a deep slow pulse enters."},
{"t":"0:11-0:16","fn":"Escalation / Stakes","visual":"Push-in tightening on the face. Light climbing, hair lifting, eyes widening; the child steps forward, drawn in.","audio":"Layers stack - riser rising, pulses quicken, strings enter; tension builds."},
{"t":"0:16-0:17","fn":"THE DROP","visual":"The hinge: everything stills for one beat, the face half-lit, breath caught, light pooled and waiting.","audio":"Bed dips to a low sub-bass rumble for one beat - near-silence, never fully out."},
{"t":"0:17-0:22","fn":"Climax / Emotional Peak","visual":"Close-up. PEAK: the child slowly lifts one open hand toward the light, fingers spreading; the intensifying beam washes over the small palm and reflects in wide, wonder-filled eyes as a faint slender silhouette of light enters the top edge of frame, almost meeting the fingertips.","audio":"A warm resonant swell blooms - wordless choir and vast strings soaring into awe over sustained deep brass, a fragile high motif of wonder."},
{"t":"0:22-0:24","fn":"Title Card","visual":"The light blooms to white across the frame; title fades in over the bloom (clean type in post).","audio":"Choir and strings resolve to one luminous sustained chord; a low sub-boom lands."},
{"t":"0:24-0:25","fn":"Button / Stinger","visual":"After the title, one last beat: the light settles, the field dim again; a single held stillness.","audio":"One fragile high bell tone over near-silence; hard out."}
]
}What makes it work, and what to keep when you adapt it:
fn, visual and audio. A beat missing its
audio line is where the mix drifts back to a generic score.Adapt the beat functions to the piece. A UGC ad runs hook, problem, product, proof, call to action; a product film runs establish, detail, transformation, hero, mark. The shape changes; the discipline of naming each beat's job does not.
Grade the result with analyze_video and detect_video_scenes rather than
watching it, and understand_video when you need a written read of what
actually rendered.
Adapted from fal's Seedance 2.0 prompting guide: https://fal.ai/learn/tools/seedance-2-0-prompting-guide
© nodetool-ai, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in packages/system-skills/seedance-2-prompting of nodetool-ai/nodetool.
Open the folder on GitHubat commit 339f069
Seedance 2 Prompting next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Seedance 2 Prompting this skillnodetool-ai/nodetool | 560 | — | ~2.9k | Automated safety check: Pass | AGPL-3.0 | |
| Seedancesongguoxs/seedance-prompt-skill | 2.9k | 1 repos | ~2.5k | Automated safety check: Pass | None | |
| SN Motion HTMLOpenSenseNova/SenseNova-Skills | 5.7k | — | ~2.2k | Automated safety check: Notes | MIT | |
| Seedance Prompt Endexhunter/seedance2-skill | 4.2k | — | ~3.8k | Automated safety check: Pass | MIT | |
| Seedance Japanese Prompt ExamplesEmily2040/seedance-2.0 | 7.6k | 1 repos | ~898 | Automated safety check: Pass | MIT | |
| Seedance 2 5 Video Directorliyue-aigc/seedance-2-5-video-director | 599 | — | ~3.5k | Automated safety check: Pass | MIT |
songguoxs/seedance-prompt-skill
This skill should be used when the user asks to "generate video prompts", "create Seedance prompts", "write video descriptions", mentions "Seedance", "seedance", "即梦", "即梦平台", "视频提示词", "视频生成"…
OpenSenseNova/SenseNova-Skills
Builds HTML stories where one continuous camera journey advances with page progress, using researched structure, AI stills, Seedance video clips and browser QA.
dexhunter/seedance2-skill
Write effective prompts for Jimeng Seedance 2.0 multimodal AI video generation.
Emily2040/seedance-2.0
Provides Japanese prompt patterns and safe example rewrites for Seedance 2.0 video generation, with reference tags kept intact and each example labeled by risk.
liyue-aigc/seedance-2-5-video-director
Design, derive, optimize, diagnose, and rewrite scripts or copy-ready prompts specifically for Dreamina/即梦 Seedance 2.5.
dexhunter/seedance2-skill
为即梦 Seedance 2.0 多模态AI视频生成模型撰写高质量提示词。当用户需要使用文本、图片、视频、音频等多模态输入创作视频提示词时触发。涵盖@引用语法、运镜复刻、特效模仿、视频延长、视频编辑、音乐卡点、电商广告、短剧创作、科普教育等场景。
nodetool-ai/nodetool
Cut a NodeTool timeline to music and shape its pacing — detect the beat grid, place cuts on phrases, pick a cut type, build speed ramps with time remap, and give the piece an arc.
nodetool-ai/nodetool
Add and animate a consistent text layer on an existing NodeTool timeline.
nodetool-ai/nodetool
Choose and animate colour on a NodeTool timeline, including shape and text gradients, colour grades, 3D LUTs, and dither.
nodetool-ai/nodetool
Write a shootable, precisely timed commercial beat sheet and store it as a NodeTool storyboard, with a consistent entity roster behind every shot.
nodetool-ai/nodetool
Direct ElevenLabs speech, dialogue, sound effects and music — the bracketed audio tags v3 acts on and why the voice decides whether a tag lands, stability as the delivery dial, punctuation instead…
nodetool-ai/nodetool
Stage the frame on a NodeTool timeline — grids, focal placement, safe areas per aspect ratio, depth layers and parallax, camera moves, and where elements enter and leave.
Works with
Categories
Prompt ByteDance's Seedance 2 video line — the Subject/Motion/Environment/Look/Camera/Audio formula, how dialogue in double quotes gets voiced and lip-synced, writing the sound mix instead of…. Seedance 2 Prompting is an agent skill from nodetool-ai/nodetool. Prompt ByteDance's Seedance 2 video line — the Subject/Motion/Environment/Look/Camera/Audio formula, how dialogue in double quotes gets voiced and lip-synced, writing the sound mix instead of leaving it open, cutting between shots in one generation, the JSON beat-sheet brief that holds an arc across a whole piece, and giving physics a consequence to chase.
Seedance 2 Prompting fits situations like: the model id contains seedance-2 (bytedance/seedance-2.0 and its fast and mini variants; bytedance/seedance-2.5; kies bytedance/seedance-2; seedance-2-fast.
Run `npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a claude-code`. Or copy the skill folder (packages/system-skills/seedance-2-prompting in nodetool-ai/nodetool) into .claude/skills/seedance-2-prompting in your project. Claude Code loads it when a task matches its description.
Run `npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a codex`. Or copy the skill folder (packages/system-skills/seedance-2-prompting in nodetool-ai/nodetool) into .agents/skills/seedance-2-prompting in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nodetool-ai/nodetool --skill seedance-2-prompting -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/seedance-2-prompting, .gemini/skills/seedance-2-prompting, .github/skills/seedance-2-prompting and .opencode/skills/seedance-2-prompting in your project.
SKILL.md names no scripts, command-line tools or credentials: Seedance 2 Prompting is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: fal.ai. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Seedance 2 Prompting is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.9k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Seedance 2 Prompting: Seedance (songguoxs/seedance-prompt-skill, 2.9k stars), SN Motion HTML (OpenSenseNova/SenseNova-Skills, 5.7k stars), Seedance Prompt En (dexhunter/seedance2-skill, 4.2k stars) and Seedance Japanese Prompt Examples (Emily2040/seedance-2.0, 7.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
nodetool-ai (a GitHub organization) maintains it in nodetool-ai/nodetool, which has 560 GitHub stars. The repository holds 127 skills in this directory. The repository was last updated on October 10, 2026.
Source: nodetool-ai/nodetool on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.