1. 从提示词到成片:Claude Code 驱动 Remotion 做代码化特效动画的完整链路
先说清楚这套东西到底是什么。Remotion 是一个用 React 写视频的框架,你把每一帧当成一个组件来渲染,时间轴、字幕、动画曲线全部是代码。Claude Code 是跑在终端里的编码 Agent,能读写你本地的项目文件、执行 npm 命令、改代码。Agent Skills 则是给 Claude Code 挂载的“能力包”,Remotion 官方维护了一个remotion-dev/skills仓库,把“怎么写 Remotion 组件、怎么对齐时间轴、怎么组合字幕和动画”这些经验固化成了可被调用的技能。
三者拼起来的效果是:你不再手动拖时间轴,而是用自然语言描述“我要一条 20 秒的科普动画,黑色毛玻璃风格,带旁白”,Claude Code 读取 Skill 里的规范,直接在你的 Remotion 工程里生成组件代码,最后npx remotion render出片。
适合谁?适合已经会一点前端、想用代码批量产出视频的内容创作者;也适合做数据可视化、产品演示、教程视频的开发者。不适合完全零基础、只想拖拽剪辑的人,因为这套流程的门槛在“本地环境跑通”这一步。
我试过完整跑一遍,最大的感受是:视频的“确定性”变高了。以前改一版动画要重新对时间轴,现在改的是提示词和文案结构,画面生成反而成了相对稳定的输出。下面按顺序把 npm 初始化、Skill 挂载、API Key 注入、渲染验证这条链路拆开讲,每一步都给可复制的命令和配置。
核心检索词先摆出来:Claude Code 搭配 Remotion 的 Agent Skills 配置,本质是“用统一 API Key 接入模型 + 挂载视频技能包 + 本地渲染”三件事。搞懂这三件事,后面就顺了。
2. TaoToken 前置准备:统一 Key 接入 Claude Code 的 settings.json 配置
Claude Code 默认走 Anthropic 官方模型,但很多人卡在“API 不好搞、贵、容易断”上。Claude Code 本身支持通过环境变量接入兼容 Anthropic 协议的推理服务,所以我们可以把 Base URL 和 Key 换成统一入口,模型也能自由切换。
这里用 TaoToken 做统一 Key 接入。它的 API 地址是https://taotoken.net/api,控制台里可以创建 API Key,模型对话、Coding Plan、API Keys 页面都在官网导航里能找到。官网入口:https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
先拿到 Key。登录后进控制台,在 API Keys 页面新建一个,复制出来形如sk-xxxx的字符串。这个 Key 后面要填进 Claude Code 的配置文件。
Claude Code 的配置文件在用户目录下的.claude/settings.json。如果目录不存在,先建目录再建文件:
mkdir -p ~/.claude vim ~/.claude/settings.json把下面这段完整贴进去。注意ANTHROPIC_AUTH_TOKEN换成你自己的 Key,ANTHROPIC_BASE_URL保持 TaoToken 的 API 地址:
{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-your-taotoken-key-here", "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_MODEL": "claude-sonnet-4-5", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5", "ANTHROPIC_SMALL_FAST_MODEL": "claude-haiku-4-5" }, "permissions": { "deny": [ "Read(./.env)", "Read(./.env.*)", "Read(./secrets/**)" ] } }几个字段的作用要分清。ANTHROPIC_AUTH_TOKEN是鉴权凭证,Claude Code 每次请求都会带上它。ANTHROPIC_BASE_URL决定请求打到哪个网关,这里指向 TaoToken 的 API 入口。ANTHROPIC_MODEL是主模型,负责写代码、理解 Skill;ANTHROPIC_DEFAULT_HAIKU_MODEL和ANTHROPIC_SMALL_FAST_MODEL是轻量模型,处理一些快速的小任务,比如文件摘要、简单补全。
permissions.deny这段是安全兜底,防止 Agent 在你不注意的时候读取.env和密钥目录。做视频项目时经常会有音频、素材的密钥配置,这个 deny 列表建议保留。
保存退出后,重启终端让环境变量生效。如果你之前已经开过 Claude Code 会话,记得退出重进,否则读的还是旧配置。
想换模型也简单,把ANTHROPIC_MODEL和两个默认模型字段一起替换成目标模型 ID 就行,三个字段保持一致能避免行为不一致。改完保存,重新启动 Claude Code 即可。
这一步做完,Claude Code 就已经指向 TaoToken 了。接下来验证一下是否真的生效,再进入 Remotion 工程。
3. 可复制配置:npm 初始化 Remotion 工程并挂载 Agent Skills
先建 Remotion 工程。Remotion 官方推荐用它的脚手架初始化,一条命令搞定:
npx create-video@latest my-motion执行后会问你几个问题:项目名、模板类型。选Blank或Hello World都行,做特效动画建议从 Blank 起步,干净。初始化完成后进目录:
cd my-motion npm install装完依赖,先跑一次预览确认环境没问题:
npx remotion studio浏览器会自动打开http://localhost:3000,能看到默认的合成画面就说明 Remotion 本身跑通了。这一步别跳过,很多人后面渲染失败其实是 Remotion 本身没装好。
接下来挂载 Agent Skills。Remotion 官方的 Skill 仓库地址是https://github.com/remotion-dev/skills。Skill 的本质是一组 Markdown 说明文件,告诉 Claude Code “遇到 Remotion 任务时该按什么规范写代码”。挂载方式是在项目根目录下建.claude/skills目录,把 Skill 内容放进去:
mkdir -p .claude/skills cd .claude/skills git clone https://github.com/remotion-dev/skills.git remotion克隆完成后,目录结构大致是.claude/skills/remotion/,里面会有SKILL.md和若干参考文件。Claude Code 启动时会扫描这个目录,把 Skill 加载进上下文。
如果你用的是 Cline MCP 或 Codex 这类工具,挂载方式类似,都是把 Skill 目录放到工具能识别的路径下。以 Codex 为例,它的auth.json里配置的是模型鉴权,Skill 目录则通过项目级配置指向.claude/skills。三件套要记全:Base URL 指向https://taotoken.net/api,Key 用 TaoToken 控制台生成的,Model ID 填你选的模型。
Skill 挂载好之后,在项目根目录启动 Claude Code:
claude进去之后可以用/status看一下当前状态,确认 Base URL 是https://taotoken.net/api,Key 已设置,模型名称对得上。如果这里显示的还是官方地址,说明 settings.json 没被读到,检查文件路径和 JSON 格式。
确认无误后,就可以给 Claude Code 下第一个视频需求了。比如:
根据 remotion skill 的规范,帮我做一个 15 秒的火箭发射动画,包含倒计时、升空、字幕解说,风格偏科技感,背景深色。
Claude Code 会读取 Skill 里的组件规范,在你的src目录下生成对应的 React 组件和合成配置。生成完你可以直接在 Remotion Studio 里预览,不满意就继续用提示词改。
这一步的关键是:Skill 决定了代码风格和质量下限,提示词决定了内容方向。两者配合,才能稳定出片。
4. 验证请求与成功结果:一次动画渲染的完整动作
配置和 Skill 都就位后,跑一次完整的渲染验证。先确认 Claude Code 能正常调用模型,再确认 Remotion 能出片。
在 Claude Code 会话里输入一个简单请求,比如“列出当前项目里所有的 Remotion 合成”。如果它能正确读取src/Root.tsx并返回合成列表,说明模型调用链路是通的。这一步能排除掉大部分鉴权问题。
然后让 Claude Code 生成一个最小动画。提示词可以这样写:
在 src 下新建一个 Rocket.tsx,用 Remotion 的 useCurrentFrame 和 interpolate 做一个火箭从底部升到顶部的动画,时长 5 秒,30fps,背景深蓝。
生成完成后,检查src/Root.tsx里是否注册了这个合成。Remotion 的合成需要在 Root 里用<Composition>声明,Claude Code 一般会自动加上。如果没加,手动补一段:
import { Composition } from "remotion"; import { Rocket } from "./Rocket"; export const RemotionRoot = () => { return ( <> <Composition id="Rocket" component={Rocket} durationInFrames={150} fps={30} width={1920} height={1080} /> </> ); };保存后回到 Remotion Studio,左侧合成列表里应该能看到Rocket。点进去预览,能看到火箭上升的动画就说明组件没问题。
最后一步是渲染成片。在终端里执行:
npx remotion render Rocket out/rocket.mp4这条命令会把Rocket合成渲染成out/rocket.mp4。渲染过程中终端会显示进度条,完成后在out目录下能找到文件。用播放器打开确认画面和时长都对。
如果渲染成功,整条链路就验证完了:Claude Code 通过 TaoToken 调用模型,读取 Remotion Skill,生成组件代码,Remotion 本地渲染出片。整个过程你只改了提示词和少量配置,没有手动拖过时间轴。
实测下来,第一次渲染可能会慢一点,因为 Remotion 要下载 Chromium 内核用于逐帧截图。后续渲染会快很多。如果卡在下载环节,检查网络,或者提前用npx remotion browser ensure把内核装好。
5. 本篇常见错排查:401、local proxy failed、reading choices 与 OAuth 报错
配置过程中最容易撞的几个报错,这里逐个对照。
401 Unauthorized。这个基本是 Key 的问题。先检查~/.claude/settings.json里的ANTHROPIC_AUTH_TOKEN是不是完整复制了,有没有多余空格。然后确认 Key 在 TaoToken 控制台里是启用状态。如果 Key 没问题,检查ANTHROPIC_BASE_URL是不是写成了https://taotoken.net/api,少写/api或写成别的路径都会 401。
local proxy failed。这个报错通常出现在 Claude Code 启动时,说明它尝试走本地代理但失败了。检查环境变量里有没有残留的HTTP_PROXY或HTTPS_PROXY指向一个不存在的本地端口。用env | grep -i proxy看一下,有的话 unset 掉再启动。另外确认 settings.json 里没有配置代理相关字段。
reading choices 报错。这个一般出现在模型返回格式不符合预期时,Claude Code 解析响应失败。常见原因是 Base URL 指向的服务返回的不是 Anthropic 兼容格式。确认你用的是 TaoToken 的 API 入口,它兼容 Anthropic 协议。如果换了别的服务,要确认它支持/v1/messages接口。
OAuth 相关报错。Claude Code 默认会尝试 OAuth 登录官方账号,如果你已经用环境变量配了第三方 Key,它可能还是会弹 OAuth 流程。解决办法是在 settings.json 里确保ANTHROPIC_AUTH_TOKEN已设置,启动时如果还提示登录,选择跳过或直接用claude --no-oauth之类的参数(具体看版本)。核心是让环境变量鉴权优先于 OAuth。
Skill 没生效。如果 Claude Code 生成的代码完全不符合 Remotion 规范,检查.claude/skills/remotion/目录是否存在,SKILL.md是否在里面。Claude Code 只在项目根目录启动时才会扫描.claude/skills,如果你在子目录启动,它读不到。
渲染报错找不到合成。检查src/Root.tsx里有没有注册对应的<Composition>,id是否和渲染命令里的一致。Remotion 的render命令第一个参数是合成 ID,大小写敏感。
npm 安装卡住。create-video和remotion的依赖比较多,国内网络下可能慢。可以换 npm 镜像源,或者用pnpm、yarn替代。装完后node_modules体积不小,确保磁盘空间够。
排障的核心思路是分层:先确认模型调用通不通(Claude Code 能否正常对话),再确认 Remotion 本身通不通(Studio 能否预览),最后确认两者结合通不通(Skill 是否被加载)。哪一层报错就查哪一层,别混在一起调。
6. 语义一致 CTA:把统一 Key 和视频技能包用起来
整条链路跑通后,日常使用就是不断改提示词、调文案结构、换视觉风格。Claude Code 负责把描述翻译成 Remotion 组件,Skill 负责保证代码规范,TaoToken 负责统一鉴权。三者各司其职,你只需要关注“视频该长什么样”。
如果你还没拿到 Key,去 TaoToken 控制台创建一个,API Keys 页面直接生成。接入文档里有各语言的调用示例,模型对话页面可以先试一下模型响应速度。长期做编码和 Agent 任务的话,Coding Plan 会更划算。
- API Keys:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
- 接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
- 模型对话:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
- Coding Plan:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
最后给一个实用技巧:把常用的视频结构写成模板提示词,存在项目里的prompts/目录下。每次做新视频,直接让 Claude Code 读取模板再填充内容,比每次从零描述快得多。Remotion 的组件也可以抽成可复用的库,比如字幕条、进度条、转场,下次直接引用。这样跑几轮之后,你的“代码化视频工作流”就真正成型了。