访谈灵魂剪辑
把访谈素材变成“有单一主题、有情绪、有来源证据、能回剪”的短视频剪辑稿。把 AI 当作选材与结构搭档,不把它当作改写作者。
守住七条硬规则
- 保持原始媒体和原始逐字稿只读;所有产物写入素材目录下的
edit/。 - 焊死红线:不改一句话、不补录、不转述、不意译;只做取舍、重排、拼接、切段、节奏编排。
- 每个成片口播片段必须逐字存在于源逐字稿。相似、概括、润色后的句子一律判为失败。
- 把转写纠错和剪辑分开。怀疑 ASR 错字时标记
[待复听]与时间码,不静默改字。 - 先确认主题与灵魂四问,再产出完整剪辑稿;先确认剪辑策略,再执行真实视频切割。
- 不承诺一次生成爆款。每一轮必须产生可判断的改进或明确停止理由,避免机械重复同一句提示词。
- 不让模型心算或自报字数。剪辑稿的内容单位必须由
audit_cut.py统计,最终口径以 WPS/Word 和实际试听为准。
识别输入并建立项目
输入是视频或音频
- 用
ffprobe盘点文件名、时长和音视频轨,不修改源文件。 - 优先调用已安装的
$local-transcribe,或直接运行:
v2t "/absolute/path/interview.mp4" "/absolute/path/edit/transcripts" --spk
多人访谈使用 --spk。保留 .txt 用于逐字核验,保留 .srt / .json 用于时间码定位。若 v2t 不可用,再选择宿主已有的本地转写能力;未经用户同意,不把未发布访谈上传到云端服务。
输入已经是逐字稿
把用户指定文件视为唯一文字源。若没有时间码,可以完成主题与文稿规划,但在剪辑单中明确标记“尚不能精确回剪”,不得伪造时间码。
固定产物目录
edit/
├── project.md
├── transcripts/ # 原始转写产物,不覆盖
├── 01-theme-map.md
├── 02-candidate-cut.md
├── 03-source-audit.md
├── 04-final-cut.md
├── 04-final-cut-pure.txt
├── 05-hooks-endings.md
└── 06-edit-sheet.md
在 project.md 记录:源文件、目标平台、目标受众、最终时长、粗稿预算、已选主题、灵魂四问、当前门槛、用户已批准决策和待复听项。每轮只推进一个门槛。
按门槛推进
门槛 0:确认任务边界
确认目标平台、最终时长、是否多人、是否需要直接剪成视频。用户未指定时,默认精品短视频最终 2–3 分钟,候选剪辑稿约为最终目标的 1.5–2 倍,并明确这是暂定值。预算可按中文口播每分钟约 280–300 个内容单位换算,但生成剪辑稿后必须用脚本统计,不能用模型估数;最终以 WPS/Word 和实际试听为准。
门槛 1:规划主题与灵魂四问
完整阅读逐字稿后生成 01-theme-map.md。每个候选主题必须包含:
- 一句话主题与核心冲突;
- 灵魂四问:对谁说、想说什么、希望对谁产生什么影响、对立面是谁;
- 支撑该主题的原文片段或时间范围;
- 情绪峰值、反常识点、具体细节和潜在钩子;
- 单条击穿的价值与跑偏风险。
只推荐 3–7 个彼此真正不同的主题。不要把同一观点换标题凑数。请用户选定一个主题;未获选择时,不批量生成所有主题的完整剪辑稿。
阅读 editorial-rubric.md 理解灵魂四问和主题评分。
门槛 2:搭出冗余候选稿
围绕已选主题制作 02-candidate-cut.md。最终要 3 分钟时,可先给约 5 分钟;最终要约 800 字时,可先给约 1200 字。冗余用于继续删减,不用于塞入旁枝。
把每个连续原文片段写成独立 VERBATIM 块;需要重排时只移动整块。不要把两个不连续位置的半句话伪装成一个连续片段。严格采用 cut-script-format.md 的格式。
候选稿生成后立即运行 audit_cut.py。原文核验失败就先修复,不把错误带入复审;内容单位偏离预算时,只能继续取舍原句,不能靠改写凑数。
门槛 3:三轮有目的的复审
按顺序复审,不要三轮都只问“还能优化吗”:
- 删减轮:删除与主题、受众、影响或对立面无关的内容,合并重复论据。
- 压力测试轮:回答“这个版本为什么可能没有流量”,检查钩子过慢、冲突不清、信息泛、缺细节、情绪不足、结论透支等问题;然后仅用原句修正。
- 结构终审轮:按“环环相扣,从一而终”检查段落目的、逻辑关系、代入顺序、细节画面、主线偏离和灵魂四问服务度。
每轮列出“保留 / 删除 / 调序 / 原因”,再给更新后的块顺序。禁止用润色来掩盖结构问题。若一轮没有发现新问题,说明证据并停止迭代。
门槛 4:确定钩子与结尾
内容主体稳定后生成 05-hooks-endings.md:
- 从源逐字稿中找
3–8个开头候选,标注片段 ID、停留力、主题一致性、上下文误导风险; - 允许“金句集合”作为方案,但每句仍须来自原文,并避免拼出受访者未表达的新意思;
- 从原文中找适合收束、悬念、期待下一集或评论互动的结尾;
- 若原文没有口播 CTA,只能另列“非口播屏幕字幕 / 发布文案建议”,不得混入成片口播逐字稿。
门槛 5:逐字核验与字数核验
运行:
python3 "/path/to/interview-soul-editor/scripts/audit_cut.py" \
--source "/path/to/edit/transcripts/interview.txt" \
--cut "/path/to/edit/04-final-cut.md" \
--target-units 900 \
--pure-out "/path/to/edit/04-final-cut-pure.txt"
只有 missing_verbatim_blocks = 0 才能把文稿称为“已通过原文核验”。脚本会按中文汉字加英文/数字词统计内容单位,并给出 280–300 单位/分钟的估算;不要把它说成 WPS 的精确字数口径。
对 [待复听] 项回到原视频确认后,再更新源逐字稿的校正版或保留原 ASR 文本并添加复听注释。不要只在剪辑稿中悄悄改字。
门槛 6:生成可回剪的剪辑单
06-edit-sheet.md 每行至少包含:输出顺序、片段 ID、源文件、入点、出点、逐字原句、结构角色、情绪/动作备注、前后衔接。优先保留哭泣、笑声、停顿、语气增强和金句后的反应尾巴;时间戳有漂移时给剪辑师留出试听余量。
在正式抽取片段前,再回原稿搜索每个原句:一是确认句子存在,二是补回 AI 漏掉但更有力的原文。将新增候选重新走复审与核验,不绕过门槛。
多模型 PK
用户提供多个 AI 版本时,把它们都还原为相同 VERBATIM 块格式,先淘汰不来自原文的句子,再按 editorial-rubric.md 盲评。保留每个版本真正更强的块并重新核验。没有实际调用多个模型的工具时,不虚构“多模型一致认为”。
真实视频执行边界
本技能默认交付“已核验剪辑稿 + 钩子结尾候选 + 时间码剪辑单”,不自动改动画面。若用户明确要求直接产出视频:
- 优先复用
browser-use/video-use的 transcript → EDL → render → self-eval 管线; - DaVinci Resolve 素材库、搜索和 EDL/XML 工作流可评估 StoryToolkitAI;
- PR / 剪映联动时,把
06-edit-sheet.md交给人工剪辑,先统一光感、构图和人物位置,再按顺序抽片段; - 执行任何真实切割前,先让用户批准文字版剪辑策略。
阅读 open-source-reuse.md 了解已核对的 GitHub/npm 方案和采用边界。
完成定义
只有同时满足以下条件才报告完成:主题与灵魂四问已确认;成片口播全部来自原文;字数/时长接近目标;终审主线通过;钩子和结尾已选择或列为待选;每个片段能定位回源素材;所有待复听项已显式列出。把“可能有传播力”与“保证爆款”严格区分。