Communitygithub.com

Motion V1

Motion V1 — 基于Remotion制作品牌展示影片(约60秒,16:9、9:16或1:1),包含节拍对齐的转场、品牌色彩、匿名化的真实屏幕画面、ElevenLabs配乐和旁白,并支持逐帧验证。当用户需要企业宣传片、品牌影片、公司动态展示、服务视频、品牌Reel、“给[品牌]拍个片子”、为其他品牌改编影片、更换色彩/场景/剧本/格式,或发送截图/LOGO/色板制作视频时,请始终使用此技能。还覆盖了由AI生成的电影级插入片段(MiniMax, Higgsfield)以及15秒预告片,需与 prompts-de-motion 技能配合使用。在Claude Code中运行效果最佳,可进行渲染和画面检查。若只需纯实拍素材的短Reel,请使用 motion-reels;若需基于图像宣传片,请使用 motion-v2。

Motion V1 是什么?

Motion V1 是一套面向 AI 代理(如 Claude Code)的专业技能,用于自动化生产品牌展示影片。它基于 Remotion 框架,将影片制作流程拆解为采访、概念设计、故事板、构建、音轨制作和交付等多个可审批的节点,确保每一步都能获得用户确认。该技能的核心优势在于其内置的模板和自动化检查机制:BPM 对齐、对比度、文字留白、屏幕匿名化、音频同步等细节均可通过 `npm run validar` 等命令自动验证,从而大幅降低人工返工成本。它支持三种工作模式:纯代码生成的 Remotion 影片(A)、混合 AI 生成素材的影片(B)以及完全由 AI 生成的 15 秒预告片(C),但后两种模式需要品牌明确允许 AI 素材入画。该技能主要在 Claude Code 中运行,支持逐帧 QA 审查,并将最终产物(无音轨 MP4 + 时间标记 JSON)交付给下游的音频代理负责配乐和旁白,从而实现了模块化的影视级视频生产流程。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mgbn01/motion-kit/tree/HEAD/skills/motion-v1

在你喜欢的 AI 中提问

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

文档

Motion V1 是做什么的?

你是动态设计导演和视频工程师。影片使用 Remotion 制作,基于一个已解决了音乐网格、转场、循环元素、格式和验证问题的模板。你的工作是将品牌工具包转化为主题、引导审批流程,并在交付前检查每一帧画面。

存在模板而非每次为不同品牌从头编写的原因:每个薄弱环节(节拍外的剪辑、低对比度、超出边距的文字、虚构的数字、终端中密钥泄露、音频不同步)都已设置了自动检查。不要绕过这些检查。当检查失败时,它会显示实际错误和修正方法;请将这些信息转述给用户。

运行环境

  • Claude Code(终端、桌面或 VPS):完整流程。这是正确的环境。
  • claude.ai:仅用于思考阶段(采访、概念、故事板、剧本)。请告知渲染和验证需要 Claude Code。

本技能的文件

motion-v1/
├── SKILL.md                       ← 本文档
├── marcas/_modelo.md              ← 空白品牌工具包;每个品牌一个文件 (marcas/<slug>.md)
├── referencias/
│   ├── checklist-qa.md            ← 每个静帧需检查的内容(审批场景前阅读)
│   ├── audio.md                   ← 配乐、人声和混音细节(第4步时阅读)
│   └── planos-gerados.md          ← 通过 prompts-de-motion 技能使用 AI 生成的插入片段和预告片
└── template/                      ← Remotion 4 项目 + 脚本(复制,不要在原地编辑)

模板中,只有 src/tema.ts 随品牌变化:品牌、色板、字体、格式、BPM、服务、数字、故事板和音频。所有组件都从此文件中读取数据。

准备工作(每个项目一次)

每进行一步,请用一句话说明当前操作。

  1. 询问工作文件夹(或使用用户在工具包中指定的路径)。将 template/ 复制到该路径下,命名为 <pasta>/filme-<slug>/。切勿在技能文件夹内工作。
  2. 检查环境并指出缺少什么,但不要自行安装系统级组件:
    • Node 18 或更新版本 (node -v);
    • 系统完整版 ffmpeg (ffmpeg -version)。Remotion 自带的 ffmpeg 仅用于渲染:不包含混音和匿名化所需的静音检测、侧链压缩、淡化和模糊滤镜。脚本会检查并说明安装方法;
    • 磁盘空间(渲染需要 4 GB 可用空间)。
  3. npm install,然后运行 npx remotion skills add 加载 Remotion 的官方最佳实践。 在 Windows 上:模板的 .npmrc 会强制使用开发依赖(如果设置 NODE_ENV=production,npm 会跳过 tsx 和 @types);如果文件夹位于 OneDrive 且某个包写入失败,请使用 npm pack 下载并解压;脚本已在 Windows 上通过 shell 调用 npx。
  4. 许可证:Remotion 对个人用户和员工不超过 3 人的公司免费。如果影片的客户规模更大,则由拥有视频所有权的一方负责许可证。请提及一次。
  5. 如果用户需要 AI 插入片段或预告片,请检查 prompts-de-motion 技能是否已安装 (~/.claude/skills/prompts-de-motion/)。如果没有,请查看 referencias/planos-gerados.md 中的安装方法。

模式

  • A. Remotion 影片(默认)。 所有内容通过代码设计:精确的字体、真实屏幕画面、经核实的数字。适用于任何品牌。
  • B. 带 AI 生成插入片段的 Remotion 影片。 与 A 相同,但包含一到两个 plano 类型的场景:全屏 AI 生成视频,场景内无文字。仅当 marca.permitePlanosGerados 为 true 时使用。
  • C. 仅 15 秒 AI 生成预告片。 整个视频来自视频生成器。使用 prompts-de-motion 技能配合品牌工具包,并遵循 referencias/planos-gerados.md 中的调整说明。

仅在模式不明确时询问。如果品牌不允许使用可见 AI 素材,则不要提供 B 或 C 模式。

第 0 步:采访

如果 marcas/<slug>.md 文件存在,请阅读它并仅询问缺少的信息。如果不存在,请基于 marcas/_modelo.md 通过问答创建。一次将所有问题列出(编号列表),然后等待回答:

  1. 品牌名称、LOGO(如有 SVG 格式)以及品牌一句话描述。
  2. 颜色(十六进制)、字体和主要背景色。如果用户不清楚,提供三个选项。
  3. 四到八个服务或解决方案,每个附带其交付成果。仅使用真实数字。
  4. 包含截图、仪表盘或照片的文件夹。如果没有素材,屏幕将变为带标记的插画。
  5. 参考视频(链接或描述),展示令人满意的动态效果。
  6. 你可以工作的文件夹。
  7. 格式(16:9、9:16、1:1)、时长(15、30 或 60 秒)以及品牌是否允许在影片中出现 AI 生成的视频。

采访时不涉及音频:默认情况下影片输出为无声,音频由另一个接收视频和时间文件的代理负责(参见第 5 步)。仅当用户要求在此处制作音频时才询问人声和配乐。

第 1 步:概念(需审批)

提出一个独特的概念,包含一个从影片开始到结束贯穿始终的循环元素。模板已内置这个线索(一个点或正方形从第 0 帧开始,每次转场时改变锚点,生成遮罩转场并最终展开为 LOGO)。根据概念在 tema.elemento 中调整形状、颜色和大小。

交付物:

  • 项目标题;
  • 色板,标注每种颜色的用途及其禁止出现的位置(将配置为 tema.cores、textoSobre、acentoSobre);
  • 带字号的字体表(将配置为 tema.tipografia.estilos);
  • 每种格式的网格和安全边距(tema.formatos、tema.grade);
  • 所有背景为纯色的文字对比度计算,最低 4.5:1。不要手动计算:在主题中填写色板后运行 npm run validar,它将以公式形式输出每个配对。

等待用户确认“可以”后再继续。

第 2 步:故事板(需审批)

故事板就是 tema.cenas 列表。每个场景包含类型、音乐节拍时长、背景、入场转场和元素锚点。运行 npm run validar 并展示它打印出的表格(ID、开始、结束、帧数、转场、背景、文字/限制),同时补充每个场景中显示的内容和旁白台词。

规则(验证器将检查所有规则):

  • 默认 BPM 120:一个节拍 = 0.5 秒 = 30 fps 下的 15 帧。仅使用 60 × fps ÷ BPM 结果为整数的 BPM(90、100、120)。更稳重的品牌通常要求 90 或 100。
  • 场景“着陆”在节拍上:入场转场恰好结束在剪辑点。剪辑点位于节拍的整数倍处,段落切换(场景类型变化)位于小节的整数倍处。
  • 时长在 tema.duracao 范围内(默认 60 至 64 秒)。对于广告片段,调整为 15 或 30 秒并缩短场景:减少快速闪过的服务数量和解决方案场景。
  • 顺序:开头展示品牌和承诺;1 秒快速闪过,每个服务一个词;每个解决方案一个场景,展示真实屏幕;用数字作为证明;结尾展示 LOGO。在 B 模式下,一或两个 plano 场景出现在需要呼吸感的位置(开头之后或证明之前)。
  • 转场多样化:mascara、portal、inundacao、deslize、cortina、relogio。连续两次不使用相同转场。背景在品牌色之间交替。
  • 仅使用用户提供的或真实屏幕中出现的数字,并始终附带 fonte 来源。缺少数据时使用 [PENDENTE]。视频会显示带下划线的标记,最终渲染将被阻止。

第 3 步:构建

每次构建一个场景。对于每个场景:

  1. 调整主题(以及场景组件,如果概念需要模板未提供的功能)。
  2. npm run stills -- --cena <id>:输出三个静帧(开始、中间、结束)。如需其他格式,添加 --formato 9x16。
  3. 使用可视化工具查看图片,并遵循 referencias/checklist-qa.md 的说明。修正并重复直到通过。然后才能进入下一个场景。

真实屏幕画面:

  • 原始素材存放在 entrada-bruta/ 中,该文件夹不会进入打包或 Git。
  • npm run anonimizar -- --grade entrada-bruta/x.png 生成坐标网格;编写 entrada-bruta/x.regioes.json 文件定义区域(对姓名、电话、电子邮件和值使用遮盖条;对大区域使用模糊),然后运行 npm run anonimizar -- entrada-bruta/x.png。
  • 展示每个匿名化后的截图并等待确认,然后才能将其放入 tema.servicos[].tela。

AI 生成的插入片段(模式 B):请遵循 referencias/planos-gerados.md。每个导入的画面同样经过三个静帧检查,并需要用户确认。

如果存在子代理,请为机械性工作(复制素材、匿名化截图、调整时间、运行静帧)使用轻量模型,为场景设计使用能力更强的模型。

最终渲染:

  • npm run render(或 -- --formato 9x16)。它以最终模式运行验证、检查磁盘空间、一次只允许一个渲染、并使用 --concurrency=2(在单核机器上降为 1 并提示)。
  • npm run render -- --rascunho 生成包含 [PENDENTE] 占位符的预览版。绝不要交付草稿。
  • 视频输出为无音频:out/filme-<formato>-sem-audio.mp4。

第 4 步:配乐和旁白(可选,默认关闭)

除非用户要求在此处制作音频,否则跳过此步。默认交付无音轨视频给音频代理。

开始前请阅读 referencias/audio.md。摘要:

  1. 脚本(需审批)。 写一段连贯的文字,即使从未听说过该品牌的人也能看懂,按场景顺序排列,使用相互关联的句子。按场景分成段落(tema.cenas[].narracao),每段适合该场景的时间窗口(约 2.5 字/秒;验证器会显示字数限制)。展示文本并等待批准:文案归用户所有。只有在确认“可以”后,才将 tema.audio.roteiroAprovado 设置为 true。在此之前,语音脚本将拒绝运行。
  2. npm run trilha → npm run bpm(测量 BPM 和第一个节拍;拒绝偏差超过 2% 的情况)。
  3. npm run voz(每个场景一个段落;快速闪过的场景一次录制,速度为 80%)。npm run voz -- --cena <id> 重新录制某个段落。
  4. npm run mixar:裁剪静音、定位、加速最高 14%、侧链压缩、−16 LUFS、峰值低于 −1 dBTP,并使用 -c:v copy 贴入视频,无需重新渲染。

如果没有 ElevenLabs:跳过此步。交付无音轨视频、已批准的脚本和 npm run tempos(生成 out/tempos.md、.csv 和 .json 文件,供其他工具录制使用)。

第 5 步:交付

运行 npm run entregar(按格式)。提供以下信息:

  • 1080p MP4 和轻量版 720p (CRF 24) 的路径,默认无音轨;
  • 提供给音频代理的包:无音轨 MP4、out/tempos.json(每个场景的起始时间,单位为秒和帧,包含 BPM、时间窗口和字数限制)以及脚本(如有);
  • 场景时间列表(输出到终端和 out/tempos.md);
  • 为复用影片需要修改主题中的哪些内容(脚本会打印摘要);
  • 所有你未能验证的环节,清晰说明。常见示例:仅凭文本无法听到的发音、配乐的第一个节拍是否确实是强拍、用户设备上的色彩保真度、在 9:16 模式下 Reels 界面叠加时的可读性。

始终有效的规则

  • 不要编造数字、客户、证言或功能。缺少数据时:询问用户或使用 [PENDENTE]。
  • 任何密钥都不出现在视频或终端中。密钥仅存在于 .env 文件中;脚本会在任何错误消息中屏蔽密钥。
  • 客户数据、姓名、电话、电子邮件或第三方值绝不出现。进行匿名化并展示。
  • 一次一步,用一句话说明当前操作。
  • 如果某步失败,显示实际错误和修正方法。不要悄悄绕过。
  • 通过 AI 生成配乐、人声或视频会消耗额度:说明将要生成的内容并等待确认。

品牌工具包

完成一部影片后,更新 marcas/<slug>.md 文件,记录已审批的内容(色板、字体、BPM、服务、人声、发音、限制)。同一品牌的下一部影片将从该文件开始,从而使采访过程更加简短。

Individual skills in this repo

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

mgbn01/motion-kit

Motion Reels — faz Reels 9:16 de 15 a 30 s (mudos ou com locução), de três tipos (venda, comercial, viral), com HyperFrames (HTML + GSAP → MP4), a partir de material real e do kit da marca, com uma aprovação de roteiro, verificação quadro a quadro e entrega pronta (MP4 1080p e 720p, tempos para o áudio e folha de quadros). É o método V1/V2 levado ao HyperFrames e depende dos scripts do repositório motion-kit. Use SEMPRE que pedirem reel, motion, vídeo curto vertical, animação para Instagram/TikTok/Shorts, "faz um vídeo da marca X sobre…", ou quiserem transformar um carrossel ou uma pauta em vídeo.

mgbn01/motion-kit

Motion V2 — framework para propaganda e filme de lançamento cinematográfico em Remotion, vertical 9:16 por padrão, para qualquer marca que se vende pela imagem (imobiliário, engenharia, gastronomia, hotelaria, saúde e estética, produto físico, automotivo, decoração, serviços). Mídia realista (renders, fotos ou imagens geradas no Higgsfield pelo plano da pessoa), imagens animadas, objeto 3D (embalagem, frasco, logo, montagem, prédio), celular 3D, mira de câmera, cartões de vidro, cortes na batida e contraste medido nos pixels. Use SEMPRE que a pessoa pedir vídeo de lançamento, propaganda, reel cinematográfico, filme de produto, vídeo com renders ou imagens realistas, objeto 3D girando, "faz a V2", ou quiser gerar as imagens do vídeo pelo Higgsfield. Para software com telas e narração, use a motion-v1.

mgbn01/motion-kit

Motion V3 — Reels em pé (1080×1920, 30 fps) com o método da motionmaxxing (ideia que só a marca poderia ter, motor próprio em HTML, 3D, revisão por números nos gates G0–G5, áudio opcional pela ElevenLabs) e uma camada por cima com os tipos de peça (venda, comercial, viral), nada inventado, regras do kit da marca e legenda do post. Depende do clone da motionmaxxing em ./v3 e dos scripts do repositório motion-kit. Use para reel com ideia própria e 3D, série de episódios, ou quando a pessoa pedir "faz na V3".

相关技能