找不到高颜值视频素材?我用Codex与Claude Code跑通了HyperFrames,效果惊艳!
1. 为什么我盯上了 HyperFrames素材荒的真实解法做内容的人大概都经历过这种时刻脚本写完了配音录好了结果卡在画面上——找不到合适的视频素材。免费库翻到底要么是那种一眼假的商务风要么是分辨率不够、水印去不掉。买会员吧一个月几十上百用到的可能就两三个片段。更麻烦的是你想要的画面往往很具体比如「一个深色背景上代码逐行浮现右下角有个进度条在跑」这种素材在现成库里基本找不到。HyperFrames by HeyGen 这个工具解决的正是这个问题。它做的事情说起来很朴素你把想要的画面用自然语言描述出来它让 AI 生成对应的 HTML/CSS/JS 页面然后用无头浏览器逐帧截图最后用 FFmpeg 合成 mp4。换句话说你描述的不是「找一段视频」而是「做一个视频」——每一帧的布局、动画、字幕、转场全部由代码控制。这意味着只要你能描述清楚就能得到完全定制的素材而且分辨率、时长、比例都可以自己定。它适合谁我梳理了一下大概三类人用起来最顺手。第一类是自媒体创作者尤其是做知识科普、工具测评、编程教学的需要大量「界面演示 文字动画」类的画面HyperFrames 生成的正好是这种风格。第二类是做产品宣传视频的开发者想快速出一版 demo 视频给团队看不想等设计师排期。第三类是纯粹想玩 AI 工作流的人把 Codex 或 Claude Code 当作「视频导演」自己只负责提需求和验收。我自己的场景很典型想给一个编程工具做一条 30 秒的竖屏短视频要求是深色主题、代码高亮、有节奏感。以前这种需求要么找模板改要么自己用剪辑软件硬拼前者不贴合后者费时间。用 HyperFrames 跑通之后从写提示词到拿到成片全程没打开过剪辑软件。这篇文章就把两条路线——Codex 和 Claude Code——的完整配置、踩坑和验证过程写清楚你跟着做就能复现。需要提前说明的是HyperFrames 本身是本地运行的工具不依赖 HeyGen 的云端渲染服务所以你的素材和提示词都在自己机器上处理。这一点对在意内容隐私的人比较友好。下面进入具体操作。2. 前置准备TaoToken 接入与 Codex auth.json 配置在跑 HyperFrames 之前得先把「驱动它的 AI」接好。Codex 和 Claude Code 都需要一个能调用模型的入口我用的是 TaoToken 的 API 服务它兼容 OpenAI 和 Anthropic 的接口格式配置起来比较直接。官网地址是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentAPI 端点是 https://taotoken.net/api注意 API 地址后面不加任何查询参数。先说 Codex 这条线。Codex 的配置文件是auth.json通常放在用户目录下的.codex文件夹里。如果你用的是 Codex APP 桌面端它会在首次启动时引导你登录但如果你想用自己的 API Key 走 TaoToken就需要手动写这个文件。路径在 macOS/Linux 上是~/.codex/auth.jsonWindows 上是%USERPROFILE%\.codex\auth.json。文件内容是一个 JSON 对象核心三个字段Base URL、API Key、Model ID。我实测下来这样写{ base_url: https://taotoken.net/api, api_key: sk-你的TaoToken密钥, model: gpt-5-codex }这里有个细节要注意base_url填的是https://taotoken.net/api不要在后面加/v1或者斜杠Codex 内部会自己拼接路径。model字段填你实际要用的模型 IDTaoToken 的模型列表可以在控制台里看到。API Key 在 https://taotoken.net/api-keys 这个页面生成生成后复制粘贴到api_key字段里。Claude Code 这条线的配置方式不太一样。Claude Code 读取的是环境变量或者~/.claude/settings.json。我推荐用 settings 文件因为环境变量在切换项目时容易忘。文件路径是~/.claude/settings.json内容如下{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的TaoToken密钥, ANTHROPIC_MODEL: claude-sonnet-4-5 } }注意 Claude Code 用的环境变量名是ANTHROPIC_BASE_URL和ANTHROPIC_API_KEY不是OPENAI_开头的那套。ANTHROPIC_MODEL填你要用的 Claude 模型 ID。如果你同时装了 Codex 和 Claude Code两个配置文件互不干扰各读各的。配置完之后怎么验证Codex 这边打开终端跑codex --version确认 CLI 装好了然后跑一个最简单的对话测试比如codex print hello如果返回正常说明 Key 和 Base URL 都通了。Claude Code 这边跑claude --version然后claude say hi能返回内容就说明配置生效。如果报 401大概率是 Key 复制错了或者 Base URL 多了斜杠如果报连接超时检查一下网络能不能访问taotoken.net。还有一个容易忽略的点Codex 和 Claude Code 对模型 ID 的校验比较严格如果你填了一个不存在的模型名它不会在配置阶段报错而是在实际请求时返回model not found。所以填之前最好在 TaoToken 控制台的模型列表里确认一下准确的 ID 拼写。我一开始把claude-sonnet-4-5写成了claude-sonnet-4.5结果请求一直失败排查了半天才发现是点号的问题。3. 可复制配置HyperFrames 安装与 Claude Code skill 三件套AI 入口配好之后接下来装 HyperFrames 本体。这里分两条路Codex APP 走应用内插件菜单Claude Code 走命令行本地装 skill。两条路的底层是同一套 HyperFrames 工具链只是触发方式不同。先说 Codex APP 这条路因为它最简单。打开 Codex APP在左侧边栏找到插件菜单图标通常是一个拼图块搜索HyperFrames by HeyGen点击安装。装完之后不需要重启 App也不需要重载会话下一句对话就能直接调用。我实测下来从点击安装到能在对话里触发大概十几秒。安装完成后你在对话里输入类似「用 HyperFrames 生成一个 30 秒的代码演示视频」这样的指令Codex 就会自动走完整流程初始化项目、写 HTML/CSS/GSAP 动画、lint 检查、render 渲染最后输出 mp4。Claude Code 这条路稍微绕一点因为 Claude Code 官方还没有集中的插件市场HyperFrames 的 skill 没法在 App 内一键装只能命令行本地装。在你要创作视频的项目目录下跑这条命令GIT_LFS_SKIP_SMUDGE1 npx skills add heygen-com/hyperframes前面那个GIT_LFS_SKIP_SMUDGE1环境变量一定要带上。HyperFrames 仓库里有大概 240MB 的 mp4 测试基线文件走 Git LFS使用方根本用不到那些文件不带这个环境变量会卡在拉 LFS 那一步等半天没反应。我第一次跑的时候没加等了五分钟以为网断了后来加上这个变量十几秒就装完了。跑完这条命令会把 15 个 skill 全部装进当前项目的.agents/skills/目录下。注意这是项目级的只对当前目录生效如果你想装到全局位置加一个-g参数。装完之后 Claude Code 就能立即识别到这些 skill你在对话里提 HyperFrames 相关的需求它会自动调用对应的 skill。装完 skill 之后还需要确认基础环境。HyperFrames 依赖三样东西Node.js ≥ 22、FFmpeg含 ffprobe、Chrome Headless Shell。Node 版本低了会在合成器阶段直接报错这个坑我踩过——一开始用 Node 20渲染到一半报SyntaxError: Unexpected token升级到 Node 22 就好了。FFmpeg 用来做视频合成Chrome Headless Shell 是 HyperFrames 自己管理的那一份84MB不会动你系统里的 Chrome。可以用这张表逐项检查依赖项检查命令macOS 安装命令Node.js ≥ 22node -vbrew install node22FFmpegffmpeg -versionbrew install ffmpegChrome Headless Shellnpx hyperframes browser ensure自动下载环境装好后跑一遍自检npx hyperframes doctor这个命令会输出版本、Node 版本、CPU、内存、磁盘、FFmpeg、Chrome 的检查结果。我第一次跑的时候Memory 那一行是黄字提醒Low memory — renders may fail因为我那台 16GB 的 Mac 当时开着浏览器和编辑器剩余内存只有 0.3GB。后来关掉一些后台应用留出 2GB 以上内存再跑 doctor 就全绿了。如果你也看到内存告警建议先关一波后台应用再渲染不然容易 OOM。Chrome 那一行如果显示Not found跑npx hyperframes browser ensure补一下就行它会自动下载 HyperFrames 自管理的那份 Chrome Headless Shell。这一步不需要你手动去装 Chrome也不影响你系统里已有的浏览器。4. 验证请求从提示词到 30 秒成片的完整动作环境就绪之后就可以跑第一条视频了。我建议先用 Codex APP 跑一遍因为它的交互最直观适合建立信心。打开 Codex APP在对话窗口里输入提示词。提示词这一步我建议偷个懒——直接问网页版 GPT 要一份因为 HyperFrames 对画面节奏、字幕、转场的描述很吃细节自己手写大概率会漏。我当时的做法是问 GPT「帮我生成一个使用 HyperFrames by HeyGen 生成一个 Codex 基础命令短视频的提示词明亮简洁的风格帮我优化好一点。」GPT 会输出一整段排版好的提示词把里面的「Codex 基础命令」和「明亮简洁的风格」换成你自己想做的题材和风格关键词剩下的它都帮你写好了。完整提示词太长这里不复制核心是让 AI 帮你把画面节奏和转场描述补齐。把提示词复制到 Codex 的聊天窗口按下回车。Codex 会自动跑 HyperFrames 全流程init 项目 → 写 HTML/CSS/GSAP → lint → render。整套下来大概 10 多分钟输出一条 30 秒、1080×1920 的竖屏 mp4。我第一次看到成片的时候确实被惊艳到了——节奏、转场、颜色搭配都没崩对一般自媒体创作者来说这个素材已经够用。Claude Code 这条路的操作类似但触发方式不同。在装好 skill 的项目目录下打开 Claude Code把同样的提示词丢进去。Claude Code 会识别到 HyperFrames 相关的 skill然后走同样的流程。我实测下来Claude Code 跑完整流程比 Codex 快了几分钟也是输出 30 秒的视频。这里有一个验证请求是否成功的具体动作渲染完成后HyperFrames 会在项目目录下生成一个output文件夹里面是 mp4 文件。你可以用ffprobe检查视频信息ffprobe -v error -show_entries formatduration,size -show_entries streamwidth,height,codec_name -of defaultnoprint_wrappers1 output/video.mp4如果返回的 duration 是 30 左右、width 是 1080、height 是 1920、codec_name 是 h264说明渲染成功。如果 duration 是 0 或者文件大小只有几 KB说明渲染中途失败了需要看日志排查。还有一个验证点是画面内容。我建议把两条路线生成的视频都看一遍对比一下。Codex 生成的那条节奏更稳Claude Code 那条在某些页面的视觉表达上更出彩——尤其是开头的处理Claude Code 写出来的 HTML 排版我更偏好。但在一些页面文字的细节处理上Claude 生成的没有 GPT 生成的那么精细。这两个都是只跑了一遍的结果Claude Code 跑完还给了一些优化建议如果根据建议再跑一轮效果应该会更好。如果你想让 Claude Code 根据建议再跑一轮直接在对话里说「根据你刚才的建议优化一版重新渲染」它会自动调整 HTML/CSS 然后重新走 render 流程。这个过程不需要你手动改代码全程对话驱动。5. 常见报错排查401、local proxy failed、reading choices、OAuth跑 HyperFrames 的过程中我遇到和收集到的报错大概集中在四类。下面按报错原文对照排查你遇到的时候可以直接对号入座。第一类是401 Unauthorized。这个通常出现在 Codex 或 Claude Code 请求模型的时候。原因有三个可能API Key 复制错了、Base URL 多了斜杠、或者 Key 过期了。排查方法是先检查auth.json或settings.json里的base_url是不是https://taotoken.net/api注意结尾没有斜杠然后检查api_key字段是不是完整的sk-开头字符串有没有多余空格。如果都正常去 TaoToken 控制台确认一下 Key 的状态。第二类是local proxy failed。这个报错一般出现在 Claude Code 启动阶段意思是它尝试走本地代理但失败了。原因通常是环境变量里残留了HTTP_PROXY或HTTPS_PROXY的设置或者ANTHROPIC_BASE_URL填了一个不可达的地址。排查方法是先echo $ANTHROPIC_BASE_URL确认地址正确然后unset HTTP_PROXY HTTPS_PROXY清掉代理变量再重启 Claude Code。第三类是reading choices相关的报错完整信息通常是Error reading choices: unexpected end of JSON input或者reading choices of undefined。这个出现在模型返回的响应格式不符合预期的时候。原因可能是模型 ID 填错了导致服务端返回了一个错误结构而客户端还在按正常结构解析。排查方法是确认model字段填的是 TaoToken 支持的模型 ID不要自己编。我一开始把claude-sonnet-4-5写成claude-sonnet-4.5就报了这个错。第四类是OAuth相关的报错比如OAuth token expired或OAuth flow failed。这个通常出现在 Codex APP 桌面端因为它默认走 OAuth 登录流程。如果你已经手动配了auth.json用 API Key但 App 还在尝试 OAuth就会冲突。解决办法是在 Codex APP 的设置里找到账号相关选项切换为「使用 API Key」模式或者直接删掉 OAuth 的缓存文件重新登录。除了这四类还有一个环境层面的坑Node 版本低于 22。这个不会在启动时报错而是在渲染到合成器阶段报SyntaxError。排查方法是node -v确认版本低于 22 就升级。另外内存不足导致的 OOM 也值得注意表现是渲染中途进程被杀日志里能看到JavaScript heap out of memory。解决办法是关掉后台应用留出 2GB 以上内存或者用NODE_OPTIONS--max-old-space-size4096提高 Node 的内存上限。如果你遇到的是Chrome not found跑npx hyperframes browser ensure就行。如果是FFmpeg not found检查ffmpeg -version能不能正常输出不能的话重新装一下 FFmpeg。这两个依赖问题都比较直接补装即可。6. 两条路线怎么选以及我踩过的那些坑跑完两条路线之后我的结论是Codex APP 适合想快速上手、不想碰命令行的人插件菜单点一下就能跑全程界面操作。Claude Code 适合已经在用 Claude Code 做开发、想把它扩展到视频生成的人虽然要手动装 skill但装完之后和现有工作流是无缝的。从生成效果看同主题对照下Codex 的节奏更稳Claude Code 在某些页面的视觉表达上更出彩。但这不是绝对的因为只跑了一遍变量很多——提示词的细微差别、模型版本、甚至渲染时的内存状态都可能影响结果。我的建议是两条都试一遍然后挑你更喜欢的那条继续用。我踩过的坑里最值得说的是三个。第一个是GIT_LFS_SKIP_SMUDGE1这个环境变量不带的话会卡在拉 LFS 文件那一步等很久没反应容易误以为网络问题。第二个是 Node 版本低于 22 会在渲染阶段报错而且报错信息不直接指向 Node 版本容易排查偏。第三个是内存16GB 的机器如果同时开着浏览器和编辑器剩余内存可能不够渲染doctor 会黄字提醒最好留 2GB 以上。如果你还没配 TaoToken 的 API Key可以去 https://taotoken.net/api-keys 生成一个然后按第 2 节的配置片段填到 Codex 的auth.json或 Claude Code 的settings.json里。接入文档在 https://taotoken.net/doc 可以查到更详细的参数说明。想先验证模型通不通可以用模型对话页面 https://taotoken.net/chat 发一条消息测试。如果你打算长期用 Codex 或 Claude Code 做视频生成Coding Plan 页面 https://taotoken.net/coding-plan 有更划算的套餐说明。最后说一个实用技巧提示词这一步不要自己硬写。HyperFrames 对画面节奏、字幕出现时机、转场方式的描述很吃细节自己写容易漏。直接问 GPT 或者 Claude 要一份然后改主题和风格关键词效率高很多。我跑第一条视频的时候提示词就是 GPT 帮我写的成片效果比我预想的好。你跟着这个流程走一遍应该也能跑出自己的第一条 HyperFrames 视频。