将 Markdown 文章转换成 N 人播客脚本(1~4人),输出为 .txt 文件保存至当前项目的 markdown/ 目录。触发条件:用户提到"转成播客"、"生成播客脚本"、"把这篇文章做成播客"、"播客对话"、"podcast script"、"N个人的播客",或者上传了一个 markdown 文件并希望以播客形式呈现。即使用户只说"帮我把这篇文章转成播客",也应使用本 skill。默认输出中文脚本,除非用户明确指定其他语言。
Install with the open skills CLI (global, non-interactive — available in every Claude Code session):
npx skills add digoal/blog --skill "podcast-script" -g -a claude-code -yOr manually — copy the SKILL.md below into:
~/.claude/skills/podcast-script/SKILL.md---
name: podcast-script
description: 将 Markdown 文章转换成 N 人播客脚本(1~4人),输出为 .txt 文件保存至当前项目的 markdown/ 目录。触发条件:用户提到"转成播客"、"生成播客脚本"、"把这篇文章做成播客"、"播客对话"、"podcast script"、"N个人的播客",或者上传了一个 markdown 文件并希望以播客形式呈现。即使用户只说"帮我把这篇文章转成播客",也应使用本 skill。默认输出中文脚本,除非用户明确指定其他语言。
---
# Podcast Script Generator — 播客脚本生成 Skill
## 功能定位
将任意 Markdown 文章转换为自然、真实、有节奏感的多人播客对话脚本:
- 支持 **1~4 位主持人/嘉宾**(默认 1 人)
- 默认输出**中文**,用户指定语言时切换
- **保留英文术语**,不强行翻译(如 token、agent、GPT、ROI、API 等)
- 输出格式:纯文本 `.txt`,保存到 `markdown/` 目录
---
## 执行流程
### Step 1:读取输入
从用户提供的 Markdown 文件(或消息中的内容)提取:
1. **文章核心议题**:主题是什么?有哪些关键论点?
2. **重要数据与案例**:哪些事实/数字值得在对话中重点提及?
3. **文章结构段落**:有几个自然节点适合转化为对话切换点?
4. **英文术语清单**:列出所有需要保留的英文词汇(不翻译)
用户如果没有指定人数,默认使用 **1 人**。
---
### 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字)**:
补充背景知识和延伸讨论,让对话有足够深度,不要简单复述原文。