---
name: podcast-script
description: 将 Markdown 文章转换成 N 人播客脚本（1～4人），输出为 .txt 文件保存至当前项目的 markdown/ 目录。触发条件：用户提到"转成播客"、"生成播客脚本"、"把这篇文章做成播客"、"播客对话"、"podcast script"、"N个人的播客"，或者上传了一个 markdown 文件并希望以播客形式呈现。即使用户只说"帮我把这篇文章转成播客"，也应使用本 skill。默认输出中文脚本，除非用户明确指定其他语言。
---

# Podcast Script Generator — 播客脚本生成 Skill

## 功能定位

将任意 Markdown 文章转换为自然、真实、有节奏感的多人播客对话脚本：

- 支持 **1～4 位主持人/嘉宾**（默认 2 人）
- 默认输出**中文**，用户指定语言时切换
- **保留英文术语**，不强行翻译（如 token、agent、GPT、ROI、API 等）
- 输出格式：纯文本 `.txt`，保存到 `markdown/` 目录

---

## 执行流程

### Step 1：读取输入

从用户提供的 Markdown 文件（或消息中的内容）提取：

1. **文章核心议题**：主题是什么？有哪些关键论点？
2. **重要数据与案例**：哪些事实/数字值得在对话中重点提及？
3. **文章结构段落**：有几个自然节点适合转化为对话切换点？
4. **英文术语清单**：列出所有需要保留的英文词汇（不翻译）

用户如果没有指定人数，默认使用 **2 人**。

---

### Step 2：设计主持人角色

根据人数分配角色，风格要有差异化，形成自然的对话张力：

| 人数 | 角色分工建议 |
|------|------------|
| 1 人 | 独白式主持，自问自答，穿插感慨和停顿 |
| 2 人 | 一位主持人（引导节奏）+ 一位嘉宾（补充深度/提出疑问） |
| 3 人 | 主持人 + 技术嘉宾（偏专业） + 行业嘉宾（偏实践/投资） |
| 4 人 | 主持人 + 3位嘉宾，每人代表不同视角（乐观/保守/中立/行动派） |

为每位 speaker 设定：
- **姓名**（中文名，自然亲切）
- **一句话身份定位**（开场时自报家门）
- **性格标签**：如"喜欢追问细节"、"善于大局观类比"、"偶尔质疑共识"

---

### Step 3：撰写播客脚本

#### 脚本结构

```
[开场] 主持人热场，介绍今天的话题和嘉宾 —— 约 5～8 轮对话
[正文] 按文章段落展开讨论，每个核心论点对应一轮对话 —— 占脚本 70%
[收尾] 总结观点、展望或留下开放性问题 —— 约 3～5 轮对话
```

#### 脚本格式

每行固定格式：

```
Speaker X（姓名）: [对话内容]
```

示例：

```
Speaker 1（林晓）: 大家好，欢迎来到今天的节目。我是主持人林晓，今天我们聊一个最近在科技圈很火的话题——token 到底是什么？为什么有人说它是 AI 时代的新货币？我旁边坐着两位嘉宾，先请两位自我介绍一下。

Speaker 2（陈博）: 我是陈博，在一家 AI 创业公司做产品，日常跟 API、token 计费打交道，可以说是每天都在算 token 的成本。

Speaker 3（吴静）: 我是吴静，做二级市场投资，最近一直在研究 AI 产业链的投资逻辑，token 出海这个叙事让我很感兴趣。

Speaker 1（林晓）: 好，那我们直接切入。陈博，你先给我们普及一下，token 到底是什么？
```

#### 对话写作原则

**自然性**：
- 允许口语化表达：「对对对」「你说的这个…」「等等，我插一句」「这让我想到…」
- 允许对话打断、接话、情绪性反应（但不夸张）
- 避免每句话都是完整陈述句，要有问句、感叹、追问

**节奏感**：
- 每个 speaker 发言长度控制在 **2～6句话**，避免一人独白过长
- 每隔 4～6 轮切换话题时，由主持人做过渡（如"刚才说的是…，我们再聊聊…"）
- 在重要数据或反常结论出现时，嘉宾要有反应（惊讶/质疑/共鸣）

**信息密度**：
- 不要把文章所有内容都塞进去，选**最有讨论价值**的 5～8 个核心点展开
- 数据要口语化呈现：不说"增长了159%"，说"差不多翻了一倍半"或精确说"159%，快翻倍了"
- 专有名词第一次出现时，嘉宾或主持人要顺带一句简短解释

**英文术语保留规则**：
- 不翻译：token、agent、API、prompt、output、input、cache、LLM、ROI、ARR、MoE、benchmark 等
- 自然融入中文句子中：「跑一个 agent 任务消耗的 token 量…」
- 首次出现时可加一句口语解释，如「token，就是模型处理文字时的最小计量单位」

---

### Step 4：质量自检

输出前检查：

- [ ] 每位 speaker 的发言风格是否有差异（不能所有人说话一个腔调）？
- [ ] 有没有连续超过 6 句的独白（破坏对话感）？
- [ ] 关键数据是否用口语化方式表达？
- [ ] 英文术语是否保留且未被翻译？
- [ ] 开场是否自然介绍了嘉宾和话题？
- [ ] 结尾是否有收束感（总结、展望或开放问题）？
- [ ] 脚本整体长度是否合理？（2人约 40～60 轮对话；3～4人适当增加）

---

### Step 5：保存文件

```
输出路径：markdown/podcast-{文章标题关键词}-{人数}speakers.txt
```

示例：`markdown/podcast-token-economics-2speakers.txt`

- 如果 `markdown/` 目录不存在，先用 `bash_tool` 创建：`mkdir -p markdown`
- 文件名用小写英文或拼音，空格用短横线替代
- 用 `create_file` 工具写入，完成后用 `present_files` 展示给用户

---

## 特殊情况处理

**1 人独白播客**：

去掉 Speaker 编号差异，改为单人自言自语风格，加入停顿感：

```
Speaker 1（主持人姓名）: 今天想聊一个问题……其实说起来，这件事让我想了很久。[停顿] token，这个词最近出现的频率越来越高……
```

**用户指定其他语言**：

将所有中文对话内容替换为目标语言，但 **专有名词（包括中文公司名）保持原样**，如 DeepSeek、MiniMax、阿里巴巴等。

**文章过长（>3000字）**：

提炼文章中最重要的 **5～8 个论点**，不必逐段覆盖。优先保留：反常结论、数据亮点、核心争议点。

**文章过短（<500字）**：

补充背景知识和延伸讨论，让对话有足够深度，不要简单复述原文。
