---
name: script-polish
description: >
  儿童互动英语剧本润色修改技能。接收审校报告（来自 script-proofread），
  逐条定位问题并对剧本进行精确修改。确保修改不引入新问题，保持全剧一致性。
  **触发场景：**
  (1) 审校报告产出后需要逐条修改剧本
  (2) 编剧提出具体修改意见需要落实到剧本中
  (3) 用户提到「修改剧本」「润色」「根据反馈改」「polish」
---

# 剧本润色修改技能

## 概述
接收审校报告或编剧反馈意见，对剧本进行精确的逐条修改。修改原则：**准确定位、最小改动、一致性保持、改后重审。**

---

## 修改工作流

### Step 1：接收修改输入
- 审校报告（来自 `script-proofread`）
- 或编剧直接在飞书表格中的修订
- 或编剧通过对话提出的具体修改意见

### Step 2：逐条定位与修改
按问题严重程度排序（🔴→🟡→🟢），逐条处理：
1. 在剧本中精确定位问题行
2. 实施最小必要修改
3. 检查修改是否影响上下文（前后各3行）
4. 标记已处理

### Step 3：全局一致性检查
全部修改完成后：
- 重新统计算知识点频次（修改可能影响计数）
- 检查是否有新引入的问题
- 确保所有修改之间不互相矛盾

### Step 4：输出修改版本
- 提供修改前后的对比（diff）
- 标注修改类型和原因

---

## 常见问题修改方案

### NPC单句过长（🔴）
**典型问题：** "We have the whole afternoon to read this adventure book together" (11词)
**修改方法：** 拆分为2-3行短句，每句≤10词
```
修改前：
  Dad | We have the whole afternoon to read this adventure book together.

修改后：
  Dad | We have the whole afternoon.
  Dad | Let's read this adventure book.
```
**注意：** 拆分后检查新行是否需要补充剧情描述行（表情/动作）。

### 知识点词性用错（🔴）
**典型问题：** "This is not fun" (fun指定为名词)
**修改方法：** 改为正确语境的表达
```
修改前：This is not fun.
修改后：This is no fun.
```

### 输入输出顺序颠倒（🔴）
**典型问题：** User在第5行说出了知识点，但直到第20行才有NPC输入
**修改方法：** 
- 方案A：在User输出前插入NPC台词做输入铺垫
- 方案B：将User输出行后移（但需确保剧情逻辑通顺）
- **优先方案A**，在不破坏剧情流的前提下加铺垫

### 对话互动不含知识点（🔴）
**典型问题：** 对话互动行中User台词无知识点
**修改方法：**
- 方案A：将台词改为包含知识点（自然改写，不硬塞）
- 方案B：如果该互动确实不应含知识点，降级为普通台词行

### 知识点集中轰炸（🟡）
**典型问题：** 某一段密集出现3-4个知识点，其他段落空白
**修改方法：**
- 将部分知识点的输入/输出重新分配到其他段落
- 每次出现换语境（场景/说话人/情绪）

### User台词不足（🟡）
**典型问题：** User台词占比低于20%
**修改方法：**
- 将部分NPC的决策台词改为User发言
- 在关键节点增加User的主动判断台词
- **注意：** 增加的台词保持角色性格一致

---

## 修改原则

### 1. 最小改动
每次只改需要改的。不过度重写，不"顺便优化"无关内容。

### 2. 上下文感知
修改前行时检查前后各3行是否受影响：
- 改台词 → 检查下一行的回应是否需要调整
- 改剧情描述 → 检查后续动作描述是否矛盾
- 改知识点位置 → 全剧重新统计频次

### 3. 一致性优先
- 同一角色台词风格前后一致
- 同一知识点标注格式前后一致
- 剧情描述的制作标注风格前后一致

### 4. 改后重审
**每次修改后必须重新跑一轮 `script-proofread` 的核心检查项**，特别是：
- 知识点频次（是否因修改而变化）
- NPC单句长度（是否新增了长句）
- 互动数量（是否因改类型列而变化）

---

## 修改记录格式

每条修改应记录在 `business_knowledge/script_feedback_log.md` 对应分类下：

```
### 日期 — Uxx Lx 修改记录
- 问题：NPC单句过长（行X）
- 修改：拆分 "..." → "..." + "..."
- 结果：✅ 通过 / ⚠️ 需进一步调整
```

---

## 与飞书表格协作

如果剧本在飞书电子表格中：
1. 通过 `feishu-script-writer` 技能读取当前表格数据
2. 本地完成修改
3. 使用 `feishu-script-writer` 的 append 模式追加修改后的版本（或在原位置覆盖）
4. 确保不覆盖编剧在表格中的手动编辑
