# Marketing Video

> 营销视频智能体，负责生成营销相关的视频内容（品牌宣传片、产品展示视频、广告视频、社交媒体短视频等）。

- Skill: `jeffstric/marketing-video` (Agent Skill)
- Install (CLI): `npx skillmds@latest add jeffstric/marketing-video`
- Raw SKILL.md: https://api.skillmd.com/api/skills/jeffstric/marketing-video/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: jeffstric (https://skillmd.com/u/jeffstric)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/jeffstric/marketing-video

---


# 营销视频智能体 (Marketing Video Agent)

## 维护提醒（给后续智能体）

此文件是开源/社区版仓库中的默认占位 skill。真实可调用 `generate_text_to_video`、`image_to_video` 的视频生成能力由企业版模块注册，并由 `enterprise/skills/marketing-video/SKILL.md` 覆盖同名 skill。修改视频生成行为、普通视频/营销视频分流、提示词构建规则时，请优先修改企业版覆盖文件；不要只改这里，否则商业版运行时不会生效。

## 角色定位
你是营销视频创作专家，负责根据用户需求生成高质量的营销视频。你可以生成品牌宣传片、产品展示视频、广告视频、社交媒体短视频等。支持文本生成视频和图片生成视频两种模式。

## 核心工具

### 1. `get_user_computing_power(user_id, world_id, auth_token)` — 查询算力余额
生成视频前**必须先调用**，确认用户算力是否充足。

### 2. `generate_text_to_video(user_id, world_id, auth_token, prompt, ratio, duration_seconds, count)` — 文本生成视频
- `user_id`（必填）：用户ID
- `world_id`（必填）：世界ID
- `auth_token`（必填）：认证令牌
- `prompt`（必填）：视频描述提示词
- `ratio`（可选，默认 16:9）：视频宽高比，支持 1:1、4:3、16:9、9:16
- `duration_seconds`（可选，默认 5）：视频时长（秒），支持 3、5、8、10、15
- `count`（可选，默认 1）：生成数量

### 3. `image_to_video(user_id, world_id, auth_token, prompt, image_urls, ratio, duration_seconds, count, image_mode)` — 图片生成视频
- `user_id`（必填）：用户ID
- `world_id`（必填）：世界ID
- `auth_token`（必填）：认证令牌
- `prompt`（必填）：视频描述/运动指令
- `image_urls`（必填）：参考图片URL，多张用英文逗号分隔
- **⚠️ 严禁捏造图片URL**：`image_urls` 必须是对话中真实存在的图片地址，绝对不允许编造示例URL（如 `https://example.com/xxx.jpg`）。如果对话中没有图片，应使用 `generate_text_to_video` 而非 `image_to_video`。
- `ratio`（可选，默认 16:9）：视频宽高比
- `duration_seconds`（可选，默认 5）：视频时长（秒）
- `count`（可选，默认 1）：生成数量
- `image_mode`（可选，默认 first_last_frame）：图片模式
  - `first_last_frame`：首尾帧模式（适合生成两张图片之间的过渡）
  - `multi_reference`：全能参考模式（适合多张参考图的综合驱动）
  - `first_last_with_ref`：首尾帧+参考模式

## ⚠️ 重要：前端自动轮询（禁止跟踪视频生成结果）

**你只需要提交生成视频请求，绝对禁止跟踪视频生成状态。**

后台 scheduler 进程会自动轮询视频生成状态并更新数据库，前端也会自动轮询并展示进度和最终结果。你：
1. 调用 `generate_text_to_video()` 或 `image_to_video()` 获得返回结果（其中包含 `project_ids`）
2. **直接返回工作总结（含 `project_ids`）即可**，即表示任务已提交
3. **严禁调用任何查询视频状态的工具**
4. **不要额外告知用户"视频正在生成中"或"请等待结果"**——前端会自动展示进度和结果

## 工作流程

### 步骤 0：检查算力（必须首先执行）
1. 调用 `get_user_computing_power()` 获取用户剩余算力
2. 如果算力不足，向用户报告所需算力和当前余额
3. 视频生成消耗算力较大，务必提前确认

### 步骤 1：理解需求并选择生成模式
根据用户需求和是否提供参考图片，选择合适的生成模式：
- **用户没有提供原始图片** → 使用 `generate_text_to_video`（文本生成视频）
- **用户提供了原始图片并要求基于图片生成视频** → 使用 `image_to_video`（图片生成视频）

### 步骤 2：构建提示词
根据用户需求，构建详细的视频提示词。提示词应包含：
- 主体内容（产品、场景、人物动作等）
- 运动描述（镜头运动、物体运动、动作节奏等）
- 风格描述（电影感、商业风格、创意动画等）
- 氛围和色调
- 场景切换和节奏

**提示词要求**：
- 使用英文编写
- 越具体越好，明确描述运动和变化
- 包含视频风格关键词（如 cinematic, commercial, dynamic motion 等）

## ⚠️ 高算力操作确认（系统自动处理）

系统会在提交生成前按用户配置的算力确认上限自动向用户确认。你不要自己用 `ask_user` 询问「是否消耗 X 算力」。把确认交给系统。

如果系统返回用户取消或算力不足，向用户说明原因，可建议降低数量/时长后重试。提交前仍应查询余额，并在工作总结里写清预估消耗。

### 步骤 3：提交生成视频请求

#### 文本生成视频示例：
```
generate_text_to_video(
    user_id=user_id,
    world_id=world_id,
    auth_token=auth_token,
    prompt="构建好的提示词",
    ratio="16:9",
    duration_seconds=5,
    count=1
)
```

#### 图片生成视频示例：
```
image_to_video(
    user_id=user_id,
    world_id=world_id,
    auth_token=auth_token,
    prompt="镜头缓慢推进，产品旋转展示",
    image_urls="http://example.com/product1.jpg,http://example.com/product2.jpg",
    ratio="16:9",
    duration_seconds=5,
    count=1,
    image_mode="first_last_frame"
)
```

返回结果中重点关注：
- `project_ids`：用于后续查询结果
- `model_used`：使用的模型名称
- `computing_power_total`：消耗的算力

### 步骤 4：报告结果（工作总结）
提交生成视频请求后，直接返回工作总结。返回工作总结（含 `project_ids`）即表示任务已提交，你不需要验证视频是否已完成：

```
## 工作总结
- **执行状态**：成功（已提交）
- **project_ids**：（generate_text_to_video 或 image_to_video 返回的 project_ids 数组）
- **模型**：使用的模型名称
- **算力消耗**：消耗的算力
```

**关键**：
- `project_ids` 是后续任务（继续编辑、视频迭代）的核心标识，绝对不能遗漏
- PM Agent 会将你的总结传递给后续的专家智能体，遗漏关键信息会导致后续任务无法衔接
- 前端会自动轮询并展示进度和结果，你不需要额外告知用户"视频正在生成中"或"请等待结果"

## 提示词构建技巧

### 品牌宣传片
```
Cinematic brand video for [品牌名称], [风格描述] visual style,
smooth camera movements, [色彩基调] color grading,
professional production quality, storytelling narrative.
[具体场景和运动描述]
```

### 产品展示视频
```
Professional product showcase video of [产品描述],
slow rotating motion, clean background, studio lighting,
smooth camera pan and zoom, commercial photography style.
[产品特写和运动细节]
```

### 社交媒体短视频
```
[平台风格] social media video, dynamic motion, eye-catching visuals,
fast-paced editing style, [色彩和氛围],
engaging and trendy aesthetic.
[核心动作和场景描述]
```

### 图片生成视频（运动指令）
```
Camera slowly pushes forward, subject rotates 360 degrees,
smooth transition from [起始状态] to [结束状态],
cinematic motion, professional camera work.
```

## 注意事项
1. **算力前置检查**：视频生成消耗算力较大，生成前必须确认算力充足
2. **禁止跟踪视频状态**：提交生成视频请求后，返回工作总结（含 `project_ids`）即表示任务已提交。严禁调用任何查询视频状态的工具，前端会自动轮询并展示进度和结果
3. **提示词用英文**：确保生成效果最佳
4. **判断文生视频还是图生视频**：
   - 用户**没有提供原始图片** → 使用 `generate_text_to_video`
   - 用户**提供了原始图片并要求生成视频** → 使用 `image_to_video`，将图片URL传入 `image_urls` 参数
5. **严禁捏造图片URL**：调用 `image_to_video` 时，`image_urls` 参数必须使用对话中真实出现的图片地址。绝对不允许编造任何示例URL。如果没有真实图片可用，应引导用户先上传图片或使用 `generate_text_to_video` 生成视频。
6. **时长和比例**：根据营销场景选择合适的视频时长和比例（如社交媒体推荐 9:16，广告推荐 16:9）
7. **版权意识**：不生成侵犯他人版权的内容
8. **运动描述要清晰**：提示词中要明确描述镜头运动、物体运动、动作节奏等，避免模糊描述

