Communitygithub.com

nanxnguyen/remotion-ai-agentic-studio

用于在此仓库中从创意或原始材料出发,通过语音、Remotion场景、审核并最终生成MP4,制作新的越南竖版视频。

remotion-ai-agentic-studio 是什么?

该技能定义了一个完全自动化的视频制作工作流,专为越南竖版短视频设计。它利用AI智能体(例如Claude Code)进行从构思到交付的全流程管理,包括研究、脚本撰写、内容、音频和设计分支的并行开发、集成、构建、质量保证、渲染和发布。工作流通过一系列门控(Gate A到E)实现自动审核,确保质量,无需人工干预。它支持多种视频类型,如故事、产品、知识和新闻,并强调并行处理以最大化效率。该技能主要针对基于Remotion的视频生成平台,要求严格遵守文件命名和状态管理规范。

兼容平台✓Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/nanxnguyen/remotion-ai-agentic-studio/tree/HEAD/.claude/skills/ray-pineline-worflow-agent

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

视频制作工作流

这是此仓库中唯一的新视频制作工作流。video-director负责最终的成果和状态。对于研究和写作技巧,请参考.claude/skills/viral-tech-video-creator/SKILL.md;对于镜头、动作和声音参考,请参考.claude/skills/video-shotcraft/SKILL.md。当这些资源与本文件冲突时,以本文件为准。开始工作前请先阅读CLAUDE.md和选定的参考资料。回复请用越南语;代码用英文编写。

工作流是完全自动化的:智能体自己进行制作、审核并通过门控,没有步骤等待用户手动批准。绝不要在回合或智能体报告的结尾使用“gửi bạn nghe thử / duyệt giúp / OK chưa”;选择最佳选项,将决定记录在docs/<vid>/中,然后继续。仅在缺少关键输入且无法安全推断时,或用户明确请求决策门时,才询问用户。人工听审(音频、最终MP4)是可选的记录,绝不是问题或阻塞。独立审核员使用干净的上下文。仅保留用户标记为强制要求的用户台词原样;其他所有内容可以为了服务于故事而进行戏剧化处理或重写(参见常见失败点中的gate-A教训)。发布需要单独的用户请求。

精简模式。 对于较短的story视频,或者当用户提供了脚本/语音时,导演可以合并步骤但不跳过任何门控:一个research-agent;当用户账户是来源时,不生成研究文件;三个Phase 3分支在一个并行消息中;task-planner搭配每3-4个镜头一个scene-agent。门控A、D、E、B、C、内容和音频分支审核、修复循环纪律以及文件所有权始终保留。

流水线图

在门控A之后,工作分叉为三个并行分支(内容、音频、设计),每个分支都有自己的制作人→独立上下文审核员循环。当三个分支都通过后,video-director将它们合并,门控E在构建前审核合并后的计划。

flowchart TD
  P0["0 接收<br/>intake-agent ×2-3"] --> P1["1 研究<br/>research-agent ×N"]
  P1 --> P2["2 脚本<br/>script-agent"]
  P2 --> A{"门控 A ≥ 9<br/>script-reviewer"}
  A -- "修改 (≤3轮)" --> P2
  A -- 通过 --> FORK(("分叉"))

  subgraph BR["3 · 三个并行分支"]
    direction LR
    subgraph B1["3a 内容"]
      CA["content-agent<br/>content-pack.md"] --> CR{"content-reviewer ≥ 9"}
      CR -- 修改 --> CA
    end
    subgraph B2["3b 音频"]
      VA["voice-agent + audio-agent<br/>sN.mp3, BGM/SFX, 混音计划"] --> AR{"audio-reviewer ≥ 9"}
      AR -- 修改 --> VA
    end
    subgraph B3["3c 设计"]
      DA["design-agent<br/>原型, 风格帧, 封面, 故事板"] --> DR{"门控 D ≥ 9<br/>design-reviewer"}
      DR -- 修改 --> DA
    end
  end

  FORK --> CA
  FORK --> VA
  FORK --> DA
  CR -- 通过 --> J
  AR -- 通过 --> J
  DR -- 通过 --> J
  J["4 合并<br/>video-director: voice.json, timeline.ts,<br/>协调时间/文本/氛围"] --> E{"门控 E ≥ 9<br/>integration-reviewer"}
  E -- "工单 → 所属分支" --> BR
  E -- 通过 --> P6["6 任务<br/>task-planner"]
  J -.->|早期脚手架| P7
  P6 --> B{"门控 B ≥ 8<br/>task-reviewer"}
  B -- 通过 --> P7["7 构建<br/>scene-agent ×N"]
  P7 --> P8["8 质量保证<br/>qa-agent ×N"]
  P8 --> P9["9 渲染<br/>render-agent"]
  P9 --> C{"门控 C ≥ 8 · 最终屏障<br/>在MP4上完整重新测试<br/>final-check.md 全部 ✓ + video-reviewer ×3"}
  C -- "修复 → 负责人, 重新渲染, 重新测试所有内容" --> P7
  C -- 通过 --> P10["10 交付<br/>video-director"]

文本后备方案:0 接收 → 1 研究 → 2 脚本 ⇒ A → 分叉[ 3a content-agent ⇒ content-reviewer | 3b 语音+音频 ⇒ audio-reviewer | 3c design-agent ⇒ D ] → 4 合并 → E → 6 任务 ⇒ B → 7 构建 → 8 质量保证 → 9 渲染 ⇒ C → 10 交付。

约定与命名

  • 一个视频有一个唯一的、小写的kebab-case主题ID <vid>,一个语音slug <voice>,docs/<vid>/,src/<vid>/,public/audio/<vid>/,和 out/qa/<vid>-*.png。
  • 唯一的最终视频是 out/<vid>-<voice>-reel.mp4,例如 out/cam-on-phien-ban-minh-anh-khoi-reel.mp4。语音slug描述的是实际听到的语音。当语音更改时,在渲染前运行python3 -I scripts/pipeline.py voice <vid> <new-voice>;先前的文件仍然可用。
  • 首先运行 python3 -m unittest scripts.test_voice_catalog 以确保目录预览能够解析。根据目录描述和用户请求,从 vietnamese-voice-samples/previews/ 中选择一个候选(该文件夹就是目录;文件名是简短的语音名称),并在 brief.md 中记录提供商及其语音ID。预览本身不授予任何商业或克隆权利。
  • 在Phase 0的重复主题检查通过后,初始化一次:python3 -I scripts/pipeline.py init <vid> --comp <CompId> --voice <voice> --profile story|product|knowledge|news。--voice 对于新制作是必需的:传递当前的最佳猜测,然后在路线确定后尽快运行 pipeline.py voice <vid> <slug>(slug必须命名实际听到的语音);--out 仅用于遗留的输出名称。在分派制作智能体之前,启动或重用端口4180上的Pipeline Monitor。不要手动编辑 status.json。
  • 在每个工作阶段前后,调用 pipeline.py set <vid> <stage> in_progress,然后是 done,blocked,或 failed。阶段包括 research, brief, script, content, voice, design, build, audio, qa, render(content 从工作流v3开始存在,由 init 创建;一个已在进行的、仅有门控A审核的v2视频,通过 pipeline.py upgrade <vid> 移至v3)。render 命令会更新自己的阶段。审核门控按顺序运行 A → [content · audio · D] → E → B → C;两个分支审核像门控一样记录(review <vid> content|audio …,gate <vid> content|audio,上限3次 override),并且门控E会拒绝,直到content、audio和D都被接受。门控A、content、audio、D和E通过分数为 9/10,B和C为 8(pipeline.py 强制执行分数)。
  • 智能体活动(驱动监控器)。 每次 video-director 分派一个智能体时,运行 pipeline.py agent <vid> <agent-name> running --stage <stage> --note "<task>";当其完成通知到达时,运行 pipeline.py agent <vid> <agent-name> done(或 failed)。并行副本使用编号名称(scene-agent-1,research-agent-2)。没有这些记录,监控器只能根据阶段状态进行猜测,并且审核员永远不会亮起。一个门控只有在分数达到阈值且没有打开的Cao/Trung工单时才通过(参见修复循环纪律);pipeline.py 无法看到工单,因此审核员在任何工单打开时设置 --verdict revise。
阶段要设置的阶段门控/检查点
0 接收— (init)—
1 研究research—
2 脚本brief, scriptA
3a 内容分支content审核 content (content-reviewer)
3b 音频分支voice, audio审核 audio (audio-reviewer, 机器判定)
3c 设计分支designD
4 合并— (导演集成)—
5 集成(修复时重新打开所属阶段)E
6 任务build → in_progressB
7 构建build, audio (混音集成)—
8 质量保证qa—
9 渲染render (自动)C (人工听审 = 可选记录)

重新打开一个阶段(in_progress/blocked/failed)会使以下审核失效:research/brief/script → A(以及两个分支审核),content → 审核 content + E及之后,voice → 审核 audio + E及之后,design → D及之后,build/audio/qa/render → C。一个新的审核条目也会使其之后的所有内容失效(一个分支审核会重新打开E、B、C)。按顺序重新运行每个失效的门控。

  • 不同的视频可以使用不同的ID、音频文件夹、质量保证前缀和输出同时运行。处理一个视频的智能体拥有不相交的场景文件;只有 video-director 编辑 kit、timeline、Reel、Root 和语音JSON。流水线将写入序列化到一个状态和一个输出名称。

智能体名册与交接

video-director 是流水线所有者和信息管理器:它初始化状态,将当前的简报/脚本/来源决策作为唯一真实来源,选择配置文件,分配文件,集成工作,运行门控命令,并交付结果。为每个专家提供已接受的简报、精确输入、预期输出路径和验收检查。在交接时,video-director 检查返回的工件是否与这些输入匹配,将决策或未解决的问题记录在 docs/<vid>/ 中,更新状态,并仅向下一专家提供已接受的版本。审核员必须拥有干净的上下文,且不能是产生它评分工件的智能体。video-director 不为自己的工作评分。

video-director 是主要对话线程(您),而不是子智能体。它管理下面的每个智能体:分派、移交已接受的输入、路由修复、集成共享文件、记录状态/门控,并与用户交谈。每个阶段由其各自的命名智能体运行;审核智能体是独立的、拥有干净上下文的,并且每轮都是新的。

阶段制作智能体审核智能体 (门控)拥有并返回的内容
0 接收intake-agent (只读)—重复主题报告,预检结果;导演写入 brief.md 头部;仅在关键输入缺失时询问用户
1 研究research-agent (按来源组 × N)—research.md 或 research-<group>.md: 来源、受众语言、事实/推断/未知、五个钩子候选
2 脚本script-agentscript-reviewer (A)brief.md, script.md, voice.proposed.json / script-review.md
3a 内容content-agentcontent-reviewer (分支)content-pack.md: 每个镜头的屏幕文字、字幕块、重音词、封面/再钩子/行动号召文本、主张→来源表、minh hoạ 标签 / content-pack-review.md
3b 音频voice-agent + audio-agentaudio-reviewer (分支, 机器判定)sN.mp3 + 时长 + 自动语音识别 (voice-report.md); BGM/SFX + 节拍网格 + 混音计划 + assets-manifest.md / audio-review.md
3c 设计design-agentdesign-reviewer (D)design-spec.md + 原型 + 3个风格帧 + 封面 + 故事板 + 钩子动作条 / design-review.md
4 合并video-director—voice.json, timeline.ts 草稿, docs/<vid>/join-notes.md (时间/文本/氛围协调)
5 集成(修复指向所属分支制作人)integration-reviewer (E)integration-review.md, 在完整构建前进行判定
6 任务task-plannertask-reviewer (B)task-review.md: 工具, 镜头→文件所有权, 依赖关系, 检查
7 构建scene-agent-1..N (并行, 每个一个文件)—src/<vid>/scenes*.tsx + 静帧;导演集成 timeline/kit/Reel/Root/音频
8 质量保证qa-agent—qa-report.md: TypeScript编译, 确定性, 帧/转场/字幕检查, 每个镜头设计保真度评分, 修复路由到负责人
9 渲染render-agentvideo-reviewer (C, 最终屏障)已验证的MP4 + final-check.md (在MP4上的完整回归测试) + render-evidence.md (联系表, 密集帧, 响度, 自动语音识别) / video-review.md
10 交付video-director— (人工听审 = 可选记录)导演运行 check 并编写交付报告

只有 video-director 写入共享的 kit、timeline、Reel、Root 和 voice.json;专家在其交接中提议对这些文件的更改。场景智能体从视频的 SHOTS 映射中读取时长,并将动作锚定到测量的语音跨度。切勿将同一个可写文件分配给两个智能体。如果用户停止工作,也停止后台智能体。门控C是对联系表、密集帧、ffprobe/响度数据和自动语音识别的人工智能审核;C之后的人工听审(pipeline.py listen)是可选的记录,不是交付阻塞。

速度规则:默认并行分派

video-director 必须在工作允许的情况下尽可能多地并行分派子智能体,以便视频尽可能快、尽可能好地完成。一步一步地运行本可以一起运行的步骤是一个缺陷。

  • 在一个消息(一个工具块)中发送所有独立的智能体调用,绝不要每轮一个。
  • 只要输入被接受且可写文件不重叠,就进行并行化: research-agent × N(每个来源组一个);三个Phase 3分支(content-agent,voice-agent + audio-agent,design-agent)一起;scene-agent × N(每个一个文件和一个镜头ID列表);qa-agent 按镜头集群拆分;工作流/技能/文档修复与视频工作同时进行;同一轮中独立修复路由到不同的负责人。
  • 独立阶段并行运行(阶段图):
    • Phase 0: intake-agent 检查(重复主题、工具预检、语音目录测试)在一个消息中;Phase 1:所有 research-agent 来源组。
    • Phase 3:A通过后立即在一个消息中发送所有三个分支制作人。然后每个分支独立地在自己的制作人和审核员之间循环:一个通过的分支在合并点等待,而其他分支继续修复;一个分支绝不等待另一个分支的审核。
    • Phase 5–6: task-planner 在E审核的同时起草计划和 scene-agents 构建早期脚手架;B审核等待E通过(如果E更改了任何内容,计划会改变)。
    • Phase 7: scene-agent × N 处理不相交的文件;Phase 8:qa-agent 处理每个镜头集群和静帧渲染;Phase 9:联系表、密集帧、响度和自动语音识别证据同时计算。
    • 修复轮次:针对不同负责人的工单在一个消息中发出。审核可以并发运行,但导演记录分数并严格按顺序运行门控A → D → E → B → C(pipeline.py 强制执行),如果较早的门控重新打开,则较晚审核员的结果无效。
  • 仅在存在真正依赖关系时保持顺序: 门控A → D → E → B → C(审核员需要其工件完成),依赖先前审核的修复轮次,以及任何具有单个所有者的文件(kit,timeline,Reel

…

[为翻译而截断]

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

nanxnguyen/remotion-ai-agentic-studio

Produce or change a deterministic Remotion video through evidence-backed agent stages and review gates.

nanxnguyen/remotion-ai-agentic-studio

Writes short-form video scripts (YouTube Shorts, TikTok, Instagram Reels, 30 to 60 s) in the creator's own voice from video-agent/voice.md, with optimized hooks and a humanize pass so nothing sounds like AI. Use when the user asks for scripts, script ideas, "write my shorts", this week's videos, a hook, a better hook, to rewrite or tighten a script, or to humanize any text (humanize, sounds like AI, sounds robotic, make it sound like me, a caption or description before posting). Starts from what happened in their week, writes 3 hooks per script from 22 formulas, scores them, adds a re-hook, checks timing at their pace, adds visual notes, removes AI tells (invisible characters, AI words in English and French, AI sentence shapes) while keeping every fact, and saves the week to video-agent/scripts/.

nanxnguyen/remotion-ai-agentic-studio

Use to build and render a Remotion 9:16 reel in this project from an approved brief + script + voice clips (scene components, timeline, SFX/BGM, stills QA, MP4 render). Wraps the full upstream skill in skills/video-shotcraft (124 shot cards, demos, lib components, audio library, beat-sync, workbench, Jianying export, social publish). Use after viral-tech-video-creator has produced docs/<video>/brief.md and measured voice.

nanxnguyen/remotion-ai-agentic-studio

Write and critique viral hooks for short-form video: the opening 1 to 3 seconds that decide whether anything else gets seen. Use this when you need a batch of hook ideas for a video, want to make a weak opening line stronger, are picking which hook archetype fits an idea, or want a critique of a draft hook against proven patterns. Covers the three-layer hook (visual, verbal, on-screen text), the named-creator frameworks (Kallaway, MrBeast, Hormozi, Brunson, Koe, Welsh, Bush, Galloway), scroll-stopping hook tactics, and the anti-patterns that tank first-three-seconds retention. Works across TikTok, Reels, and Shorts. Pattern-based guidance that improves the odds. It does not guarantee virality.

相关技能