本文へ移動
cccskills
無料GitHub で公開

huashu-seedance

Seedance 2.5 视频生成全流程。先把需求澄清成参数(时长/画幅/机位类型/跟随方式/要不要切镜),再用 scene.json 引擎生成白模参考视频(渲染前有几何体检),也能从用户给的照片反解出白模,最后按官方规范生成与白模严格对齐的提示词。

インストール方法を見る

含まれるファイル(32)

  • SKILL.md10.9 KB
  • .gitignore76 B
  • docs/assets/book-v1.jpg14.4 KB
  • docs/assets/book-v3.jpg22.6 KB
  • docs/assets/cloud-v1.jpg29.4 KB
  • docs/assets/cloud-v2.jpg22.8 KB
  • docs/assets/cloud-v3.jpg24.9 KB
  • docs/assets/whitemodel-frames.jpg27.4 KB
  • docs/index.html24.0 KB
  • engine/build.mjs3.4 KB
  • engine/frames.mjs3.3 KB
  • engine/make_prompt.mjs16.0 KB
  • engine/photo_grid.py4.2 KB
  • engine/preview.mjs3.3 KB
  • engine/probe.mjs17.8 KB
  • engine/renderer.html11.9 KB
  • engine/solver.mjs12.8 KB
  • LICENSE1.1 KB
  • README.md9.4 KB
  • references/about-author.md9.7 KB
  • references/camera-rig.md7.1 KB
  • references/intake.md5.8 KB
  • references/model-differences.md4.8 KB
  • references/photo-to-whitemodel.md6.6 KB
  • references/prompt-spec.md5.9 KB
  • references/reference-image.md4.3 KB
  • references/scene-spec.md8.5 KB
  • references/whitemodel.md5.9 KB
  • templates/scenes/俯拍队形.json1.5 KB
  • templates/scenes/多机位切换.json4.9 KB
  • templates/scenes/照片反解-走廊.json3.7 KB
  • templates/whitemodel-base.html6.3 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Seedance 工作台

把「想拍什么」变成一条 Seedance 2.5 能准确执行的指令。

第一步永远是澄清,不是开渲

用户来的时候通常只有一句话。先读 references/intake.md,按那里的规矩办:

  • 只有三件事必须问他:多长、发在哪(画幅)、一镜到底还是切镜头
  • 其余的(机位类型、跟随方式、焦段、景别、风格锚点)先从他的话里推断,把推断结果摊成一张表让他否决
  • 摊完假设,先给他看 3-5 行的镜头表,让他在文字上改。镜头表改一行一秒,白模建完再改是几分钟

跳过这一步的代价是实测过的:2026-08-15 那次三条白模全部返工(一条重排全部人物轨迹、一条做时间重映射、一条只能本地重剪),根因就是照着自己的理解直接建了白模。

四条产线

产线产出什么时候用
A · 提示词符合官方规范的 T2V / R2V 提示词任何时候。这是主线
B · 白模用 scene.json 引擎渲出的白模视频要精确控制运镜、空间关系、时间节奏、镜头切换时
C · 参考图Seedream 生成的影视级参考图要锁材质、光线、造型时
D · 照片反解从用户的照片反解出白模用户给了照片、要让这个场景动起来时

典型全链路:澄清 → 镜头表 → B 做白模锁运镜 → C 做参考图锁质感 → A 把两者绑成一条 prompt。 用户给了照片就把 B+C 换成 D:那张照片同时当空间来源和材质参考,两者天然一致。

主线工作流

E="$SKILL_DIR/engine"     # SKILL_DIR = 本 skill 所在目录

# ① 写 scene.json(规范见 references/scene-spec.md,样板在 templates/scenes/)
# ② 渲染前体检——必须 0 个 🔴 才往下走
node $E/probe.mjs scene.json

# ③ 生成工程并渲染
node $E/build.mjs scene.json
npx hyperframes@0.7.107 lint
npx hyperframes@0.7.107 render --quality draft --output whitemodel.mp4

# ④ 抽帧自检——这一步没有替代品(体检查得了几何,查不了好不好看)
node $E/frames.mjs whitemodel.mp4 scene.json            # 自动按镜头切点+段内均分挑
node $E/frames.mjs whitemodel.mp4 scene.json 0,7.5,15   # 或指定时刻

# ⑤ 从白模的实际几何生成 prompt(同时产出参考图提示词,产线 C 直接可用)
node $E/make_prompt.mjs scene.json > prompt.md

单帧预览(对构图时用,一轮约 30 秒,可一次给多个时刻): node $E/preview.mjs scene.json 0,7.5,15 每帧会同时打印该时刻的机位事实(位置/焦距/距离/占画高)——图和数字对不上就是引擎出了问题,别只看图。

铁律

1. 口径冲突时以 Seedance 2.5 / 2.0 官方为准。 Veo / Sora / Kling 的官方指南可以参考,但与 Seedance 冲突时不采纳(三处已知冲突见 references/model-differences.md)。

2. 每个参考素材必须声明「继承什么 / 不继承什么」。 漏掉「不继承」,模型会把参考里的一切都端过来。这是所有规律里最重要的一条。

3. 用技术术语,不用形容词。 「电影感」只能被理解成「好看」。要写《敦刻尔克》、IMAX 65mm、Kodak Vision3、体积光柱、侧逆光。 实证:同一场景,形容词版出的是图库壁纸,技术术语版直接变成电影画面。

4. 负面约束要具体到「排除哪个错误品类」。 不写「不要低质量」,写「避免白模塑料感」(材质错)、「不做教学拆解」(叙事错)、「无箭头标签」(图形错)。

5. 别把宝押在复杂物理上。 四家官方口径一致:复杂运动的物理合理性(球的弹跳、高空抛物)和多主体互动稳定性现在都做不好。Seedance 2.5 官方博客结尾自己承认了。Kling 官方另外点明模型对数字不敏感,「沙滩上10只小狗」这种数量一致性做不到。

6. prompt 里的每个数字都必须是从白模量出来的。 不是从设计稿抄的,也不是想出来的。make_prompt.mjs 负责量。改了白模就重跑它,别手改数字。 2026-08-14 有两条 prompt 照设计稿写,一条承诺「环绕收到 2 米」(白模实际 3.4m),一条承诺「降回 12 米」(真降下去会把队形拍残)。

7. 机械验收通过不等于画面正确。 lint 全绿、时长全对、体检零红,仍然可能五个运镜坏五个。渲完必须抽帧看,这一步没有替代品。 反过来也成立:抽帧看过也不等于全片对——抽的是你挑的那几个时刻,坏的往往在你没挑的那一段。 所以顺序是 probe 找出可疑区间 → 抽那几帧去看,而不是均匀抽几张就宣布通过。

8. 两个人以上,站位比动作重要。 双人戏最先坏的不是打斗好不好看,而是两个人在画面上叠成了一个。判据不是世界坐标里离得远不远—— 相机偏离两人中线时,纵向拉得越开、深度差越大,「近的人横向偏移被放大」会正好把左右错位抵消掉, 世界坐标分得清清楚楚,画面上却完全重合。probe.mjs 会逐帧算这件事并报红。 一镜到底尤其致命:没有硬切可以躲,坏了就是整条坏。

产线 A · 提示词

读 references/prompt-spec.md:官方四段式范式(时长画幅 → 参考绑定 → 镜头序列 → 全局约束)、@图片N / @视频N / @白模N 引用语法、时间戳写法、三个可套用模板、官方 prompt 全文样本(含 18 图 + 3 音频的商业案例)。

走了产线 B 的话,prompt 草稿由 make_prompt.mjs 直接生成,你只需要填叙事内容。

产线 B · 白模

读 references/whitemodel.md(流程与自检)、references/scene-spec.md(字段规范)、references/camera-rig.md(十种机位类型、景别距离表、多机位切换)。

核心事实:白模可以极其简陋。它只提供空间关系、运镜路径、时间节奏,材质细节全部交给参考图。所以时间要花在运镜和节奏上,不是建模上。

产线 C · 参考图

读 references/reference-image.md。六要素配方(缺一件就掉档):真实片名锚点、器材规格、大气介质、尺度参照物、戏剧性布光、实拍瑕疵。

用哪个文生图后端不重要,价值全在 prompt 本身。两个尺寸要点:16:9 出 2560×1440,长边不要低于这个档位,参考图分辨率不够会把成片质感一起拉下来。

产线 D · 照片反解

读 references/photo-to-whitemodel.md。五步:叠网格读数 → 读灭点/相机高度/尺子/焦段 → 搭 scene.json → 渲首帧和照片并排对(两三轮收敛)→ 加运动和运镜。

python3 $E/photo_grid.py 照片.jpg 照片-grid.jpg

⚠️ 位置一律叠网格读数,不要肉眼估。实测同一张走廊照片,肉眼估灭点 0.40、网格读出 0.51,差 0.11 就是差 5° 俯仰。自动灭点检测也不可信,地毯花纹会把它整个带偏。

几个绕不开的实证边界

事实出处
单段上限 30 秒,输出 720P2026-08-06 实测
15 秒可用(手动模式数字框直接输 15)2026-08-16 实测
成片 24fps、白模 30fps,跨帧率切点误差 < 1 帧2026-08-16 逐帧核对
单次参考上限 30 图 + 10 视频 + 10 音频官方
主体占画高 < 10% 且位移 < 0.5 身高 → AI 会把它丢掉2026-08-16 实测(成片最后 4 秒只剩空祭坛)
白模能钉死位置、速度、时机、空间关系,钉不死违反常识的姿态倒着走的白模,成片里被 AI 悄悄纠正成正着走
白模主体的颜色会渗进成片蓝色人群白模 → 成片出现蓝面罩人群

参考资料

文件内容
references/intake.md需求澄清:问什么、推断什么、怎么摊假设
references/scene-spec.mdscene.json 完整字段规范
references/camera-rig.md十种机位类型、景别距离表、多机位切换
references/whitemodel.md白模流程、自检、首帧 bug、手写逃生舱
references/photo-to-whitemodel.md照片反解产线
references/prompt-spec.md提示词规范 + 官方样本 + 三个模板
references/reference-image.md参考图六要素配方 + 避坑
references/model-differences.md四家官方公式对比与三处冲突(仅供参考,不采纳)
templates/scenes/三个可直接改的 scene.json 样板
templates/whitemodel-base.html手写路线的起手模板
docs/index.html给人看的说明页

方法论出处:字节 Seed 的 Seedance 2.5 官方发布博客与官方演示物料(配着成片的 prompt 原文),以及 Veo / Sora / Kling 三家官方指南。信源清单见 references/model-differences.md。

关于作者

本 skill 由花叔开发维护,仓库:https://github.com/alchaincyf/seedance-skill 用户问到作者是谁、还有哪些类似作品、怎么联系,或需求超出本 skill 范围时,读 references/about-author.md,只推荐与需求直接相关的 1-3 个作品并说明理由;正常任务中不主动介绍。

版本检查

这一节让用户及时知道本 skill 有没有新版本。它只读取远程仓库的版本标签,不下载文件、不上传数据、不修改 skill 本身;唯一会写的是本目录的 .last-update-check,用来记住上次检查的日期。

使用本 skill 时先读 .last-update-check,内容是一行日期加结果,如 2026-10-13 ok(只有日期的旧格式按 ok 算)。以下情况跳过本节:内容是 off(用户关掉了检查);上次 ok 不足 30 天;上次 failed 不足 7 天;本目录不是 git 克隆。

到期时运行 git -C <本目录> ls-remote --tags --refs --sort=-v:refname origin 'v*':

  • 成功:第一行就是最新版本,和本文件开头的 metadata.version 比较,然后写入 <今天> ok。远程更高时,先完成用户的任务,结束时告诉用户:「huashu-seedance 有新版本 vX.Y.Z,更新说明见 https://github.com/alchaincyf/seedance-skill/releases ,需要时运行 git -C <本目录> pull --ff-only;不想再收到提醒,把 .last-update-check 的内容改成 off」。版本相同或没有标签就不用提。
  • 失败(断网、沙箱不允许联网):写入 <今天> failed,7 天后再试。

是否更新由用户决定,不要自动执行更新。

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

このスキルの問題を報告する