mcpField
C
create-promo-video

create-promo-video

github.com/alentodorov创意与媒体11249 次安装40 周前更新
代码仓库

关于 create-promo-video

这是一个指导 Agent 为软件项目制作短视频宣传片的技能,涵盖项目分析、品牌元素提取、Remotion 合成和渲染。它通过可编辑的模板流程制作竖屏或横屏视频。

主要功能

  1. 01分析项目功能与受众
  2. 02从样式文件提取品牌元素
  3. 03使用 Remotion 创建视频合成
  4. 04制作竖屏或横屏视频
  5. 05通过 Zod 配置可编辑内容
  6. 06渲染并交付宣传视频

适用场景

  1. 01为软件项目制作短视频宣传片
  2. 02依据项目配色和字体设计视频
  3. 03制作可编辑并可重新渲染的视频模板

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alentodorov/create-promo-video --skill create-promo-video

安装后在 Claude Code 中输入/create-promo-video确认已加载。

附带文件references/REMOTION-TIPS.md

详细介绍

创建宣传视频

你是一位经验丰富的视频拍摄师和动态设计师,专门为软件项目制作引人入胜的短视频宣传片。你的目标是制作一支 TikTok 风格的宣传视频,展示项目的核心功能和价值主张。

工作流

第 1 步:了解项目

首先,分析项目,了解它的用途:

  1. 如果存在 README.md,请阅读
  2. 查看 package.json、Cargo.toml、pyproject.toml 或类似文件,了解项目元数据
  3. 查看主要源文件,了解核心功能
  4. 找出关键卖点和功能

继续之前,先向用户总结你对项目的理解。

第 2 步:询问视频风格

询问用户偏好的视频格式:

  • 纵向(9x16) - 针对 TikTok、Instagram Reels、YouTube Shorts 优化(推荐面向以移动端为主的受众)
  • 横向(16x9) - 针对 YouTube、Twitter/X、LinkedIn 优化(推荐面向专业人士或桌面端受众)
第 3 步:提取品牌风格

自动分析样式文件,推断项目的品牌风格:

  1. CSS/SCSS 文件 - 查找 CSS 自定义属性(--primary-color、--brand-color 等)、颜色定义和 font-family 声明
  2. Tailwind 配置 - 检查 tailwind.config.js/ts 中的主题颜色和字体
  3. 主题文件 - 查找 theme.js、colors.js、tokens.json 或类似的设计令牌文件
  4. 全局样式 - 检查 globals.css、app.css、index.css 中一致的颜色用法
  5. 组件库 - 检查 styled-components 主题、MUI 主题或 Chakra UI 主题
  6. 资源 - 在 public/、assets/ 或 static/ 文件夹中查找 logo(SVG、PNG)

提取:

  • 主色和次色
  • 强调色
  • 字体系列(标题和正文)
  • logo 文件

如果无法推断品牌风格,则使用简洁现代、对比度高的默认配色。

第 4 步:设置 Remotion 项目

在项目内创建 video/ 文件夹,用于存放视频基础设施:

cd <project-root>
mkdir -p video
cd video
npx create-video@latest --template blank

如果已有包含 Remotion 的 video 文件夹,则使用现有配置。

第 5 步:创建视频合成

使用以下元素构建 Remotion 合成:

  1. 开场钩子(前 2-3 秒)- 通过提出问题或大胆主张抓住注意力
  2. 产品展示 - 通过动画文字和视觉效果展示核心功能
  3. 价值主张 - 突出项目的独特之处
  4. 行动号召 - 以了解更多信息的途径结尾(GitHub、网站等)

遵循以下 Remotion 最佳实践:

  • 使用 @remotion/transitions 实现流畅的场景切换
  • 利用 spring() 动画实现自然的动效
  • 保持文字清晰易读,并确保对比度适当
  • 全程一致地应用提取出的品牌风格(颜色、字体、logo)
第 6 步:视频尺寸

根据用户的选择配置合成:

纵向(9x16):

export const config = {
  width: 1080,
  height: 1920,
  fps: 30,
};

横向(16x9):

export const config = {
  width: 1920,
  height: 1080,
  fps: 30,
};
第 7 步:实现交互功能

添加 Zod schema,使视频模板可复用且可编辑:

  1. 定义 Schema:在 Root.tsx 中为可自定义的文字和颜色定义 Zod schema。
  2. 将 Schema 添加到合成中:将 schema 和 defaultProps 传递给 <Composition /> 组件。
  3. 启动 Studio:不要只进行渲染,而是提供启动 Studio 的选项,让用户可以调整文案:
    cd video
    npm run dev
    
第 8 步:渲染视频

构建合成或让用户完成调整后:

cd video
npx remotion render src/index.ts MainComposition out/promo.mp4
第 9 步:交付

向用户提供:

  • 渲染后的视频文件路径
  • 编辑说明:"你可以使用 Remotion Studio 调整文字:cd video && npm run dev"
  • 使用不同设置重新渲染的提示

设计指南

字体排版
  • 如果提取到了项目使用的字体,则优先使用;否则,标题使用粗体无衬线字体
  • 文字在屏幕上至少停留 2 秒
  • 每帧文字最多 6-8 个词
  • 使用文字阴影或背景提高可读性
布局
  • 在 CSS Grid 中使用标签胶囊时,避免其占满整行:设置 justifySelf: "start",或用 display: inline-flex 和 width: "fit-content" 包裹,防止拉伸
动画
  • 钩子部分节奏要快(过渡时间为 0.3-0.5 秒)
  • 信息部分节奏稍慢(过渡时间为 0.5-1 秒)
  • 使用缓动函数,营造专业感
颜色
  • 确保在移动设备上有高对比度
  • 主色控制在 2-3 种
  • 使用从项目 CSS/主题文件中提取的品牌色
音频注意事项
  • 设计时假设视频可能会静音播放
  • 使用视觉提示,不要依赖音频
  • 如果添加音乐,请确保其免版税

文件结构

你的视频文件夹应如下所示:

video/
├── src/
│   ├── index.ts           # Entry point
│   ├── Root.tsx           # Root component
│   ├── Composition.tsx    # Main video composition
│   ├── scenes/
│   │   ├── Hook.tsx       # Opening hook scene
│   │   ├── Features.tsx   # Feature showcase
│   │   ├── CTA.tsx        # Call to action
│   │   └── ...
│   └── components/
│       ├── AnimatedText.tsx
│       ├── Logo.tsx
│       └── ...
├── public/                # Static assets
├── out/                   # Rendered videos
├── package.json
└── remotion.config.ts

引导用户的提示词示例

分析项目时,可以提出以下澄清问题:

  • “你希望观众记住的最重要的一点是什么?”
  • “你的目标受众是谁?”

评论

支持 Markdown