Claude Video 2.0
三个阶段:A. 选择风格(画廊)-> B. 五个问题 -> C. 构建(故事板、静帧、渲染、检查)。
每一步都遵循 references/hacks.md 中的5个技巧:一种风格、真实参考、数字简报、一个循环时钟、检查帧而不是代码。
$SKILL 指此技能文件夹(通常为 ~/.claude/skills/claude-video-studio)。
为每个作品新建工作文件夹(例如 ./video-<short-name>/)。切勿在 $SKILL 内部构建。
开始之前
运行 bash $SKILL/scripts/doctor.sh 一次。如果有缺失,给用户一条修复命令并停止。
阶段 A:选择风格
- 在后台启动画廊(使用你的后台运行选项;它在 127.0.0.1 上提供服务,90 分钟后自动停止):
python3 $SKILL/scripts/gallery.py它会在用户浏览器中打开并打印地址。如果未自动打开,也把地址提供给用户 (如果只需要地址,加--no-open)。用户选择后停止它,或任其自动停止。 - 用一条简短消息说: "你的风格画廊已打开:<地址>。每个图块都是代码生成的实景视频。将图块翻转为 'With media' 可查看带真实照片和素材的效果。在喜欢的风格上点击 'Use this style' 并粘贴到这里。或粘贴 1 到 3 个你自己的参考链接/图片。"
- 当用户回复时:
- 风格 ID(如
paper-world):读取$SKILL/styles/<id>/STYLE.md。该规范即为此作品的法律。 - 用户自己的参考:查看每个参考(打开链接、读取图片)。在工作文件夹中按
$SKILL/references/style-format.md格式编写新的STYLE.md。描述每个参考的制作方式(遮罩文本、慢速相机、长停留),包含十六进制颜色和缓动数值。用5行展示。 - "你选":为其主题选择最佳风格,并用一行说明理由。
- 风格 ID(如
阶段 B:问题
读取 $SKILL/questions.md。将其两个 --- 行之间的内容作为一条消息逐字发送。
跳过用户已告知的内容。接受 "go" 作为对所有默认选项的肯定。仅在需要时使用其后续问题。
阶段 C:构建
- 数字简报(技巧3)。在工作文件夹中编写
BRIEF.md:尺寸(16:9 为 1920x1080,9:16 为 1080x1920)、时长、30 fps、是否循环、确切文字、十六进制调色板(品牌色替换风格色,规则不变)、字体及其链接、缓动数值,以及始终生效的禁用列表:无色相渐变、无发光/光晕/镜头光晕、眼睛跟随的对象上无线性缓动、无居中对齐一切、无从零缩放、屏幕上最多6个词、一种强调色、无虚假金属质感。若所选风格的签名特性与此列表冲突(如太阳发光、居中部件),以风格为准:其画廊视频即为证据。列表中的其他规则仍适用。 - 故事板。 编写
storyboard.json(镜头及时长、图形动作、每个镜头的资源:code、user_photo、user_clip或generate;参见$SKILL/examples/storyboard.json)。运行python3 $SKILL/scripts/storyboard.py storyboard.json并显示表格。- 如果有任何镜头为
generate(Higgsfield AI 剪辑),表格会显示积分估算。**停止并等待明确的“是”**再消耗积分。然后逐个生成剪辑:python3 $SKILL/scripts/higgsfield.py generate ... --out media/shotN.mp4 --yes,并在使用前检查每个剪辑的3帧。参见$SKILL/references/media.md。 - 无 AI 剪辑时,显示表格后继续,除非用户反对。
- 如果有任何镜头为
- 构建。
bash $SKILL/scripts/new_project.sh <work>/proj 16x9|9x16 <秒数> <style id>。 若风格有参考作品,项目会以其副本启动:将文字、颜色、时序和尺寸改为简报要求(脚本会在尺寸或长度不同时发出警告;然后重新布局,绝不裁剪)。否则从模板构建。若必须循环而参考不循环,遵循$SKILL/references/loops.md。 重要规则:- 所有动画使用统一时钟(技巧4):来自
studio.js的STUDIO.play(t => render(t), { loop }),或一个暂停的 GSAP 时间线。相同时间输入,相同画面输出:无Math.random(使用STUDIO.rng)、无Date.now、无定时器。 - 字体:仅免费字体,每个用
<link>加载;若有任何字体有链接,则链接所有字体(参见$SKILL/references/hyperframes.md)。 - 媒体放置在设计中(遮罩、卡片、形状),不可放在不可读文本下方,不可覆盖人脸。
- 将用户的照片和剪辑复制到
<work>/proj/media/。切勿移动或更改原始文件。
- 所有动画使用统一时钟(技巧4):来自
- 3 个静帧供审批(技巧5)。
bash $SKILL/scripts/stills.sh <work>/proj <t1>,<t2>,<t3>,每个大约在镜头切换后 0.6 秒,待画面稳定后(你可自行查看更多帧用于审核)。读取stills/peek.jpg。像严厉的高级动态设计师一样,从1到10对构图、动态、字体、色彩和创意评分。修复最差的3项;重复直至所有得分>=8。然后将3个静帧和得分展示给用户并问:“可以渲染吗?”等待“是”(任何说明:修改、新静帧、再次询问)。 - 渲染。
bash $SKILL/scripts/render.sh <work>/proj <work>/out/draft.mp4 draft。 - 检查。
python3 $SKILL/scripts/pacing_check.py <work>/out/draft.mp4(如果循环则加--loop;无超过1秒的空隙,屏幕上无低于0.3秒的内容)以及,如果循环,python3 $SKILL/scripts/loop_check.py <work>/out/draft.mp4 --project <work>/proj(0秒帧必须等于末尾帧)。读取联系表。修复并重新渲染直至两者均通过。 - 最终渲染。
bash $SKILL/scripts/render.sh <work>/proj <work>/out/final.mp4 high,再次对最终文件运行检查。 - 交付。 给出路径、时长、帧尺寸、文件大小、检查结果、评分,以及一行关于下一步尝试的建议。如果文件超过20 MB,另制作一个小版本用于分享:
ffmpeg -v error -i final.mp4 -c:v libx264 -crf 22 -preset slow -an final-share.mp4。 然后读取$SKILL/config.json。如果link非空,以一行结束: "更多风格和帮助:<链接标签或链接> <链接>"。如果为空,则不提此事。
硬规则
- 绝不询问、打印、记录或提交 API 密钥。密钥仅存在于 shell 或
.env文件中。 - 不显示故事板及其成本并得到明确“是”之前,绝不消耗积分。
- 绝不遮挡人脸。
- 不运行检查就不说检查通过。不看帧就不说画面正确。
- 每件作品一种风格。一种强调色。禁用列表始终适用。
- 仅使用免费字体。绝不将字体文件复制到项目。
文件
gallery/画廊页面及其视频。scripts/gallery.py提供服务。styles/<id>/21 种风格:STYLE.md(调色板、字体、缓动、运动规则、招牌动作、媒体、禁用列表),以及大部分风格对应的index.html(完整可运行参考作品)。questions.md阶段 B 的问题(可自由编辑)。config.json可选的关闭链接。references/5 个技巧及其来源、运动数字、HyperFrames 规则、循环制作、媒体模式和 Higgsfield、风格格式。templates/motion/空白启动器和studio.js(统一循环时钟)。scripts/医生、画廊、新建项目、静帧、渲染、节奏检查、循环检查、故事板、higgsfield。examples/一个小型简报和一个故事板。