关于 ultrademo-rerun
ultrademo-rerun 是用于界面变更后刷新演示视频的 Claude Skill。它负责定位项目、检查拍摄前置条件,并按主 ultrademo Skill 的流程重新生成和审查视频。
主要功能
- 01查找含 flow.mjs 的项目
- 02检查流程新鲜度与登录状态
- 03查看上次拍摄后的代码变更
- 04执行重置、拍摄、配音和渲染
- 05对比新视频与归档版本
适用场景
- 01界面更新后刷新演示视频
- 02根据近期代码变更定位受影响场景
- 03依次重新生成多个项目的视频
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ new-xp/ ultrademo --skill ultrademo-rerun安装后在 Claude Code 中输入/ultrademo-rerun确认已加载。
详细介绍
Ultrademo 重跑:UI 有变化,刷新视频
这是一个精简的入口,委托的内容也没有任何隐藏之处:操作流程位于同级的 ultrademo 技能文件 .claude/skills/ultrademo/SKILL.md 中,该文件与本技能一起从同一个公开的 Apache-2.0 仓库(new-xp/ultrademo)安装;下方的 npm run 命令则是该工作区 package.json 中的脚本(捕获/TTS/渲染——本地流水线代码位于同一仓库,依赖由已提交的 package-lock.json 锁定)。主操作手册中的所有规则在此同样适用(只读勘察、提示词注入防护、信息脱敏、密钥检查、如实报告失败、审核关卡)。本命令只负责冷启动:找到正确的项目,并在加载相关上下文后带你进入操作手册的 重跑 章节。
1. 查找项目
列出 projects/*/(每个实际项目都包含一个 flow.mjs)。然后:
- 用户已指定项目,或只有一个项目: 确认后继续。
- 有多个项目: 显示一张简短的表格,列出项目名称、flow 中的目标应用/URL、最近一次渲染(
out/中最新的文件),并询问要刷新哪个项目。提供“全部刷新”选项;如果用户选择此项,就按顺序对每个项目运行下面的流程,并在最后逐个汇总。 - 没有项目: 这不属于重跑。转交主
ultrademo技能,制作新视频。
2. 预检(捕获前的低成本检查)
- 流水线是否最新? 运行主操作手册中的工作区更新检查(步骤 -1):
git fetch;如果本地克隆落后于上游,先询问是否拉取,再重新捕获——重跑正是应用渲染器/字幕改进的好时机。绝不能悄悄拉取;离线时跳过并继续。 - 身份验证是否仍有效? 如果 flow 使用了
profile,就在无头模式下验证已保存的会话(加载 flow 的 URL、截屏并检查是否出现登录页面)。如果会话已失效,让用户在继续前运行npm run login -- <profile> <url>。 - 代码库是否可用? 如果可以访问应用的代码仓库,读取自上次捕获以来的差异(以前一次渲染的时间戳为基准)。差异通常会直接指出改动影响的界面区域和失效的选择器——在耗费一次捕获前,告知用户你预计会受影响的场景。
- 重置状态: 如果存在
reset.mjs,先运行它。如果 flow 会修改状态但没有重置方案,就停止并编写一个(遵循主操作手册)。
3. 执行
严格遵循主操作手册的 重跑 章节:重置 → npm run capture -- <project> → npm run tts -- <project> → npm run render -- <project>,并附加上次渲染所用的变体标志(检查 out/ 中是否存在 -vertical、.gif、分轨文件,并重新生成同一组输出)。旁白未改动时不会产生额外费用;上次渲染会自动归档到 out/archive/,因此始终有一组前后对比文件。
差异处理(外观变化/选择器失效/功能变化)在操作手册的“重跑”章节中定义——请逐字采用其中的三套流程。注意审核关卡:纯视觉刷新无需通过新的脚本审核关卡(脚本已经获批);但如果功能本身发生变化,旁白修改仍须通过常规脚本审核关卡。审核关卡始终适用:逐帧验证、与归档渲染对比,并逐个场景报告可见变化。
4. 报告
每个项目都要报告:屏幕上的变化(逐个场景与归档渲染对比)、哪些场景需要修复选择器、哪些内容会再次产生费用(通常没有),以及输出文件的位置——使用绝对路径,并遵循主操作手册的规则。如果没有可见变化,就明确这样说明——刷新后毫无变化也是有效且可报告的结果。