ra-video-wash-pipeline

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Video Wash Pipeline

视频洗稿流水线

Goal

目标

Turn a source video link or local video file into a production-ready washed script: extract the faithful transcript, rewrite it through the established ra-洗稿 stack, then queue the approved script into
01-内容生产/视频工作台/待制作/
as the binding production contract. Video production is a separate stage picked up from that queue (normally by the production host through
ra-video-production-director
); continue into production in the same session only when the user explicitly asks.
This skill is an orchestrator. Do not duplicate the detailed rules from
ra-逐字稿提取skill
,
ra-洗稿
,
ra-人话
,
dbs-*
, or
ra-video-production-director
; load and follow those skills at the step where they own the work.
将源视频链接或本地视频文件转换为可直接投入制作的洗稿脚本:提取忠实完整的逐字稿,通过既有的
ra-洗稿
流程栈进行改写,再将审核通过的脚本排入
01-内容生产/视频工作台/待制作/
,并以此作为约束后续制作的契约。视频制作是单独的阶段,通常由制作宿主通过
ra-video-production-director
从该队列接取;只有在用户明确要求时,才在同一会话中继续进入制作阶段。
本 skill 是编排器。不要重复
ra-逐字稿提取skill
、
ra-洗稿
、
ra-人话
、
dbs-*
或
ra-video-production-director
中的详细规则;应在相应工作所属的步骤加载并遵循这些 skill。

Source Privacy Boundary

来源隐私边界

When this skill is used for video washing, the source transcript is an internal working artifact, not a deliverable.
Hard rules:
  • Do not print, quote, summarize, or return the source video's transcript in the conversation.
  • Do not include the source video title, source URL, source transcript path, or source phrases in the final answer or handoff file unless the user explicitly asks for transcript extraction.
  • If a transcript tool normally prints the full transcript, override it with its internal/private mode or capture the output without showing it.
  • Store source transcripts only in a temporary/internal location when needed for rewriting. Delete the source transcript after the rewritten script and checks are produced, unless the user explicitly asks to keep it.
  • Deliver only the new script, rewritten hook, quality checks, production brief, and source-free factual corrections.
当本 skill 用于视频洗稿时,源逐字稿属于内部工作产物,而不是交付内容。
硬性规则:
  • 不要在对话中打印、引用、总结或返回源视频的逐字稿。
  • 除非用户明确要求提取逐字稿,否则不要在最终答复或交接文件中包含源视频标题、源 URL、源逐字稿路径或源文案片段。
  • 如果逐字稿工具通常会打印完整逐字稿,应改用其 internal/private 模式,或在不展示输出的情况下捕获输出。
  • 仅在改写确有需要时,将源逐字稿存储在临时/内部位置。除非用户明确要求保留,否则在改写脚本和检查结果生成后删除源逐字稿。
  • 仅交付新脚本、改写后的开场钩子、质量检查、制作简报,以及不含来源信息的事实修正。

Route

路由

Use this skill when the input is a video URL or local video file and the user wants a rewritten or newly produced video.
Do not use this skill for narrower tasks:
  • transcript only -> use
    ra-逐字稿提取skill
  • supplied transcript or rough text only -> use
    ra-洗稿
  • finished script or storyboard only -> use
    ra-video-production-director
  • fact research without video production -> use the relevant research or writing workflow
If the request says
视频洗稿
,
二创成新视频
,
洗稿并制作视频
, or similar, assume extract -> rewrite -> handoff queue. Continue into same-session production only when the user explicitly says
直接制作
,
直接出片
, or
一条龙
. Narrow the scope when the user explicitly asks for
只要逐字稿
,
只要脚本
,
先不要生成视频
, or
只分析
.
当输入为视频 URL 或本地视频文件,且用户希望改写视频或制作新视频时,使用本 skill。
不要将本 skill 用于范围更窄的任务:
  • 仅提取逐字稿 → 使用
    ra-逐字稿提取skill
  • 仅提供逐字稿或粗略文案 → 使用
    ra-洗稿
  • 仅提供成品脚本或分镜 → 使用
    ra-video-production-director
  • 仅进行事实研究且不制作视频 → 使用相关的研究或写作工作流
如果请求中包含
视频洗稿
、
二创成新视频
、
洗稿并制作视频
或类似表述,默认按“提取 → 改写 → 交接队列”执行。只有当用户明确说出
直接制作
、
直接出片
或
一条龙
时,才在同一会话中继续进行制作。当用户明确要求
只要逐字稿
、
只要脚本
、
先不要生成视频
或
只分析
时,缩小任务范围。

Workflow

工作流

1. Intake

1. 需求收集

Capture the minimum decisions:
  • source link or local file
  • target platform and ratio; default to Douyin horizontal
    16:9
    landscape video when unspecified
  • expected scope: script-only, 10-second sample, or full video
  • visual direction; default to the white-first Xiaohei system in
    ra-video-production-director
  • if the user mentions 小黑配图, Ian 小黑, or a specific illustration skill, preserve that as a required production constraint rather than a loose style preference
  • narration; default to the user's cloned voice when full AI narration is needed and no source audio should be reused
Ask only when the answer changes the execution path. Otherwise choose the conservative default and proceed.
查重硬门:拿到源链接后、提取逐字稿前,先运行
python3 automation/scripts/wash_ledger.py check "<url>"
。退出码 3 = 已洗过:停下,把台账记录(时间、选题卡、产出去向)报给用户,用户明确确认重洗才继续;退出码 4 = 曾标记不做或标题疑似:提示一句后继续。查重结果只在会话里说,不写进任何产物。
收集最少必要的信息:
  • 源链接或本地文件
  • 目标平台和画幅;未指定时,默认使用抖音横屏
    16:9
    横向视频
  • 预期范围:仅脚本、10 秒样片或完整视频
  • 视觉方向;默认采用
    ra-video-production-director
    中白底优先的小黑视觉体系
  • 如果用户提到小黑配图、Ian 小黑或某个指定的 illustration skill,应将其保留为必需的制作约束,而不是宽松的样式偏好
  • 旁白;当需要完整的 AI 旁白且不应复用源音频时,默认使用用户克隆的声音
仅在答案会改变执行路径时提问。否则选择保守的默认值并继续。
查重硬门:拿到源链接后、提取逐字稿前,先运行
python3 automation/scripts/wash_ledger.py check "<url>"
。退出码 3 = 已洗过:停下,把台账记录(时间、选题卡、产出去向)报给用户,用户明确确认重洗才继续;退出码 4 = 曾标记不做或标题疑似重复:提示一句后继续。查重结果只在会话里说,不写进任何产物。

2. Extract Transcript

2. 提取逐字稿

Invoke
ra-逐字稿提取skill
first, but use it as an internal dependency.
For Douyin/Xiaohongshu URLs, prefer:
bash
python3 "$ZT_HOME/scripts/transcript.py" "<url>" --internal --output-dir "<temporary_internal_dir>"
Required outcomes:
  • platform, duration, segment count, and estimated wait time after probe
  • complete transcript text available to the agent for rewriting
  • no source transcript, source title, source URL, source phrases, or source transcript path exposed to the user
If extraction fails because the platform blocks access or the link is private, stop and ask for a local file, public link, or exported captions. Do not continue from a guessed transcript.
首先调用
ra-逐字稿提取skill
,但应将其作为内部依赖项使用。
对于抖音/小红书 URL,优先使用:
bash
python3 "$ZT_HOME/scripts/transcript.py" "<url>" --internal --output-dir "<temporary_internal_dir>"
必须实现以下结果:
  • 探测后提供平台、时长、分段数量和预计等待时间
  • Agent 可获取完整的逐字稿文本用于改写
  • 不向用户暴露源逐字稿、源标题、源 URL、源文案片段或源逐字稿路径
如果因平台阻止访问或链接为私密内容而提取失败,停止流程并要求用户提供本地文件、公开链接或导出的字幕。不要基于猜测的逐字稿继续执行。

3. Rewrite Script

3. 改写脚本

Pass the complete transcript and user goal into
ra-洗稿
.
Require
ra-洗稿
to run its default stack:
  1. ra-人话
    rewrite
  2. dbs-ai-check
    diagnostic pass
  3. dbs-hook
    first-five-seconds pass
  4. dbs-resonate
    resonance pass
  5. ra-video-title
    candidates pass: 8-12 candidates with a Top 3 recommendation into the handoff 标题候选 section (no final title — the user picks manually at publish time)
  6. dbs-xhs-title
    only when Xiaohongshu 图文/笔记 titles are in scope
Expected rewrite output:
  • new spoken script or逐字稿
  • final hook and second line
  • publish-title candidates with a Top 3 recommendation (
    ra-video-title
    )
  • flow checks for AI flavor, opening, resonance, and Xiaohongshu title if relevant
  • handoff contract content: frontmatter fields plus per-segment Xiaohei illustration intent, on-page info components, captions/motion notes, and archive slug
If the user asks for
只要脚本
, stop here and return the rewritten script and flow checks only. Do not return the source transcript path.
将完整逐字稿和用户目标传入
ra-洗稿
。
要求
ra-洗稿
运行其默认流程栈:
  1. ra-人话
    改写
  2. dbs-ai-check
    诊断检查
  3. dbs-hook
    前五秒检查
  4. dbs-resonate
    共鸣检查
  5. ra-video-title
    候选检查:生成 8-12 个候选,并将 Top 3 推荐写入交接稿的标题候选部分(不选定最终标题——用户将在发布时手动选择)
  6. 仅当小红书图文/笔记标题在任务范围内时,才运行
    dbs-xhs-title
预期的改写输出:
  • 新的口播稿或逐字稿
  • 最终开场钩子和第二句
  • 发布标题候选及 Top 3 推荐(
    ra-video-title
    )
  • 针对 AI 味、开头、共鸣以及相关时的小红书标题进行流程检查
  • 交接契约内容:frontmatter 字段,以及各分段的小黑插图意图、画面信息组件、字幕/动效说明和归档 slug
如果用户要求
只要脚本
,则在此停止,仅返回改写后的脚本和流程检查结果。不要返回源逐字稿路径。

4. Queue The Handoff (default endpoint)

4. 排入交接队列(默认终点)

Require
ra-洗稿
to finish with its default endpoint: a handoff file in
01-内容生产/视频工作台/待制作/YYYY-MM-DD-<主题slug>/交接稿.md
following
01-内容生产/视频工作台/_交接模板.md
(create the project folder first; the handoff lives inside).
Before stopping, verify:
  • the handoff file exists and its frontmatter contract is complete (
    status: 待制作
    , platform, ratio defaulting to
    16:9
    ,
    duration_target_s
    ,
    word_count
    ,
    voice: pluvio-indextts2-calm-v1
    ,
    voice_provider: indextts2-local
    ,
    captions: asr-word-timestamps
    ,
    caption_style: anchor-dark
    ,
    visual
    ,
    illustration_skill
    )
  • the 标题候选 section holds 8-12 candidates with a Top 3 recommendation from
    ra-video-title
    ; no final title is picked — the user selects manually later
  • the script body is split into segments with per-segment Xiaohei intent and on-page info components
  • no source URL, source title, source transcript, or source transcript path appears anywhere in the file
  • the wash ledger entry has been added(台账登记完成才算收尾)
台账登记(硬门):交接稿与选题卡落地后,登记洗稿台账——优先
python3 automation/scripts/wash_ledger.py add --status washed --from-source-json "<.internal/<日期>-<平台>-download/…source.json>" --card "<选题卡相对路径>" --handoff "<交接稿相对路径>"
(本流水线下载源视频时一定有这个文件);未走下载、只有链接时用
--url "<源URL>" --title "<源标题>"
;来自云端选题推荐时加
--work-id <云端作品id>
。用户看完源决定不洗时,也要
add --status skipped --url "<源URL>" --note "<原因>"
,防止之后重复推荐。
Then stop and return the handoff file path plus the script and flow checks. Production is picked up from the queue as a separate stage.
要求
ra-洗稿
以其默认终点结束:在
01-内容生产/视频工作台/待制作/YYYY-MM-DD-<主题slug>/交接稿.md
中生成交接文件,并遵循
01-内容生产/视频工作台/_交接模板.md
(先创建项目文件夹;交接稿位于其中)。
停止前验证:
  • 交接文件存在,且其 frontmatter 契约完整(
    status: 待制作
    、platform、ratio 默认
    16:9
    、
    duration_target_s
    、
    word_count
    、
    voice: pluvio-indextts2-calm-v1
    、
    voice_provider: indextts2-local
    、
    captions: asr-word-timestamps
    、
    caption_style: anchor-dark
    、
    visual
    、
    illustration_skill
    )
  • 标题候选部分包含 8-12 个由
    ra-video-title
    生成的候选及 Top 3 推荐;未选定最终标题——用户稍后手动选择
  • 脚本正文已按分段拆分,并包含各分段的小黑插图意图和画面信息组件
  • 文件任何位置均未出现源 URL、源标题、源逐字稿或源逐字稿路径
  • 已添加洗稿台账记录(台账登记完成才算收尾)
台账登记(硬门):交接稿与选题卡落地后,登记洗稿台账——优先运行
python3 automation/scripts/wash_ledger.py add --status washed --from-source-json "<.internal/<日期>-<平台>-download/…source.json>" --card "<选题卡相对路径>" --handoff "<交接稿相对路径>"
(本流水线下载源视频时一定存在该文件);未走下载、只有链接时,使用
--url "<源URL>" --title "<源标题>"
;来自云端选题推荐时,添加
--work-id <云端作品id>
。用户看完源决定不洗时,也要运行
add --status skipped --url "<源URL>" --note "<原因>"
,防止之后重复推荐。
然后停止,并返回交接文件路径、脚本和流程检查结果。
制作阶段作为独立阶段从队列接取。

5. Produce Video (only on explicit request)

5. 制作视频(仅在明确要求时)

Only when the user explicitly said
直接制作
,
直接出片
, or
一条龙
: invoke
ra-video-production-director
with the handoff file as the binding production contract, plus:
  • source-free video metadata and private transcript context
  • ra-洗稿
    flow-check results
  • default Douyin horizontal
    16:9
    landscape canvas with the white-first Xiaohei visual system unless the user gave a different style
  • required illustration skill:
    ian-xiaohei-illustrations
    whenever the user asked for 小黑配图 or the white-first Xiaohei default is selected
For a first run, changed style, or uncertain motion direction, render a 10-second sample first. Continue to the full video only after approval unless the user has explicitly asked to skip the sample gate.
仅当用户明确说出
直接制作
、
直接出片
或
一条龙
时:
调用
ra-video-production-director
,并将交接文件作为约束性的制作契约,同时提供:
  • 不含来源信息的视频元数据和私密逐字稿上下文
  • ra-洗稿
    的流程检查结果
  • 默认采用抖音横屏
    16:9
    画布和白底优先的小黑视觉体系,除非用户指定了其他风格
  • 当用户要求小黑配图或选择白底优先的小黑默认风格时,必须使用
    ian-xiaohei-illustrations
    illustration skill
首次运行、风格发生变化或动效方向不明确时,先渲染 10 秒样片。除非用户明确要求跳过样片确认环节,否则获得批准后再继续制作完整视频。

6. QC And Archive (explicit production only)

6. 质量检查与归档(仅限明确制作)

Let
ra-video-production-director
run its normal QC and archive rules.
Minimum final checks:
  • final MP4 exists in
    01-内容生产/视频工作台/已制作/<月上旬|月下旬>/<日期-主题>/成片/
  • automation/scripts/check_delivery.py
    passes against the handoff file, project dir, and final MP4
  • the handoff file's 制作端回执 is filled,
    status: 已完成
    , and
    01-内容生产/视频工作台/已制作/<月上旬|月下旬>/<日期-主题>/
    is assembled with the handoff file, the final MP4 copy under
    成片/
    , and key QC frames under
    质检/
  • rewritten script path is recorded; source transcript path stays private or is deleted
  • captions use safe zones and do not have unwanted UI frames
  • production subtitles were generated from the exact final audio through
    ra-audio-to-subtitles
    ;
    caption-qc.json
    passed;
    skill-captions
    applied the handoff
    caption_style
    (default
    anchor-dark
    ) and produced a passing
    caption-render-qc.json
    ; character-count timing was not used
  • page base stays stable; motion happens on components
  • Xiaohei illustrations are generated through
    ian-xiaohei-illustrations
    , saved as project assets, loaded directly by the render, and explain the current point instead of acting as decoration
  • representative frames confirm progressive reveals and no text overlap
让
ra-video-production-director
按其常规 QC 和归档规则执行。
最低最终检查要求:
  • 最终 MP4 存在于
    01-内容生产/视频工作台/已制作/<月上旬|月下旬>/<日期-主题>/成片/
  • 针对交接文件、项目目录和最终 MP4 运行
    automation/scripts/check_delivery.py
    并通过
  • 交接文件中的制作端回执已填写,
    status: 已完成
    ,且
    01-内容生产/视频工作台/已制作/<月上旬|月下旬>/<日期-主题>/
    已包含交接文件、位于
    成片/
    下的最终 MP4 副本,以及位于
    质检/
    下的关键质检帧
  • 已记录改写脚本路径;源逐字稿路径保持私密或已删除
  • 字幕使用安全区,且没有不需要的 UI 画面帧
  • 制作字幕通过
    ra-audio-to-subtitles
    基于最终音频原样生成;
    caption-qc.json
    检查通过;
    skill-captions
    已应用交接稿中的
    caption_style
    (默认
    anchor-dark
    ),并生成通过检查的
    caption-render-qc.json
    ;未使用字符数计时
  • 页面基础布局保持稳定;组件上发生动效
  • 小黑插图通过
    ian-xiaohei-illustrations
    生成,保存为项目资产,由渲染流程直接加载,并用于解释当前内容,而不是仅作装饰
  • 代表性帧确认信息逐步呈现,且没有文字重叠

Output

输出

For the default handoff completion, return:
text
交接文件:
[01-内容生产/视频工作台/待制作/YYYY-MM-DD-<slug>/交接稿.md]

标题候选:
[Top 3 推荐;完整候选见交接文件]

新逐字稿/脚本:
[script]

流程检查:
- AI 味:
- 开头:
- 共鸣:
- 小红书标题(如适用):
For script-only completion (
只要脚本
), return the same block without the 交接文件 line and do not create a queue file.
For explicit in-session production completion, return:
text
成片:
[final MP4 path]

质检:
[key QC path]

过程资产:
- 新脚本:

规格:
[ratio, resolution, duration, codecs]

限制:
[only if something remains]
对于默认交接完成情况,返回:
text
交接文件:
[01-内容生产/视频工作台/待制作/YYYY-MM-DD-<slug>/交接稿.md]

标题候选:
[Top 3 推荐;完整候选见交接文件]

新逐字稿/脚本:
[script]

流程检查:
- AI 味:
- 开头:
- 共鸣:
- 小红书标题(如适用):
对于仅脚本完成(
只要脚本
),返回相同内容但删除交接文件行,并且不创建队列文件。
对于明确要求在同一会话中完成制作的场景,返回:
text
成片:
[final MP4 path]

质检:
[key QC path]

过程资产:
- 新脚本:

规格:
[ratio, resolution, duration, codecs]

限制:
[only if something remains]