Communitygithub.com

realjaymes/marketingagentskills

基于 React 的 Remotion 视频创作技能——为视频简报提供动态概念目录、冷受众优化及技术最佳实践。

marketingagentskills 是什么?

该 AI 代理技能专为使用 Remotion 进行视频创作而设计,提供了一套从品牌识别到最终输出的完整 8 步视频制作流程。它特别强调冷受众优化(Cold Audience Optimization),即默认观众对品牌无任何认知,因此所有视频概念推荐都需在开头 3 秒内抓住注意力并传递核心价值。技能内置了一个包含 18 个主要概念、8 个视觉风格修饰器和 5 种钩子模式的概念目录,可自动根据创意简报评分并推荐最佳方案。此外,该技能还集成了详细的 Remotion 技术参考(涵盖动画、时序、媒体、文字、布局等),并设定了严格的验证关卡(如场景分解和视觉设计的审批),确保在写代码前所有创意决策都已锁定。它适用于需要快速、高质量、品牌一致的短视频制作的营销人员、内容创作者和开发者,尤其擅长处理 LinkedIn/Instagram、Reels、TikTok 等渠道的广告或内容视频。

兼容平台~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/realjaymes/marketingagentskills/tree/HEAD/skills/remotion

在你喜欢的 AI 中提问

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

文档

何时使用

在以下场景使用本技能:

  • 从头开始创建一个新的 Remotion 视频
  • 为一个内容资产生成视频简报变体
  • 修改现有的 Remotion 合成
  • 调试 Remotion 动画或渲染问题
  • 处理任何 Remotion 特有的 API 或组件

视频创建流程

创建新的 Remotion 视频时,请遵循以下 8 个步骤。第 2 步会根据简报和冷受众优化从概念目录中挑选 3-5 个概念。第 4 步和第 5 步是审批关卡。在两者都获得批准之前,请不要编写代码。

有关包含模板和决策矩阵的完整流程文档,请阅读 references/video-creation-process.md。

第 0 步:品牌识别

在所有创意工作之前,先识别品牌。询问用户:“这个视频是为哪个品牌制作的?”

如果该品牌在下方有预设, 直接使用。无需再询问品牌相关问题。

如果品牌未列出, 让用户提供品牌网站 URL 或品牌指南。提取:背景色、主强调色、次强调色、文本颜色、字体族以及主题(浅色/深色)。如果没有指南,至少要求提供:主色、背景色和字体偏好。

第 1 步:创意简报

在任何创意工作之前收集并锁定以下信息:

目的:[这个视频存在的原因]
受众:[谁会观看]
核心信息:[一句话]
内容类型:[blog-post, case-study, webinar, podcast, lead-magnet, product-update, tool-launch, industry-report, event-recap, client-testimonial, playbook, template, ai-demo, custom-gpt]
渠道:[将在哪里分发]
CTA:[观众下一步应该做什么]
源素材:[要参考的文件、组件或 URL]
语调:[描述感觉的词语]
品牌:[第 0 步中的品牌名称]

第 2 步:概念选择(推荐 3-5 个概念)

锁定创意简报后,对其进行分析,为这个特定用例选择最佳视频概念。不要提交固定的变体集。从 references/concept-catalog.md 中的概念目录中提取。

该目录包含 18 个主要概念、8 个视觉风格修饰器和 5 种冷受众钩子模式。 在生成推荐之前请先阅读。

选择流程

  1. 根据简报对概念进行评分。 对于目录中的每个概念,评估:

    • 概念的“最佳适用”是否与内容类型匹配?
    • 核心信息能否在 15-30 秒内以此结构传达?
    • 概念是否适用于目标时长和尺寸?
    • 简报是否提供了此概念所需的数据/视觉效果?
  2. 应用冷受众过滤器。 对于每个评分过的概念,评估:

    • 一个零背景知识的观众能否在最初 3 秒内理解其价值?
    • 概念是否在开场节拍中创造了令人驻足观看的视觉运动?
    • 概念是否避免需要有关品牌、产品或问题领域的先验知识?
    • 如果概念自然地将结果或数据点前置(如指标计数器、动画信息图、前后对比),那么它对于冷受众来说,天生就比需要设置时间的叙事性概念更强。
  3. 选择一个钩子模式。 对于每个推荐的概念,从目录中为其搭配一个钩子模式:

    • 有数据的内容 → 结果优先
    • 产品发布和工具 → 模式打断
    • 思想领导和教育 → 好奇心缺口
    • 建立信任的内容 → 社会证明钩子
    • 竞争和定价内容 → 损失厌恶
  4. 提供 3-5 个推荐概念 作为一页简报。每个简报包括:

    • 概念名称(来自目录)和一句话描述
    • 为什么适合此简报(1-2 句话,引用具体内容和受众)
    • 推荐的钩子模式和开场节拍描述
    • 逐场景表格(来自目录模板,针对此内容定制)
    • 可选的视觉风格修饰器(如果它能增强概念)
  5. 对推荐进行排序。 标记最佳推荐并解释原因。

  6. 用户选择一个(或两个的混合体)。 在进入第 3 步之前锁定所选概念。

冷受众优化规则

这些规则适用于所有概念推荐,并在冲突时覆盖内容类型的默认值:

  • 默认假设:冷受众。 除非简报明确说明受众是温暖的(再营销、现有用户、新闻通讯订阅者),否则假设零品牌认知。
  • 冷受众的首个场景要求:
    1. 视觉模式打断(运动、颜色对比或尺度变化)
    2. 文本说明观众在不了解品牌的情况下也能识别的痛点或结果
    3. 场景 1 中不出现品牌标识(将品牌卡片留到场景 2 或更后)
  • 冷受众的钩子模式限制: 使用 pattern-interrupt、result-first 或 loss-aversion。避免使用 curiosity-gap,除非统计数据/主张在无品牌背景下具有普遍相关性。
  • 概念灵活性: 如果目录中没有概念能很好地满足冷受众的简报,创建一个混合体或调整现有概念。目录是一个起始库,而不是约束。

第 3 步:格式和规格

根据简报和所选变体,使用格式决策矩阵确定:

渠道尺寸时长
LinkedIn/Instagram 信息流1080x108015-30秒
网站/演示文稿1920x108015-60秒
Reels/TikTok/快拍1080x192015-60秒
电子邮件 (GIF)600x600 或 800x4505-10秒

默认 FPS:30。仅在需要流畅运动时使用 60。

尺寸:[宽度]x[高度]
时长:[X] 秒 ([X * fps] 帧)
FPS:30
合成 ID:[PascalCase]
循环:[是/否]
输出格式:[mp4, gif, webm]
选中的概念:[目录中的概念-id,或 hybrid]

第 4 步:场景分解(审批关卡)

在编写代码之前定义每个场景。使用所选变体的场景模板作为起始结构,然后针对特定内容进行定制。

提交场景表格以供审批。

场景表格格式:

#名称时间文案动画目的
1钩子0-3秒确切的文本运动描述为什么存在

时间指南:

时长场景数量平均每个场景
10秒3-42.5-3.3秒
15秒4-62.5-3.75秒
30秒8-122.5-3.75秒
60秒12-203-5秒

在继续之前锁定文案、时间和叙事结构。

第 5 步:视觉设计(审批关卡)

实施前锁定:

调色板(最低要求角色):

  • 背景色、主强调色、次强调色
  • 文本主色、文本次色、文本三级色
  • 边框/分割线

品牌主题预设(适用于已知品牌,跳过颜色问题):

品牌背景主强调色次强调色文本主色文本静音色字体主题
FunnelEnvy#FFFFFF / #1a1a2e (终端)#3B82F6 (蓝色)#8B5CF6 (紫色)#000000#6B7280Inter, system浅色
Reform#FFFFFF / #1a1a2e (终端)#48EC80 (绿色)#EDE630 (黄色)#000000#6B7280Inter, system浅色
GrowthNode#0f0a1a (所有场景)#8B5CF6 (紫色)#3B82F6 (蓝色)#FFFFFF#a1a1aaInter, system深色
MIA#F7F4FA / #1c1422 (深色)#F1DE71 (黄色)#7184F1 (紫色)#1c1422 / #f7f4fa (深色)rgba(28,20,34,0.62)system-ui, -apple-system, Segoe UI浅色

MIA 强调色调色板:蓝色 #71C4F1,紫色 #7184F1,粉色 #F171C4,绿色 #71F19E

自定义品牌:如果品牌未在上面列出,根据第 0 步提供的品牌网站或指南定义颜色。填写相同的角色:背景色、主强调色、次强调色、文本主色、文本静音色、字体、主题。

排版:字体系列、字重层次、目标分辨率下的字号。

动画风格:弹簧(弹跳/平滑/轻快)、线性或基于缓动。选择一种主导风格。

真相来源:如果匹配现有设计,参考源文件。

第 6 步:架构决策

代理根据场景复杂度决定:

条件方法
少于 15 个场景单个文件
15 个以上场景或可重用部分多文件,使用 scenes/ 目录
跨场景共享元素具有不透明度包络的持久层

始终使用集中式时间常量(const T = { ... })。

第 7 步:实施

根据已锁定的决策编写代码。所有动画必须遵循 Remotion 规则(请参阅下面的技术参考)。

第 8 步:输出文档

生成一份参考文档,涵盖:规格、选中的变体、预览/渲染命令、场景分解、调色板、时间配置、架构说明、迭代指南。


技术参考

阅读各个规则文件以获取 API 细节和代码示例。

核心动画和时间

媒体

  • rules/assets.md - 用于 public 文件夹资源的 staticFile()
  • rules/videos.md - <Video> 包含修剪、音量、速度、循环、音调
  • rules/audio.md - <Audio> 包含修剪、音量、速度、音调
  • rules/images.md - <Img> 组件(确保渲染前加载)
  • rules/gifs.md - <AnimatedImage> 用于 GIF/APNG/AVIF/WebP
  • rules/fonts.md - 通过 @remotion/google-fonts 使用 Google 字体,通过 @remotion/fonts 使用本地字体

文本和字幕

合成和元数据

高级

媒体工具(Mediabunny)

布局


参考资料


硬性规则

这些规则适用于所有 Remotion 代码。违反将导致输出不正确。

  1. 所有动画由 useCurrentFrame() 驱动。无 CSS 过渡,无 Tailwind animate-* 或 transition-* 类,无 React Three Fiber useFrame()
  2. 使用 Remotion 组件(<Img>、<Video>、<Audio>)而非原生 HTML 元素
  3. 使用 staticFile() 处理 public/ 文件夹中的所有资源
  4. 时间(秒):乘以 useVideoConfig() 中的 fps 以获得帧数
  5. 无第三方动画库驱动运动(禁用它们的动画,改用 useCurrentFrame())
  6. 每个概念必须不言自明。一个零上下文滚动的观众应能仅从视频中理解其价值。任何场景都不应依赖外部知识。文案必须独立承载完整信息。除非简报另有说明,否则始终假设冷受众。

Individual skills in this repo

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

相关技能