Lambdua

Zopia Skills

設計創意v1.1.0
作者:Lambdua更新於 2026-05-11共 4 個版本 · 最新版本釋出於 2026-04-25zopia-skill@clawhub_lambdua/zopia-skill
圖片生成影片處理#分镜#视频生成#图片生成#创作

據 AlphaMoat 統計,截至 2026-09,Zopia Skills 累計下載 3,924 次、獲 0 個星標,在全部 5,078 個 AI 技能中排名第 2,637 位,在「設計創意」分類(512 個)中排名第 246 位。

累計安裝
124
累計下載
3924
星標
-
全站排名
#2,637
全站前 52% · 「設計創意」前 49%
平台累計安裝累計下載星標評論
ClawHub ↗1243722--
SkillHub ↗1233924-—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

主文描述了從劇本、角色和分鏡到影片的創作流程,幷包括專案設定、提交創作要求、跟蹤進度和獲取生成媒體。使用時應核實請求內容和賬號許可權。

資料釋出於 2026-10-29

可以用來做什麼

  • 管理 Zopia 影片或圖片創作專案

什麼時候用

  • 需要設定專案、提交創作需求或跟蹤生成進度時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

概括 Zopia 專案中從劇本到影片的流程,並說明可如何跟蹤進度。

月度資料趨勢

累計下載3924
242222041972026-03 · 累計下載 5152026-05 · 累計下載 30912026-06 · 累計下載 33192026-07 · 累計下載 35872026-08 · 累計下載 37042026-09 · 累計下載 392426-0326-09
星標-
0112026-03 · 星標 -2026-05 · 星標 -2026-06 · 星標 -2026-07 · 星標 -2026-08 · 星標 -2026-09 · 星標 -26-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-093924—-
2026-083704+3.3%-
2026-073587+8.1%-
2026-063319+7.4%-
2026-053091—-
2026-03515—-

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

13 KB · ClawHub v1.1.0
---
name: zopia-skill
description: Zopia AI 视频创作技能 - 通过 Zopia 平台的 AI Agent 进行视频/图片创作。覆盖场景包括:AI 视频生成(文生视频、图生视频)、AI 图片生成(角色设定图、分镜关键帧)、剧本创作(对话/旁白/场景描述)、角色设计、分镜设计、多集连续剧制作。当用户提到 zopia、视频创作、短剧制作、分镜、角色设计、AI 视频生成时应触发。关键判断:只要用户的请求涉及通过 AI 进行系统化的视频创作流程(剧本→角色→分镜→视频),都必须触发此技能。
user-invocable: true
metadata:
  {
    "openclaw":
      {
        "emoji": "🎬",
        "requires":
展開全部(共 303 行)
          {
            "bins": ["python3"],
            "env": ["ZOPIA_ACCESS_KEY"]
          },
        "primaryEnv": "ZOPIA_ACCESS_KEY"
      }
  }
---

# Zopia AI 视频创作

Zopia 是一个项目制的 AI 视频创作平台。每个项目包含完整的创作流水线:**剧本 → 角色 → 分镜 → 视频**,由后端 AI Agent 自动驱动。你通过脚本管理项目、传达用户意图、追踪进度、获取成果。

## 环境配置

```bash
export ZOPIA_ACCESS_KEY="zopia-xxxxxxxxxxxx"   # 必需,30天有效
export ZOPIA_BASE_URL="https://zopia.ai"  # 可选
```

仅使用 Python 标准库,无需额外安装。

## 核心概念

| 概念 | 说明 |
|------|------|
| **Project (Base)** | 创作项目,包含设置、剧集、所有资产。创建时自动生成首集 |
| **Episode** | 剧集,同一项目下可创建多集,每集有独立的剧本/角色/分镜 |
| **Session** | 一次 Agent 对话。异步执行,通过轮询获取进展 |
| **Workspace** | 项目的实时工作区快照,包含角色(entities)、分镜(storyboard)、各媒体的生成状态 |

## 脚本速查

| 脚本 | 用途 | 关键参数 |
|------|------|---------|
| `create_project.py` | 创建项目 | `[名称]` |
| `save_settings.py` | 项目设置 | `--base-id` `--style` `--aspect-ratio` `--video-model` `--storyboard-image-model` `--entity-image-model` ... |
| `send_message.py` | 发送创作指令(异步) | `--base-id` `--episode-id` `消息` |
| `query_session.py` | 查询进展 | `SESSION_ID` `--poll` `--after-seq N` |
| `download_results.py` | 下载媒体资源 | `SESSION_ID` `--output-dir` `--type image\|video` |
| `get_balance.py` | 余额查询 | — |
| `list_projects.py` | 列出项目 | `--page` `--page-size` |
| `manage_episodes.py` | 剧集管理 | `list\|create\|delete` |
| `render_episode.py` | 合成最终视频 | `trigger\|status` `--base-id` `--episode-id` `--poll` |

## 项目设置参考

创建项目后,必须配置基础设置(locale / aspect_ratio / style)才能开始创作。

```bash
python3 {baseDir}/scripts/save_settings.py --base-id BASE_ID \
  --locale zh-CN --aspect-ratio 16:9 --style realistic_3d_cg
```

### 风格

| ID | 说明 |
|----|------|
| `anime_japanese_korean` | 日韩动漫 |
| `realistic_3d_cg` | 3D CG 写实 🔥 |
| `pixar_3d_cartoon` | Pixar 3D 卡通 |
| `photorealistic_real_human` | 真人写实 |
| `3D_CG_Animation` | 3D CG 动画 🔥 |
| `anime_chibi` | Q版可爱 |
| `anime_shinkai` | 新海诚 |
| `anime_ghibli` | 吉卜力 |
| `stylized_pixel` | 像素艺术 |

别名支持:`realistic` → `realistic_3d_cg`,`ghibli` → `anime_ghibli`,`shinkai` → `anime_shinkai`,`pixel` → `stylized_pixel`

### 视频模型 × 生成方式

不同模型支持不同的生成方式(generation_method),不匹配会报错。

| 模型 ID | 名称 | 支持的方式 | 默认 |
|---------|------|-----------|------|
| `generate_video_by_seedance_20` | Seedance 2.0 Pro ⭐ | n_grid, video_ref, multi_ref, multi_ref_v2 | video_ref |
| `generate_video_by_seedance_20_fast` | Seedance 2.0 Fast | n_grid, video_ref, multi_ref, multi_ref_v2 | video_ref |
| `generate_video_by_kling_o3` | Kling O3 | start_frame, n_grid, multi_ref, multi_ref_v2 | n_grid |
| `generate_video_by_kling_v3_0` | Kling V3.0 | start_frame, n_grid | n_grid |
| `generate_video_by_pixverse_c1` | PixVerse C1 | start_frame, multi_ref | start_frame |
| `generate_video_by_hailuo_02` | Hailuo 2.3 | start_frame | start_frame |
| `generate_video_by_wan26_i2v` | Wan 2.6 | start_frame | start_frame |
| `generate_video_by_wan26_i2v_flash` | Wan 2.6 Flash | start_frame | start_frame |
| `generate_video_by_viduq2_pro` | Vidu Q2 Pro | start_frame | start_frame |
| `generate_video_by_viduq3_pro` | Vidu Q3 Pro | start_frame | start_frame |
| `generate_video_by_viduq3` | Vidu Q3 | n_grid, multi_ref, multi_ref_v2 | n_grid |
| `generate_video_by_seedance_15` | Seedance 1.5 Pro | start_frame | start_frame |

### 图片模型

分镜关键帧(`storyboard_image_model`)与角色/场景设定图(`entity_image_model`)使用独立的图片模型,可分别配置。

| 模型 ID | 名称 | 默认场景 |
|---------|------|---------|
| `generate_image_by_nano_banana_2` | Nano Banana 2 | storyboard 默认 |
| `generate_image_by_doubao_seedream_4` | Doubao Seedream 4 | entity 默认 |
| `generate_image_by_nano_banana` | Nano Banana | — |
| `generate_image_by_gpt_image_2` ⭐ | GPT Image 2 | — |

不传则后端使用默认值。传非法 ID 后端会返回 `invalid_storyboard_image_model` / `invalid_entity_image_model` 400 错误,并在响应的 `allowed_values` 字段给出当前可用列表。

### 其他设置

| 字段 | 可选值 |
|------|--------|
| `--aspect-ratio` | `16:9`, `9:16` |
| `--image-size` | `1k`, `2K`, `4K`(注意 1k 小写)|
| `--video-resolution` | `480p`, `720p`, `1080p` |
| `--generation-method` | `n_grid`, `multi_ref`, `multi_ref_v2`, `start_frame`, `video_ref` |
| `--storyboard-image-model` | 见上方"图片模型"表 |
| `--entity-image-model` | 见上方"图片模型"表 |

---

## 典型场景

理解这些场景,才能正确组合脚本完成用户需求。

### 场景 1:用户给出创作需求,从零开始(最常见)

```
1. get_balance.py                          → 确认余额 ≥ 10
2. create_project.py "赛博朋克短剧"        → 拿到 baseId, episodeId
3. save_settings.py --base-id B \
     --locale zh-CN --aspect-ratio 16:9 \
     --style anime_japanese_korean         → 配置项目
4. send_message.py --base-id B \
     --episode-id E "用户的原始描述"        → 拿到 session_id
5. query_session.py S --poll               → 自动轮询直到完成
6. download_results.py S \
     --output-dir ./赛博朋克短剧 \
     --prefix storyboard                   → 自动下载到本地
```

生成完成后**自动执行下载**,不需要用户额外请求。下载目录和前缀根据任务语义自动命名(如分镜用 `storyboard`,角色设定用 `character`,最终视频用 `video` 等)。

**展示时机:** 生成过程中只告知进度("角色图生成中..."、"分镜关键帧 5/8 完成"),**不要提前给出项目链接**。全部完成后,同时给出:**本地文件列表** + **项目链接**(`{ZOPIA_BASE_URL}/base/{baseId}?session_id={sessionId}`,用户可在浏览器中查看和编辑完整项目)。优先使用脚本输出中的 `projectUrl` 字段。

### 场景 2:在已有会话中追加新需求(如"再改一下角色造型")

```
1. send_message.py --base-id B --episode-id E \
     --session-id S "用户的新指令"          → 复用已有会话
2. 轮询 → 下载 → 展示
```

使用同一个 `session_id` 可保持上下文连续。

### 场景 3:在已有项目中继续创作

```
1. list_projects.py                         → 让用户选择项目
2. manage_episodes.py list --base-id B      → 查看剧集列表
3. send_message.py --base-id B \
     --episode-id E "新的创作指令"           → 新建会话
4. 轮询 → 下载 → 展示
```

### 场景 4:多集连续剧制作

一个项目(Project)可以包含多个剧集(Episode)。每集有独立的剧本、角色表、分镜表,但共享项目级设置(风格、画幅、模型)。

**创作流程:**

```
1. create_project.py "我的连续剧"              → 拿到 baseId, episodeId (自动创建第一集)
2. save_settings.py --base-id B ...            → 配置项目(所有剧集共享)

── 第一集 ──
3. send_message.py --base-id B \
     --episode-id EP1 "第一集:主角进入废墟..."  → 创作第一集
4. 轮询 → 下载

── 第二集 ──
5. manage_episodes.py create --base-id B       → 拿到新 episodeId (EP2)
6. send_message.py --base-id B \
     --episode-id EP2 "第二集:发现地下实验室..." → 创作第二集
7. 轮询 → 下载

── 更多剧集:重复步骤 5-7 ──
```

**多集注意事项:**
- 每集有独立的角色和分镜,不会互相干扰
- 如果后续剧集需要沿用前集角色形象,在消息中说明即可(如"延续第一集的角色设定"),后端 Agent 会处理
- 创建新剧集前,建议先确认当前剧集已完成(`status: "completed"`)
- 可以随时用 `manage_episodes.py list --base-id B` 查看所有剧集状态
- 删除剧集是不可逆操作,会清除该集所有内容

### 场景 5:将分镜视频合成为最终 MP4

所有分镜视频生成完毕后,可一键触发云端渲染,将所有片段按时间轴顺序合成为完整 MP4 文件。

```
1. render_episode.py trigger \
     --base-id B --episode-id E            → 拿到 render_id,渲染开始(异步)
2. render_episode.py status \
     --base-id B --episode-id E \
     --render-id RENDER_ID --poll          → 自动轮询,完成后输出 video_url
```

**触发时机:** 用户明确要求「导出视频」「合成 MP4」「生成完整视频」时才触发。分镜视频生成阶段不要触发。

**渲染前提:** storyboard 中至少有一个分镜有 video_urls(即已完成视频生成),否则渲染内容为空。

**完成标志:** `status: "completed"` 且返回 `video_url`(S3 直链,可直接下载或分享)。

**轮询说明:** 渲染由 Remotion Lambda 执行,通常需要 1–5 分钟,`--poll` 参数每 8 秒检查一次进度(`progress` 字段 0→1),超时上限 10 分钟。

---

## 读懂 workspace 进度

`query_session.py` 返回的 `workspace` 是项目的实时快照,用来判断创作走到哪一步了:

```json
{
  "status": "running",
  "workspace": {
    "entities": [{"name": "角色A", "images_status": "done", "image_urls": [...]}],
    "storyboard": {
      "total_shots": 8,
      "images": {"done": 5, "pending": 3, "failed": 0, "none": 0},
      "videos": {"done": 2, "pending": 1, "failed": 0, "none": 5}
    },
    "shots": [{"index": 1, "description": "...", "image_urls": [...], "video_urls": [...]}]
  }
}
```

**怎么读:**

- `status: "running"` + workspace 空 → 刚开始,Agent 还在理解需求
- `entities` 出现,`images_status: "pending"` → 正在生成角色图
- `storyboard.images.pending > 0` → 正在生成分镜关键帧
- `storyboard.videos.pending > 0` → 正在生成视频片段
- `status: "completed"` → 全部完成,检查有无 failed 项

**轮询策略:**
- **间隔**:每 8 秒查询一次
- **增量拉取**:首次 `--after-seq 0`,后续传上次拿到的最大 seq 值
- **完成判断**:`status` 变为 `completed`(全部完成)或 `idle`
- **超时**:连续 3 分钟无新进展,告知用户「生成时间较长」并给出项目链接供自行查看,停止轮询
- **错误重试**:单次查询失败可重试 1 次;连续 3 次失败则停止并告知用户
- **自动轮询**:使用 `--poll` 参数可自动执行上述策略,无需手动循环

---

## 你的角色

Zopia 后端有完整的 AI 创作 Agent(对模型能力、prompt 工程、创作流程远比用户侧专业),你负责的是**项目管理和需求传达**。

**你要做的三件事:**
1. **配置** — 根据用户意图创建项目,选择合适的风格、模型、画幅
2. **传话** — 把用户的原始需求原封不动发给后端 Agent
3. **取件** — 追踪进度,在关键节点通知用户,完成后自动下载结果并展示

**不要做的事:**
- 不替用户扩写、润色、翻译创作描述(用户说"帮我推演分镜",就直接传这句话,不要自己先写个分镜表再逐条发)
- 不自行拆分任务(用户说"生成8个分镜图",发一条消息给后端,后端自己拆解)
- 不在消息中添加自己编的描述词(如"超写实风格,电影级光影,8K分辨率")

**正确:**
```
用户说:「帮我做一个赛博朋克风格的短剧,讲一个机器人在废墟中寻找最后一朵花」

→ create_project.py "赛博朋克短剧"
→ save_settings.py --base-id B --locale zh-CN --aspect-ratio 16:9 --style anime_japanese_korean
→ send_message.py --base-id B --episode-id E "帮我做一个赛博朋克风格的短剧,讲一个机器人在废墟中寻找最后一朵花"
→ 轮询 → 下载到 ./赛博朋克短剧/ → 展示文件列表 + 项目链接
```

**错误:**
```
❌ 先自己写了个详细的 5 场剧本和分镜描述
❌ 把自己编的内容逐条发给后端
❌ 在用户描述后面追加 "cinematic lighting, 8K, ultra detailed"
```

---

## 错误码速查

| 状态码 | 含义 | 处理 |
|--------|------|------|
| 400 | 参数缺失或设置不合法 | 检查必填字段和枚举值 |
| 401 | Token 无效或过期 | 提醒用户重新获取 |
| 402 | 余额不足 | 提醒充值 |
| 403 | 无权限 | 检查 baseId 归属 |
| 404 | 资源不存在 | 检查 ID 是否正确 |
| 409 | 会话执行中 | 等待当前会话完成再发新消息 |

「設計創意」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。