教程Claude Code

用 Claude Opus 5.5 写代码做视频:七类代码方案怎么选,提示词怎么写才稳定

根据 @xilo2991 的长文整理并核对了案例原帖、skill 仓库和官方文档:Opus 5.5 不会生成视频,它写代码把画面一帧帧画出来。讲清七类代码方案各适合什么画面、五个公开案例怎么组合、七块结构的提示词怎么写,以及让出片更稳的 CLAUDE.md 和自查办法。

发布 · 约 23 分钟读完 · 经人工审核()· 本站的内容怎么来的

本文根据公开分享整理,本站尚未实测。操作前请对照文末的原始来源。

本页目录(8 节)
  1. 先弄清:它不是在“生成视频”
  2. 七类代码方案,按想要的画面来选
  3. 五个案例:代码是怎么组合的
  4. 提示词:七块结构
  5. 让出片更稳的三个办法
  6. 不想写提示词:用作者的 skill
  7. 想看更多案例
  8. 要留意的地方

这篇教程解决一个问题:想让 Claude Opus 5.5 做一条视频,该让它用哪种代码来画,提示词又该怎么写,才不是每次碰运气。

方法来自 X 用户 @xilo2991 的一篇长文。他把最近公开的一批 Opus 5.5 视频拆了一遍,总结出七类代码方案和一套七块结构的提示词,还把整套流程做成了一个开源的 skill。本文重新整理了一遍,并核对了能核对的部分:五个案例的原帖、skill 的仓库、Anthropic 关于 XML 标签的文档,以及几个框架自己的说明。文中的两张图、原文作者自己写的三段提示词,以及四位案例作者的提示词(中文译文)都来自原文。

本站另有两篇和它相关,各讲一头:

这一篇讲的是选哪种代码,和提示词怎么写。

先弄清:它不是在“生成视频”

Claude 平台的模型概览写得很清楚:Opus 5.5 的输入是文字和图片,输出只有文字。它和视频生成模型不是一回事。

画面是从代码来的。Opus 写一个网页,网页里有一个函数,你告诉它现在是第几秒,它就把这一秒的画面画出来。再用另一个程序,按每秒 24 张或 60 张的速度把每一帧截下来,最后把几千张截图拼成一个 MP4。原理和翻页动画书一样。

一台机器的示意图:代码变成网页画面,逐帧截图,再合成视频

除了画画面的代码,还会用到两个工具:

工具 做什么
Playwright 在后台开一个看不见的浏览器,给代码画出的画面截图
FFmpeg 把截图和声音合成视频

声音也可以用代码做。声音就是一串波形,用 Python 的 numpy、scipy 可以把每个音符的波形算出来,鼓点、贝斯、钢琴、界面的点击声都行。

七类代码方案,按想要的画面来选

不管用哪一类,底层都是上面那个逻辑。区别在于各自擅长的画面不同。

方案 是什么 适合的画面 要留意
Canvas 2D 网页里的一块画布,用 JavaScript 在上面画线、画圆、填色、写字 像素风、扁平插画、手绘线条这些二维画面
HTML / CSS / SVG 真的网页元素:结构、样式和矢量图形 软件产品的宣传片,界面动效
WebGL 着色器 跑在显卡上的一段小程序,给画面上每个像素单独算颜色 老电视的扫描线和弧面、胶片颗粒、水面反光、发光的粒子 一般叠在 Canvas 画好的画面上加质感。渲染会慢很多
Three.js 在网页里做 3D 的库,底层也是 WebGL 镜头要在空间里动:产品 360 度展示、立体的文字、粒子云 纯代码搭的模型基本是方块、球、圆柱拼的。要和实物一模一样,把产品的 3D 模型文件一起给它
p5.js 加 p5.brush 一个画图的库,加一个笔刷插件 彩铅、水彩、蜡笔这类手绘的感觉
Remotion / HyperFrames 现成的代码视频框架,通用的部分已经做好 要讲一个完整故事、镜头比较多的片子 见下
Manim 用 Python 写动画的开源工具 公式、坐标轴、几何图形,画得非常精确 整体风格比较素

后两类按它们各自的官方说明补充两句:

  • Remotion 的思路是给你一个帧号和一块空白画布,用 React 把这一帧画出来。HyperFrames 是 HeyGen 开源的框架,写的是 HTML、CSS 和可以按时间定位的动画,再渲染成 MP4。作者两个都用过,认为做出来的效果差距不大。
  • Manim 最初是 YouTube 频道 3Blue1Brown 的作者 Grant Sanderson 为自己的视频写的。它的写法不一样:不用一帧一帧去画,只写画面里有什么、它们怎么变,中间的过程由它算出来。

这些名字不懂也没关系。作者的建议是:知道每一类叫什么、大概能做出什么效果就够了,在提示词里点名让它用。

五个案例:代码是怎么组合的

这几类代码可以单独用,也可以组合。原文拆了五条风格差别很大的公开作品:

案例 作者 用了什么 值得学的一点
像素巫师 @majidmanzarpour 只用 Canvas 2D 像素感是怎么来的
界面变形 @twoclipping HTML / CSS / SVG 弹簧、节拍、运动模糊
电子游戏史 @prasenx Canvas、着色器、Three.js 混用,配乐用 Python 合成 叠一层着色器,质感差多少
甜酷舞蹈 @Gorden_Sun 视频模型出人物,代码搭场景 代码和视频模型怎么分工
AI 发展史 @kimmonismus Claude Code 里用 Remotion 长片怎么不跑偏

其中四条的作者公开了提示词,下面一并放上。中文译文出自原文作者之手,英文原文在各自的原帖或评论区里。

像素巫师:只用 Canvas 2D

一个巫师举起法杖、蓄力、放出一道飞弹,再收回来,循环播放。它的像素感来自两个做法:

  • 画布本身就很小。 所有东西先画在一块 128×96 的小画布上,再按整数倍放大到全屏,放大时关掉平滑,每个像素都是清楚的小方块。
  • 动作故意一顿一顿。 巫师的姿势每秒只变十次左右,像老游戏里一张张画出来的动画;火花和飞弹每一帧都在动,画面不显得卡。

巫师没有用任何图片,是代码用小方块拼出来的。法杖的角度、手臂的高度都做成了参数,所以同一个角色可以做出各种动作。

作者的提示词:

创建一个独立的单 HTML 文件,用原生 JavaScript 和 Canvas 2D 渲染一个正在施法的像素风巫师动画。不使用任何外部素材、库或网络请求。

渲染
- 所有内容先画在一块逻辑分辨率固定为 128×96 的离屏画布上,再按能放进窗口的最大整数倍放大,画到全屏的显示画布上,居中,设置 imageSmoothingEnabled = false 和 CSS image-rendering: pixelated。
- 所有绘制都对齐到逻辑画布的整数坐标。不要亚像素位置、抗锯齿、渐变和 shadowBlur。
- 固定调色板,大约 24 个颜色:夜空用深蓝和深紫,长袍用暖色,再加 3–4 个明亮的魔法色。每一个像素都必须来自这个调色板。

角色
- 用填充矩形和一串串像素程序化地搭出巫师,大约 24×32 个逻辑像素:带弯折的尖顶帽、长胡子、双色长袍加深色描边、杖头有宝石的法杖。
- 把姿势做成参数(法杖角度、手臂抬起高度、头部倾斜、长袍摆动)。参数平滑变化,但每一帧都量化到像素网格上,这样虽然循环以 60fps 运行,动作看起来却像每秒 8–12 张的像素动画。

动画
- 循环状态机:待机(两帧上下晃动、胡子摆动)→ 蓄力(法杖举起、宝石闪烁、火花螺旋着向内聚拢)→ 施法(一道强光爆发,飞弹横穿画面,屏幕震动 1–2 像素)→ 收招(回到原位)。关键帧之间的姿势参数用缓动过渡。
- 粒子系统预先分配好、循环复用,不产生新对象。蓄力时火花围着宝石转,施法时向外炸开,每个粒子消失前从白色经过魔法色变成深色。画粒子时位置对齐到像素网格。
- 用固定的 60Hz 时间步长更新,用 requestAnimationFrame 渲染。循环里不产生任何新对象。

场景
- 极简背景:深色夜空、几颗闪烁的 1 像素星星、月亮、石头地面。角色的剪影必须清晰可辨。
- 宝石给巫师打一圈 1 像素的轮廓光,蓄力和施法时变亮。

质量标准
- 任何窗口大小下像素都清晰,无缝循环,稳定 60fps,剪影清楚。看起来要像一段精致的 16-bit 游戏角色动画,而不是缩小了的矢量图形。

界面变形:加三样东西

画面里从头到尾只有一个黑白的形状,从按钮变成加载条、播放器、滑块、图表,每一次变化都是一个鼠标光标点出来、拖出来的。按钮、文字、图表都是真的网页元素。它看起来比普通的网页动效讲究,是因为提示词里加了三样东西:

做法 是什么
弹簧动画 尺寸和圆角的变化用弹簧公式算,带一点点回弹,比匀速运动舒服
节拍网格 先用 Python 分析音乐,找出每一拍在第几秒,每一次变化都落在拍子上
运动模糊 每一帧多截 4 张叠在一起,快速移动的东西会带一点拖影

这条的提示词模板作者直接公开在原帖里,结构就是后面要讲的那几块:

<inputs>
开工前先问我:8–12 个界面状态(按钮、加载、播放器、滑块、开关、标签页、图表、命令面板、通知这些),纯黑白还是加一个强调色,以及一首 120 BPM 左右、可以商用的免版税音乐。
</inputs>

<direction>
Dribbble 级别的界面动效。从头到尾只有一个形状,永远不切镜头:每一个状态都是同一个元素改变尺寸、圆角和颜色变过去,里面的内容在一下短暂的模糊里切换。
一个鼠标光标用真实的点击和拖拽驱动每一次变化。浅暖灰背景,黑白组件,一种干净的界面字体(Geist)。所有动画都用弹簧,最多带一点点回弹。镜头跟着缩放,让每个状态都占满画面。最后一帧和第一帧一样,可以无缝循环。
禁止:弹跳缓动、粒子爆炸、发光、组件上的渐变、粗细不统一的图标、没有动作的空档、任何看起来像模板的东西。
</direction>

<structure>
120 BPM,7 个小节,每一拍都有事情发生。
按钮 → 加载 → 对勾 → 灵动岛 → 音乐播放器(播放和暂停图标互相变形)→ 拖动进度条 → 变成音量滑块,拖过最大值时被拉长 → 开关踩着节拍翻转 → 开关的圆点变成标签页的指示条 → 标签页展开成一张自己画出来的图表,悬停时出现提示 → 收成 ⌘K 命令面板 → 输入筛选 → 回车 → 通知 → 回到按钮。
</structure>

<build>
1. 一个 HTML 文件,1440×1440。所有样式都在 seek(t) 里由时间算出来:不用 CSS 过渡,不用计时器,帧和帧之间不保存状态。
2. 弹簧用公式直接算。一个值要多次改变目标时,把每一次变化的弹簧叠加起来,这样它始终只由时间决定。
3. 标签页指示条的左右两条边用两个不同的弹簧,前沿先走、后沿后跟,移动的时候会被拉长。开关的圆点也这样做。
4. 拖拽要像真的在拖:光标按住时,数值由光标的位置算出来;松手后从当前位置弹回去。
5. 用 numpy 分析音乐,找出节拍网格,从重拍开始。每一个界面音效都放在对应动作的那一拍上。
6. 用 Playwright 渲染,每帧截 4 张,用 ffmpeg 混合出运动模糊,输出 60 帧的视频。
7. 渲整片之前,每一拍先渲一帧检查,偏离节拍、太挤、看不清的地方先修掉。
</build>

<gotchas>
被镜头缩放的元素、会渲染文字的元素,都不要加 will-change,否则文字会糊。在变形容器里切换的文字,要有自己的进场和出场时间,不然新旧文字会叠在一起。最后一帧要和第一帧完全一样,包括光标的位置和速度,否则循环的时候会卡一下。
</gotchas>

<start>
先问我要输入的内容,写任何代码之前,先把状态列表排在节拍网格上给我看。
</start>

里面有两条要求值得照搬到自己的提示词里:所有样式只由时间算出来,不用 CSS 过渡和计时器;渲整片之前,每一拍先渲一帧检查。

电子游戏史:三种代码混用

作者的原帖只写了一句:在 Cursor 里让 Claude 做了一条讲电子游戏历史的视频。按原文的拆解,它混用了几种代码:像素年代的游戏画面用 Canvas 2D,老电视的弧面、扫描线和发光用着色器,1993 年以后的走廊、城堡和方块世界用 Three.js,配乐用 Python 合成,画面跟着音乐剪。

着色器这一层,原文作者让 Claude 复刻了一段来对比。左边只有 Canvas,右边叠了着色器:

同一个像素游戏画面:左边是只用 Canvas 的版本,右边叠了着色器,有了老电视的弧面、扫描线和发光

代价是渲染时间。按他的测试,同样 3 秒、90 帧,只有 Canvas 的版本渲染 7 秒,加上着色器是 48 秒。

这条的提示词只有几行:

做一条 2 分钟的电影感视频,讲电子游戏的历史,要史诗、要动人,像一部纪录片预告片,全力以赴。

配乐你自己写,完全用代码合成,不要采样,不要音频文件,不要虚拟乐器。画面要跟着音乐剪。

1920x1080,60 帧。不要下载任何图片或素材,每一帧都用代码生成。最后把画面和音乐混在一起,渲染成 MP4,保存到【你指定的位置】。

它只写了想要什么效果和几条限制,其余全是模型自己决定的。

甜酷舞蹈:人物交给视频模型

前面三条,画面里的东西全是代码画的。但代码有短板:写实的人物、复杂的舞蹈动作,它很难画好。这时候换一种分工:人物交给视频模型,场景和动效交给代码。

这条的原始视频是 Grok 生成的,一个角色站在纯绿色的背景前跳舞,别的什么都没有。Opus 5.5 在这上面做了三件事:

  1. 抠像:按颜色去掉绿色背景,只留人物。
  2. 场景和动效:背景、大字、分屏、环绕的 3D 文字,全是网页代码画的。
  3. 节奏:背景和大字跟着音乐的拍子换,人物片段本身不改。

AI 发展史:用 Remotion 讲一个完整的故事

作者在原帖里写了它是怎么做的:整条 3 分钟的片子由 Claude 在 Claude Code 里用代码完成,大约 7400 行 React 和 TypeScript(Remotion),每张图都是 SVG 和 Canvas 画的,配音用开源的语音模型,配乐用 Python 合成;花了大约一小时,用掉他每周额度的 7%。

他的提示词写得很细,把主题和场景换成自己的就能用:

你是一位动态设计师兼创意总监,正在制作一部 3 分钟的动画短片,完全用代码搭建,最后渲染成 MP4。

这部片子
标题:「Attention Is All You Need → AGI」
讲的是 2017 年的一篇论文,怎样一步一步引出了大语言模型、推理、会用工具的 AI 智能体,以及 AGI 这个还没有答案的问题。它应该像一篇有电影感的影像随笔,而不是幻灯片或者时间线信息图。可以想象成 Kurzgesagt 遇上皮克斯电影的开场:有情绪、聪明、精准。

技术设置
用 Remotion(React)。新建一个项目,1920×1080,30fps,时长正好 180 秒(5400 帧)。
每个场景一个 composition,在一个主 composition 里按顺序排好。
不用任何外部图片素材或现成视频:所有东西都用 SVG、Canvas、CSS 和代码生成的粒子、形状来画。可以用 Google Fonts。
动手之前,先写一份 STORYBOARD.md,写清楚每个场景的时间、画面、屏幕上的文字和转场。然后一个场景一个场景地做。
每做完一个场景,渲染 3–4 张静帧(npx remotion still),用挑剔的眼光看一遍。先修好排版、重叠、可读性和节奏,再做下一个。
最后用 npx remotion render 输出到 out/film.mp4。给音乐留一个可选的 <Audio> 位置(public/music.mp3),我之后再加;如果文件不存在,就渲染无声版。

叙事主线 / 贯穿全片的母题
主角是一个会发光的词元,也就是单词「the」,它穿过每一个时代。2017 年,它是一个孤独的光点,突然通过注意力连线「看见」了所有其他单词。随着时间推移,它有了声音、感官(多模态)、推理能力、双手(工具),最后,有了一个问题。

场景(时间是大概的,你可以重新分配)
0:00–0:15 冷开场。一片黑暗。单词像星星一样散落,彼此不相连。RNN 式的逐个处理:单词一个接一个亮起,慢慢忘掉前面的。
0:15–0:35 2017 年 6 月,「Attention Is All You Need」(Vaswani 等人,Google)。每个单词同时连到其他所有单词。注意力连线绽放成一张网。论文标题像排版印刷一样出现。
0:35–0:55 2018–2020:大语言模型崛起,GPT-1、BERT、GPT-2、GPT-3。规模定律:这张网指数级增长,镜头往后拉。模型开始补全句子,流畅得有点诡异。
0:55–1:20 2022:指令微调和 RLHF,然后是 ChatGPT(2022 年 11 月 30 日)。词元有了一个聊天气泡。用户数计数器爆炸式增长。世界开始跟它对话。
1:20–1:40 2023:多模态。图像、音频和代码从四面八方流进同一张网,词元有了「感官」。每一种模态都变成词元,流过同一个注意力机制。
1:40–2:05 2024–2025:推理模型。一条看得见的思维链展开,分叉、剪枝、回溯。模型「先想再说」,时间变慢。
2:05–2:30 工具使用和智能体。词元长出了双手:它调用搜索、运行代码、打开文件,调度子智能体。很多条线程同时工作,屏幕变成一个忙碌又漂亮的工作室。
2:30–2:50 走向 AGI。所有母题汇合。2017 年的那张网重新出现,但现在是星球尺度。保持开放:不要乌托邦,也不要末日。屏幕上写:「Attention was all we needed. What comes next is up to us.」(如果你能写得更好,就改进这句话。)
2:50–3:00 回到黑暗中一个发光的词元。片名卡,结束。

制作规则
准确性很重要:年份、人名、论文标题都要正确。对某个具体事实没把握时,宁可不写也不要猜,并把所有不确定的说法列在 NOTES.md 里。
文字排版:屏幕上同时最多约 8 个单词,每段文字停留时间要够读完(至少 2.5 秒)。用一种展示字体,再用一种等宽字体表示「模型输出」。
动效:用弹簧和缓动曲线,不要线性运动。场景之间的转场要从内容里长出来(网络变形、镜头穿过一个节点),不用通用的淡入淡出。
颜色:深色背景,加一个暖色强调色,这个强调色随着时代慢慢变化。
细节和彩蛋留给认真看的人(比如真实的论文片段、小小的界面细节、看起来可信的模型输出),像高水准的动态设计作品那样。
节奏:密集和平静的时刻交替,给推理那一场和 AGI 那一拍留出呼吸的空间。

全程自主完成整条流程。做完以后,告诉我 MP4 的路径、一段简短的创作决策总结,以及 NOTES.md。

其中三条规矩对任何长一点的片子都有用:

  • 先写分镜。 动手之前先写一份 STORYBOARD.md,每个场景的时间、画面、屏幕上的文字和转场都写清楚,再一个场景一个场景地做。
  • 每个场景做完先自己看。 渲染三四张静帧,把排版、重叠、可读性和节奏修好,再做下一个。
  • 事实拿不准就不写。 年份、人名、论文标题要正确;没把握的宁可不写,并把所有不确定的说法列在一份 NOTES.md 里。

顺带说一下“一句话提示词”

那几天传得最多的其实是另一种视频:15 秒,镜头快切,画面很炫。它的提示词只有一句话,大意是“做一条 15 秒的动态图形视频,展示你是多厉害的动效设计师,全力以赴”。

原文没有把它当案例,理由是它基本没有可控性。拿来试试模型的上限可以;要给自己的账号做视频、给产品做宣传片,这句话用不上。

提示词:七块结构

原文作者把效果好的几份提示词放在一起比,发现它们用的大多是 XML 标签,而不是常见的 Markdown 标题。这和 Anthropic 文档里的建议一致:提示词里同时有指令、背景、示例和输入时,把每一类内容用各自的标签包起来,Claude 能更明确地分清哪部分是什么,减少理解错的情况。

整体是七块:

标签 写什么
<role> 让 Claude 当什么角色:动效设计师、科普作者还是产品导演
<inputs> 开工前先问你要什么:主题、时长、画幅、配色、参考图、音乐。你没给的,不许它自己编
<direction> 画面风格,以及明确的禁止清单
<structure> 分镜和节奏:几个镜头、各多长、怎么转场、卡在哪一拍
<build> 技术路线:用哪几种代码、怎么渲染、怎么配乐
<gotchas> 这种做法最容易出问题的地方
<start> 第一步先做什么,等你确认了再往下

最容易被忽略、又最影响效果的,是 <direction> 里的禁止清单。Opus 在没有限制的时候,会回到它熟悉的默认风格:深色背景、居中的大字、所有东西淡入淡出。想要不一样的结果,就要把“不要什么”写具体:不要弹跳缓动,不要粒子爆炸,不要发光,不要组件上的渐变,不要任何看起来像模板的东西。

下面是原文给的通用模板,方括号里的内容换成你自己的:

<role>
你是一位动态设计师,也是一位创意程序员,擅长用代码做出有设计感的视频。
</role>

<inputs>
开工前先问我这几件事,我没给的不要自己编:
1. 主题,以及看完以后希望观众记住的一句话:【你的主题】
2. 时长和画幅:【30】秒,【1920×1080 / 1080×1920 / 1080×1080】,【30 / 60】帧
3. 风格:【像素 / 扁平插画 / 界面动效 / 彩铅手绘 / 复古电视 / 3D】,有参考视频或截图就发给你
4. 配色和字体:【主色 #颜色】,【字体】
5. 声音:【我提供的音乐文件 / 用代码合成配乐】,要不要配音:【要 / 不要】
</inputs>

<direction>
整片只用一套风格、一套配色,同一个角色或元素在每个镜头里的样子都要一致。
每个镜头只讲一件事,画面上的字少而大,每段文字至少停留 2.5 秒。
动画用缓动或弹簧,不用匀速运动。转场从画面内容里长出来,比如一条线变成下一个场景的地平线,不用默认的淡入淡出。
镜头要跟着内容动,推近、拉远、跟随,让主体在画面里足够大。
禁止:【居中大字加渐变背景的默认风格、所有元素同时淡入、满屏小字、任何看起来像模板的东西,按你的情况补充】
</direction>

<structure>
先写分镜表,每个镜头写清楚:
镜头 [N]|[开始–结束秒]
画面:构图、元素、文字
动作:进场、主要动作、出场
镜头:推、拉、跟随还是固定
声音:这一段的音乐和音效
转场:怎么过渡到下一个镜头
如果有音乐,先分析节拍,镜头切换和关键动作都落在拍子上。
</structure>

<build>
1. 画面用【Canvas 2D / HTML+CSS+SVG / WebGL 着色器 / Three.js / Remotion / HyperFrames】来做,不用外部图片和素材。
2. 页面暴露 window.render(t),画出第 t 秒。所有画面只由 t 算出来,随机数带固定种子,不用计时器,帧和帧之间不保存状态。
3. 用 Playwright 逐帧调用 render(t) 并截图,再用 ffmpeg 合成 MP4。
4. 配乐和音效用 Python(numpy、scipy)从零合成,每个音效放在画面动作发生的那一帧上;有配音的话,整段合成,不要一句一句拼。
5. 每做完一个镜头,先渲 3 张静帧自己检查:文字有没有溢出、元素有没有重叠、画面够不够满,修好了再做下一个。
</build>

<gotchas>
- 字体加载完再开始截图,不然前几帧会用默认字体。
- 用了 WebGL 的话,先渲一帧确认着色器真的生效了,再渲整片。
- 你听不到声音,所以要把音频的波形画成图自己检查,确认没有爆音。
</gotchas>

<start>
先问我 inputs 里的问题,然后给我分镜表,等我确认。再渲 3 张关键帧让我看风格,确认后再渲整片。
</start>

<build> 里的第 2 条是整套做法的地基:画面只由时间决定。 为什么这一条这么要紧,Harness 工程和 Loop 工程是什么里有一节专门讲。

让出片更稳的三个办法

一、把思考强度调上去

原文的第一条建议:效果不理想时,先把思考强度(effort)调高。Claude Animation Base 的作者也有类似的观察:思考强度越高,模型把场景做得越铺张、越讲究细节,他的测试视频都是在 Claude Code 里用 xhigh 这一档做的。

代价是用量。各档位怎么选,见Claude Code 怎么省用量。

二、在项目文件夹里放一份 CLAUDE.md

Claude Code 每次开工都会先读这个文件。把做视频的规矩写在里面,这个文件夹里做的每一条视频都会遵守,不用每次在提示词里重复。原文给的一份:

# 视频制作规矩

## 渲染
- 每一条视频都只由时间决定:window.render(t) 画出第 t 秒。
- 不用 CSS 动画、不用计时器,帧和帧之间不保存状态,随机数带固定种子。

## 画面
- 禁用的默认风格:居中大字加渐变背景、所有元素一起淡入、角落里的标签和边框、界面上的发光。
- 一种标题字体、一种正文字体,除非我另外说明,只用一个强调色。
- 每 2–4 秒画面上要有新东西出现。

## 声音
- 没有给音乐的话,配乐和音效都用代码合成,放在节拍上,响度 -14 LUFS。

## 给我看之前
- 先出抽帧图,自己打分,把最严重的 3 个问题改掉,每一项都到 8 分以上再给我看。

三、让它自己查

Opus 5.5 能读图,所以可以让它把成片抽帧,自己看、自己挑毛病。原文的自查提示词:

检查视频,先完成抽帧处理,然后站在严格的动效导演视角,专门挑毛病,别替自己说好话。

按下面几项各打 1–10 分:前 2 秒抓不抓人、缩到手机屏幕大小还看不看得清、动作是否自然(有没有匀速滑动、有没有卡住不动的空拍)、画面变化是否足够(每 2–4 秒要有新东西)、构图、声音和画面是否对得上。

列出最严重的 3 个问题,标上时间点。重点找这几类:切换时文字叠在一起、居中大字加渐变背景的默认画面、角落里多余的标签和边框、缩放以后变糊的字、循环接缝处的卡顿。

列出以后重新渲染有问题的部分,再出一张新的抽帧图和新的分数。

重复这个过程,直到每一项都在 8 分以上。

要知道它的限度:这是让同一个模型给自己的作品打分。分数是它自己给的,“8 分以上”不等于你会满意。能数出来的问题(文字有没有重叠、有没有超出画面)更适合交给脚本去查,做法见上面那篇 Harness 的教程。

不想写提示词:用作者的 skill

原文作者把这套流程做成了一个 skill,叫 xilo-opus-video,MIT 许可。按仓库的说明,它分四步:

  1. 先问你要做什么。 一个想法、一篇文章、一个产品网址、一个代码库,或者一条参考视频都可以。
  2. 给三个方案。 每个写清风格、技术组合、逐镜头的画面、声音怎么做、大概要渲染多久,三个方案故意拉开差别。
  3. 每个方案出一个预览。 一张关键帧,或者一段 2 到 4 秒的小样。
  4. 你确认以后再做。 先把确认的方案写成一份 brief.md,也就是上面那七块提示词,再逐个镜头制作、逐个镜头出静帧自查,最后渲染成 MP4。

安装方法,仓库给了三种。在 Claude Code 里直接说:

帮我安装这个 Skill:https://github.com/Kianzzz/xilo-opus-video

或者用命令行:

npx skills add Kianzzz/xilo-opus-video

或者手动复制:

git clone https://github.com/Kianzzz/xilo-opus-video.git
cp -r xilo-opus-video/skills/xilo-opus-video ~/.claude/skills/

需要的环境:Python 3.9 以上,装好 numpy 和 playwright;FFmpeg;一个 Chromium 内核的浏览器。第一次使用时它会运行一个检查脚本,缺什么会告诉你怎么装。

仓库里也写了它不适合做什么:直接生成写实的画面(那要用视频模型)、在剪辑软件里剪现成的素材、给已有的视频加字幕。

这个 skill 带四个会在你电脑上运行的 Python 脚本。装任何第三方 skill 之前,先把脚本看一遍是个好习惯。skill 是什么、放在哪里,见Claude Code skills 怎么写。

想看更多案例

原文末尾列了四个仓库。下面的说明按各仓库自己的介绍写:

仓库 里面有什么
Awesome Claude 5.5 Videos 用 Claude 5.5 系列做的视频和做法的合集。原文说有一千多条;仓库自己的统计是截至 2026-10-10 收录 394 条来源帖子,其中 Opus 的 282 条
Awesome AI Motion 中文的动效案例合集,首页写着 948 个作品、107 份公开提示词、32 个案例附源码
Claude Animation Base 用 p5.js 和 p5.brush 做手绘角色动画的起步模板。仓库提醒:没有独立显卡时,水彩填充会让每一帧要渲染好几秒
PDoomVideo 一支完整 MV 的全部源码,可以看一条长片的代码是怎么组织的

要留意的地方

  • 本站没有实测。 本文根据原文、案例原帖和各仓库的说明整理,模板和 skill 的实际效果本站没有验证过。
  • 案例里的一些细节只有原文一个出处。 比如像素巫师“在 Claude 网页版的普通聊天窗口里做的、前后大约 30 分钟”,游戏史短片各段分别用了哪种代码,这些是原文作者的说法或拆解,原帖正文里没有。
  • 代码画不好写实的人物。 需要真人或复杂动作时,按“甜酷舞蹈”那样分工。
  • 质感要用时间换。 着色器和 3D 会让渲染慢很多,先渲几帧确认效果,再渲整片。
  • 用量不小。 那条 3 分钟的 AI 发展史,作者说用掉了他每周额度的 7%。先做一条 10 到 15 秒的,看看自己的用量再决定做多长。

来源

通过 API 中转站使用这些模型?到 Veridrop 免费检测中转站给你的是不是它声称的模型,或者看看中转站排行榜前 100 名。

相关文章