# Storyboard Review

> 分镜二次审查（双 Agent 协作）：主 agent 写分镜/提示词 → 审查 agent B 6 维对标剧本 → 自动迭代直到零遗漏。

- Skill: `punyko8/storyboard-review` (Agent Skill)
- Install (CLI): `npx skillmds@latest add punyko8/storyboard-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/punyko8/storyboard-review/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: Punyko8 (https://skillmd.com/u/punyko8)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/punyko8/storyboard-review

---


# 分镜二次审查（双 Agent 协作）

版本：v3
日期：2026-07-01
运行方式：subagent

> **核心**：主 agent 写分镜/提示词后，spawn 独立审查 agent B 做 6 维对标，自动迭代直到无遗漏或满 3 轮。**剧本→分镜、分镜→提示词两阶段都用这个 skill。**

## 🚨 最关键的规则：自动 LOOP，不停！

```
Agent A 写分镜 → spawn Agent B 审查 → B 报 🔴 → 【立刻补！不等！】 → 再审 → 还有 🔴 → 【再补！】 → 再审 → 无 🔴 或 3 轮 → 端给大D
```

**Agent A 的自动补漏循环规则**：
1. 收到 Agent B 报告后，**立刻执行补漏**（不返回给用户，不等待用户确认）
2. 补完立刻 spawn Agent B 下一轮审查
3. 只有当 `Decision = terminate`（无 🔴）或达到 3 轮时，**才把最终结果发给大D**
4. **中间任何一轮都不要发给大D**，大D 只看到最终结果

## 大D 强约束（永久规则）

1. **漏对白 = 🔴 必补**（不分关键/反应，任何对白漏都必补）
2. **漏反应 = 🔴 必补**（任何反应漏都必补）
3. **漏细节 = 🔴 必补**（颜色/材质/形状/表情/动作都必补）
4. **加细节 = 检验后跟剧本"完全一样"**；只有锦上添花的才用 🟢
5. **🟢 锦上添花用蓝色标记**（`🟢🔵`），大D 一眼能看
6. **不能瞎加**（违反设定/违反剧情的 = 错，不是 🟢）
7. **🔴 必补项 Agent A 直接补，不等大D 拍板** —— 只有 🟡（商量项）和 🟢🔵（有争议项）才需要大D 确认
8. **中间过程不发给大D** —— 只在 loop 终止后发最终结果

## 适用阶段

| 阶段 | A 写的 | B 审的对照 | 审查维度 |
|------|--------|-----------|---------|
| 分镜 | 分镜头脚本（飞书 doc table） | 原始剧本（飞书 docx） | 剧情/对白/动作/反应/道具/情绪转折 |
| 提示词 | Seedance 提示词（飞书 doc） | 分镜头脚本（飞书 doc table） | 镜头内容/角色描述/动作/声音设计/时间/质量约束 |

## 核心原则

**还原度第一**：分镜必须完全还原剧本内容。少一个表情、少一句对白、少一个情节都不行。

**加戏要慎重**：除非加上去能整体提升很多，否则不要加剧本里没有的内容。如果加了，B 要在报告里标明"额外添加"并评估必要性。

## 双 Agent 角色

| Agent | 角色 | 职责 | 限制 |
|-------|------|------|------|
| 🎬 **Agent A（主 agent）** | 分镜/提示词写作者 + 自动补漏者 | 写分镜 → 收到 B 报告后立刻补 🔴 → 再审；或写提示词 → B 审查 → 补漏 → 再审 | 🔴 项直接补，🟡/🟢🔵 留给大D |
| 🧐 **Agent B（审查 agent）** | 专业审计员 | 对比剧本 vs 分镜（或分镜 vs 提示词），出差异报告 | 不修改任何 doc，只读本地出报告 |

## 审查 6 维度

| 优先级 | 维度 | 检查什么 |
|--------|------|---------|
| 1 | 🎬 剧情 | 漏整段/漏情节单元/漏转折点 |
| 2 | 💬 对白 | 所有对白是否完整一字不差 |
| 3 | 🏃 动作 | 每个角色的关键动作/交互 |
| 4 | 😊 反应 | 表情/神态/微动作 |
| 5 | 🧸 道具 | 颜色/材质/形状/在谁手里 |
| 6 | 📈 情绪转折 | 角色情绪变化是否还在 |

### 提示词阶段额外审查维度

| 维度 | 检查什么 |
|------|---------|
| 镜头内容 | 提示词里的时间分段是否对齐分镜的每个镜号 |
| 角色描述 | 外观/动作/反应是否正确复述 |
| 声音设计 | 是否包含「生成人声与音效，不生成 BGM」 |
| 时间 | 每段时长是否在 15 秒以内 |
| 质量约束 | 是否有质量约束（不出现人类、角色一致等） |

## 分级标注

| 标色 | 含义 | 判断标准 |
|------|------|---------|
| 🔴 **必补** | 剧本有→分镜没有的 | 漏对白（任何一句）、漏关键动作、漏表情/微动作、漏道具细节、违反角色设定 |
| 🟡 **商量加** | 分镜有→剧本没有的（即加戏） | 先判断必要性：✨ = 提升很大，可保留；❌ = 没意义，建议删 |
| 🟠 **冗余** | 能删不删的镜头/段落 | 重复信息、撑时长但与主线无关 |
| 🟢🔵 **锦上添花（大D 审）** | 剧本没有但分镜/提示词合理添加 | 设定 doc 里有但剧本没提的细节、动作具体化；蓝色标注让大D 一眼看到 |
| 🟢 **OK** | 拆镜/调时长/小调整 | 没问题 |

**判定规则**：
- **只要剧本写了，分镜就要有**——剧本写了"瞪着圆圆的眼睛"，分镜不能只写"对视偷笑"
- **只要剧本没写，分镜加上去了，就是加戏**——必须评估必要性
- **"提升很大"的标准**：删掉这段，观众不会感受到任何叙事/情感损失 → 删掉。删掉会损失 → 可保留但要标明。

## 工作流程（拉本地 + 改前/改后 fetch 验证）

```
1. 【fetch】fetch 飞书分镜 block → 存本地 memory/.tmp_storyboard_actX.md
   同时 fetch 飞书剧本 section → 存本地 memory/.tmp_script_actX.md

2. 【审查】spawn Agent B 读本地 storyboard + script，出报告
   subagent 配置：lightContext=True，model=zhipu/glm-5.2

3. 【判断】Agent A 解析 B 的报告，取 Decision：
   - terminate → 发最终报告给大D，结束
   - continue 且轮次 < 3 → 进入第 4 步（补漏）

4. 【补漏】Agent A 逐条补 🔴 项：
   - 直接在飞书 doc 上改（str_replace / block_replace / insert）
   - 每补完一条，重新 fetch 验证
   - 操作间隔 1s 防 429

5. 【再审查】回到第 1 步，下一轮

6. 【终止】发最终报告给大D
```

## Agent B 输出格式

```
[Review B - 幕X - 第N轮]

## 🔴 必补

| # | 维度 | 剧本原文 | 分镜位置 | 建议 |
|---|---|---|---|---|

## 🟡 跟大D 商量

| # | 维度 | 剧本原文 | 分镜位置 | 建议 |
|---|---|---|---|---|

## 🟠 冗余

| # | 维度 | 分镜原文 | 建议 |
|---|---|---|---|

## 🟢🔵 锦上添花（大D 审）

| # | 维度 | 剧本原文 | 分镜位置 | 备注 |
|---|---|---|---|---|

## 🟢 OK

| # | 维度 | 备注 |
|---|---|---|

[Statistics]
🔴 X 项 / 🟡 Y 项 / 🟠 Z 项 / 🟢🔵 W 项 / 🟢 K 项
[/Statistics]

[Decision]
terminate | continue
[/Decision]

[Reason]
<简要解释>
[/Reason]
```

## 终止条件

- **terminate**：无 🔴 必补项，且 B 认为可交付
- **强制终止**：第 3 轮迭代完成后强制终止，未解决的 🔴 项降级为 🟡 列在最终报告里

## 最终报告格式（发给大D）

```
## 分镜审查完成 — [项目名]

| 轮次 | 🔴 | 🟡 | 🟠 | 🟢🔵 | 🟢 | 状态 |
|------|----|----|----|------|----|------|
| 第1轮 | 32 | 4 | 1 | 0 | 8 | 自动补漏中 |
| 第2轮 | 5 | 2 | 0 | 3 | 0 | 自动补漏中 |
| 第3轮 | 0 | 0 | 0 | 0 | 0 | ✅ 通过 |

📊 总耗时：XX 分钟
✅ 分镜审查通过，无遗漏

### 🟡 待大D 确认
（如果有，列出来）

### 🟢🔵 大D 审
（如果有，列出来）
```

## 通用规则

- A 和 B 都用中文交流，分镜本身的视觉提示词（画面内容/动作描述）保持中文
- B **禁止修改飞书 doc**，任何修改由 A 执行
- B 抓不全内容时逐幕 fetch，不依赖一次性全文抓取
- 轮次细节：第 1 轮 B 出完整报告 → A 修 doc → 第 2 轮 B 仅检查 🔴 项的修复情况 → 若还有遗留则第 3 轮
- 每轮 B 的 Session 末尾用 `sessions_send` 把报告发给 A 的 session
- **严格把关**：B 宁可多报一个可疑遗漏，也不要放过任何一个真遗漏
- 改飞书 doc 前先 fetch 拿 baseline block_id，改后 fetch 验证新内容
- 验证失败：对比改前改后内容，一样则重试 1 次，还失败就报告大D
- Agent B 独立 context（`lightContext=True`）——看不到主对话，保证独立判断
- **加错也算错**：违反设定的"加"算 🔴

## 跟 first-principles-storyboard / seedance-prompt-zh 的关系

| Skill | 定位 | 什么时候用 |
|-------|------|-----------|
| first-principles-storyboard | 从 0 到 1 创作分镜 | 写分镜时 |
| seedance-prompt-zh | 分镜→Seedance 提示词 | 写提示词时 |
| **storyboard-review** | 写完后质检（两阶段都用） | 写完后 |

**推荐流程**：
1. 用 `first-principles-storyboard` 写分镜
2. 用 `storyboard-review` 审查分镜 vs 剧本
3. 改完后进入提示词阶段
4. 用 `seedance-prompt-zh` 写提示词
5. 用 `storyboard-review` 审查提示词 vs 分镜
6. 改完出最终版本

## 实际调用示例

主 agent（你是 A）写完分镜后，spawn 一个 B：

```
sessions_spawn(task="用 storyboard-review 审查拖鞋一家的分镜。剧本 doc_token=XXX，分镜 doc_token=YYY。你现在是 Agent B，下面是我的分镜 doc，请出审查报告。", model="zhipu/glm-5.2", runtime="subagent")

然后 sessions_yield 等 B 的 report。

B 报告回来后修 doc，再 spawn 第二轮。
```

