视频剪辑 Skill · 本地时间线 · 代码动画与素材接入
Qiaomu Cut
把分镜落实成可检查的视频工程
用真实素材、字幕时间码和场景代码组成视频,分别检查方案、预览与终稿。

- GitHub Star
- 376
- 版本
- 0.16.0
- 资料核对
- 分类
- 设计与视频
先用两段自有视频完成 8 秒首剪
第一条路径只用本地素材和原声,先核对安装目录、字幕和输出文件。通过后再增加代码动画或外部素材,避免一开始就把检索、生成、字幕对齐与渲染问题混在一起。
选一个任务,开始使用
先在新的工作目录执行安装命令,再重新加载该目录的 Claude Code。以下命令均从这个工作目录运行;qcut 工程是其中的子目录。方括号换成真实输入,已有同名工程时改用新名称并同步后续命令。
完整首用:准备 macOS、Node.js 22.20+、Git、已登录的 Claude Code,以及两段各至少 5 秒、带清晰原声的自有 MP4。本例各取开头 4 秒,所选范围应完整、不截断一句话;同时提供对应原声的字幕和用途。安装后重新加载同一项目,先运行依赖检查;若缺项,了解安装影响后补齐 ffmpeg 和字体,再粘贴提示词。
安装完整 Skill 与配套脚本
在新的工作目录执行,固定安装器与本次所读提交,只选 qiaomu-cut 并复制到 Claude Code 的项目目录。先核对安装摘要,再重新加载项目;这一步不会同时装好全部媒体依赖。
阅读作者入口与安装说明npx [email protected] add https://github.com/joeseesun/qiaomu-cut-skill/tree/549813500aab9fb89032f2fbe34178a85c43b4f2 --skill qiaomu-cut -a claude-code --copy node .claude/skills/qiaomu-cut/scripts/qcut.js setup --only ffmpeg,font --check --json先检查,再补当前任务缺的组件
确认 .claude/skills/qiaomu-cut/ 下有 SKILL.md、scripts、references 和 assets。运行 node .claude/skills/qiaomu-cut/scripts/qcut.js doctor --json,并查看具体组件结果,不能只看顶层 ok。首项本地剪辑再用 setup --only ffmpeg,font --check --json 检查所需组件;确需安装时去掉 --check。不要因未使用的 Manim 或 ListenHub 缺失而自动安装全部组件。
查看依赖安装实现把这段话发给 AI
以下是编辑设计的可执行任务示例,并非本站生成的视频案例。提示词中的产物和检查项是使用时的目标;本次只核对了文档与源码。
请使用 qiaomu-cut,先读已安装的 SKILL.md 与 references/timeline-schema.md。本次只用两段本地视频 [片段 A 路径]、[片段 B 路径] 和我提供的字幕 [文字及时间码],保留原声、使用我的品牌,不加作者关注片尾,不调用生成服务或 ASR。 从工作目录运行: node .claude/skills/qiaomu-cut/scripts/qcut.js scaffold ./local-first-cut --brief "两段自有素材的 8 秒竖屏演示" --workflow social-short --duration 8 --format 9:16 --json 将 qiaocut-ir.json 的模板分镜改为这两段实际镜头。把素材复制到这个新工程的 assets/a.mp4、assets/b.mp4,保留原文件,记录真实来源与使用范围到 assets-manifest.json 和 license-report.md。检查各有可用的视频、音频,以及从 0 秒开始至少 4 秒的内容;若这些范围会截断一句话,请先给出调整方案,不假装 8 秒要求已经满足。 自行创建 scaffold 没有生成的 timeline.json:schema 为 qiaocut.timeline.v1;output 为 1080×1920、30 fps、duration=8、loudnessLufs=-14、truePeakDb=-1.5、file=renders/final.mp4。两段 shots 分别为 video,path=assets/a.mp4 和 assets/b.mp4,in=0、duration=4、fit=containBlur、sourceAudio=true;用硬切,不加重叠转场。设置 narration={"engine":"none"}、music=false、captionSource=captions/captions.json、captions=captions/final.ass。 创建 captions 目录;把已核对的原声字幕写为 events,使用 English/Chinese 中实际需要的样式、start/end 秒数和 text,字体用 Noto Sans CJK SC。第二段字幕要平移到整片第 4 秒以后;不要从文字长度猜逐词时间。检查字幕不越过 8 秒,不遮主体或原片文字。 node .claude/skills/qiaomu-cut/scripts/qcut.js render ./local-first-cut --profile preview --json 打开实际 renders/final.preview.mp4,带声音核对裁切、主体、字幕、原声和首尾;把实际发现与修订记入 reports/editor-review.md。需要重跑时先确认仅替换生成文件,再使用 --force。审看通过后运行: node .claude/skills/qiaomu-cut/scripts/qcut.js render ./local-first-cut --profile final --json 交付工程、终稿与实际报告。确认报告 profile=final、verification.level=full、verification.ok=true、releaseReady=true;逐项处理 warnings 中的黑场/静音提示,并再次听看终稿;失败就保留错误和缺项,不以 IR、预览或终端成功字样代替完成。
检查你拿到的结果
- 预览为 local-first-cut/renders/final.preview.mp4,报告为 reports/render-report.preview.json;终稿为 renders/final.mp4,报告为 reports/render-report.json,并有默认的 reports/contact-sheet.jpg。路径都相对该工程。
- 核对完整 8 秒、两段原声、实际字幕位置与字体。通用 render 默认就是 final,因此首次明确写 preview;preview 默认不生成联系表,也没有全片黑场扫描。
- releaseReady 是该渲染路径的技术标记。素材权利、字幕含义、内容真实与画面是否好看仍需审看;既有文件通常需明确 --force 才会替换,不能把原素材当可覆盖输出。
进一步了解这个 Skill
Qiaomu Cut 是向阳乔木维护的 Agent Skill,附带 qcut 命令行工具。助手负责理解要求、选择工作流、编写分镜和工程文件,脚本负责素材接入、字幕生成、场景捕获、音视频合成与部分检查。它适合愿意保留工程文件、反复修改镜头的人;不是拖入一段文字就必然得到可发布视频的在线剪辑服务。
核心有两层文件:qiaocut-ir.json 记录意图、视觉方向和分镜,timeline.json 才引用实际本地素材、时间码、字幕和声音。scaffold 只搭出前一层及素材清单,不会替你填好时间线。HTML、SVG 和 Manim 场景已经有真实渲染入口,需先输出场景 MP4,再进入通用时间线;它们并非尚未实现的占位接口。
下面四条路径分别处理本地剪辑、英语学习混剪、代码 UI 动画和付费生成前的科普规格。已有录音可以直接使用,全文转录不能冒充精确字幕;外部生成的图片、视频或声音也必须先落盘、记录来源,再决定是否采用。最后不仅要有文件和通过的报告,还要带声音观看实际成片。
来源与核验
资料核对
依据固定提交 5498135 的文档、实际入口与相关脚本核对;未安装第三方媒体工具、执行这些剪辑任务或验证生成质量。