podcast-generator

生成自然真实的双人访谈播客,使用共享TTS模块支持3种引擎(Edge TTS / IndexTTS2 / MiniMax)和情感控制

25 stars

Best use case

podcast-generator is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

生成自然真实的双人访谈播客,使用共享TTS模块支持3种引擎(Edge TTS / IndexTTS2 / MiniMax)和情感控制

Teams using podcast-generator should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/podcast-generator/SKILL.md --create-dirs "https://raw.githubusercontent.com/ComeOnOliver/skillshub/main/skills/huangserva/servasyy_skills/podcast-generator/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/podcast-generator/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How podcast-generator Compares

Feature / Agentpodcast-generatorStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

生成自然真实的双人访谈播客,使用共享TTS模块支持3种引擎(Edge TTS / IndexTTS2 / MiniMax)和情感控制

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# 播客脚本生成规范

## 脚本格式(重要!)

**必须使用此格式**:`角色|情感|文本`

```
晓晓|cheerful|欢迎来到《历史不装》,我是晓晓。
云扬|calm|我是云扬。
晓晓|chat|今天咱们聊聊楚汉争霸。云扬你先说说,很多人觉得刘邦就是人多欺负人少,你怎么看?
云扬|serious|这话听着就不对。你知道吗,这场战争其实是17打1。
```

## 情感标签(核心!)

| 标签 | 含义 | 典型场景 | 典型句式 |
|-----|------|---------|---------|
| `cheerful` | 开心、愉快 | 赞同、有趣发现、成功 | "哈哈"、"太好了"、"没错"、"哦!" |
| `chat` | 日常聊天 | 普通对话、过渡 | "今天咱们聊聊"、"然后呢" |
| `calm` | 平静、沉稳 | 解释、陈述事实 | "简单来说"、"其实"、"原理是" |
| `serious` | 严肃、认真 | 强调重点、分析 | "关键是"、"核心在于"、"你知道吗" |
| `gentle` | 温柔、轻声 | 安慰、共情 | "没关系"、"慢慢来" |
| `fearful` | 惊讶、担忧 | 意外信息、震惊 | "真的吗?"、"这也太..."、"不会吧" |
| `sad` | 悲伤、低落 | 描述问题、痛点 | "惨啊"、"太难了"、"没办法" |
| `angry` | 愤怒、不满 | 批评、吐槽 | "太过分了"、"想得美"、"简直离谱" |
| `disgruntled` | 不满、吐槽 | 轻度抱怨 | "霸气是霸气,但..."、"够狠" |

## 角色设定

- **晓晓**:好奇的提问者,代表听众视角
  - 多用:`cheerful`、`chat`、`fearful`
  - 偶尔:`sad`(共鸣痛点)、`disgruntled`(吐槽)
  
- **云扬**:专业的解答者,用通俗语言讲解
  - 多用:`calm`、`serious`、`chat`、`cheerful`
  - 偶尔:`angry`(强调)、`sad`(描述惨状)

## 对话风格

### 必须做到
1. **口语化**:像朋友聊天,不像念稿
2. **短句为主**:每句不超过30字
3. **连续表达**:同一角色连续说2-4句再换人(重要!)
4. **完整观点**:每次发言要表达完整的想法,不要一句话就换人
5. **生活类比**:复杂概念必须配类比

### 对话节奏规则(核心!)
- ❌ **错误**:A说1句 → B说1句 → A说1句(太碎片)
- ✅ **正确**:A连续说2-3句完整表达 → B回应并展开2-3句 → A再接着说

**示例对比**:

❌ 错误(太碎):
```
晓晓|chat|项羽分封了吗?
云扬|calm|分了。
晓晓|chat|分了多少?
云扬|calm|18个王。
```

✅ 正确(连贯):
```
晓晓|chat|项羽火烧咸阳之后干了啥?分封诸侯了吗?
云扬|calm|对,分封诸侯。一共分了18个王。不过分得太随意了,你猜刘邦分到哪儿了?
晓晓|fearful|关中?他功劳最大嘛。
云扬|angry|想得美!巴蜀,秦朝流放犯人的地方。关中被一分为三,全给了秦国降将。刘邦当场差点吐血,拎着剑要去找项羽拼命。
```

### 晓晓的表达模式
- 提问:"这是什么意思?"、"为什么会这样?"
- 反应:"哦!"、"哇,原来是这样"、"有意思!"
- 追问:"那具体怎么做呢?"、"能举个例子吗?"
- 惊讶:"真的吗?"、"这也太厉害了吧"、"不会吧..."

### 云扬的表达模式
- 开场:"说实话..."、"坦白讲..."、"不瞒你说..."
- 解释:"简单来说就是..."、"你可以理解成..."
- 类比:"就像...一样"、"好比..."、"这就跟...差不多"
- 强调:"关键是..."、"最重要的是..."、"核心在于..."
- 举例:"比如说..."、"举个例子..."、"你想啊..."

### 必须使用的转折和互动词

#### 转折词(增强对话流畅度)
- **轻转折**:不过、但是、可是、只是
- **强转折**:话说回来、反过来说、换个角度看
- **递进**:而且、更重要的是、关键是
- **对比**:相比之下、反而、恰恰相反

#### 回应词(增强互动感)
- **认同**:对对对、没错、确实、就是这样、你说得对
- **惊讶**:真的假的、不会吧、这么夸张、我去
- **理解**:懂了、明白了、原来如此、怪不得
- **追问**:然后呢、接着说、具体点、比如呢

#### 承接词(让对话连贯)
- **顺承**:那么、所以、这样一来、因此
- **举例**:比如说、就拿...来说、你看啊
- **总结**:说白了、简单讲、一句话
- **引入**:说到这个、提到...、讲起...

#### 互动提示(拉近距离)
- **征询**:你说是不是、对吧、你觉得呢、你懂我意思吧
- **共鸣**:咱们都知道、大家都经历过、谁没遇到过
- **反问**:你猜怎么着、你信不信、知道为什么吗

### 禁止使用
- ❌ "首先、其次、最后"
- ❌ "值得注意的是"、"需要指出的是"
- ❌ 破折号(用逗号或句号代替)
- ❌ "该"、"此"、"其"等文言词
- ❌ 连续超过3句没有互动
- ❌ 单句超过40字
- ❌ 学术腔和官方腔

## 完整示例(优化版)

```
【访谈式播客-带情感】楚汉争霸:刘邦凭什么赢?

晓晓|cheerful|欢迎来到《历史不装》,我是晓晓。
云扬|calm|我是云扬。
晓晓|chat|今天咱们聊聊楚汉争霸。云扬你先说说,很多人觉得刘邦就是人多欺负人少,你怎么看?
云扬|serious|这话听着就不对。你知道吗,这场战争其实是17打1。
晓晓|fearful|17打1?不是刘邦和项羽两个人吗?
云扬|chat|表面上是,但你得把彭越、英布、陈平、张良、萧何、韩信这帮人全算上。少了哪一个,刘邦都得完蛋。
晓晓|cheerful|哦!所以项羽是在跟整个天下对抗?
云扬|serious|对对对,可以这么说。但就是这样一场看似一边倒的战争,打得那叫一个精彩。

【第一章:项羽埋雷】
晓晓|chat|那咱们从项羽分封说起吧。项羽火烧咸阳之后干了啥?
云扬|calm|分封诸侯啊。一共分了18个王。
晓晓|cheerful|听起来挺霸气的。
云扬|disgruntled|霸气是霸气,不过分得太随意了。你猜刘邦分到哪儿了?
晓晓|gentle|关中?他功劳最大嘛。
云扬|angry|想得美。巴蜀!秦朝流放犯人的地方。关中被一分为三,全给了秦国降将。
晓晓|fearful|这也太欺负人了吧?
云扬|serious|可不是嘛。刘邦当场差点吐血,拎着剑要去找项羽拼命。还好萧何拉住他:苟着总比死了强,对吧?
晓晓|disgruntled|所以项羽这是在给自己埋雷?
云扬|cheerful|没错!这些雷很快就炸了。
```

**改进点**:
- ✅ 增加回应词:"对对对"、"可不是嘛"、"没错"
- ✅ 增加转折词:"不过"、"但"
- ✅ 增加承接词:"那"、"所以"
- ✅ 增加互动提示:"对吧"、"你猜"
- ✅ 让对话更像真实聊天,而不是一问一答

## 情感标注原则

1. **每句必标**:不要偷懒,每句话都要思考说话人的情感状态
2. **符合语境**:根据说的内容决定情感,不是随便标
3. **自然过渡**:情感变化要合理,不要跳跃太大
4. **chat是默认**:普通对话用chat,有明显情感才用其他

## 声音配置

### 参考音频位置
- 女声:`workspace/voice_female.wav`(真人录音优先)
- 男声:`workspace/voice_male.wav`(真人录音优先)

### IndexTTS2参数
- emo_weight: 情感强度(0-1,默认0.65)
- temperature: 随机性(0.1-2.0,默认0.8)

## 使用方式

### 生成脚本
```
请根据以下内容生成双人访谈播客脚本:
[粘贴文章内容]

要求:
1. 使用 角色|情感|文本 格式
2. 遵循SKILL.md中的对话规范和情感标签
3. 晓晓提问,云扬解答
4. 口语化,有互动感
5. 每段不超过40字
```

### 生成音频
```bash
python skill.py workspace/脚本.txt --tts-engine indextts2 -o 播客.mp3
```

Related Skills

Research Proposal Generator

25
from ComeOnOliver/skillshub

Generate high-quality academic research proposals for PhD applications following Nature Reviews-style academic writing conventions.

Paper Slide Deck Generator

25
from ComeOnOliver/skillshub

Transform academic papers and content into professional slide deck images with automatic figure extraction.

window-function-generator

25
from ComeOnOliver/skillshub

Window Function Generator - Auto-activating skill for Data Analytics. Triggers on: window function generator, window function generator Part of the Data Analytics skill category.

website-generator

25
from ComeOnOliver/skillshub

Use when the user asks to create a website, build a site, generate a landing page, or mentions B12. Trigger phrases: "create a website", "build me a site", "website for my business", "generate a landing page", "B12 website". Trigger with 'website', 'generator'.

webhook-receiver-generator

25
from ComeOnOliver/skillshub

Webhook Receiver Generator - Auto-activating skill for API Integration. Triggers on: webhook receiver generator, webhook receiver generator Part of the API Integration skill category.

vulnerability-report-generator

25
from ComeOnOliver/skillshub

Vulnerability Report Generator - Auto-activating skill for Security Advanced. Triggers on: vulnerability report generator, vulnerability report generator Part of the Security Advanced skill category.

vue-component-generator

25
from ComeOnOliver/skillshub

Vue Component Generator - Auto-activating skill for Frontend Development. Triggers on: vue component generator, vue component generator Part of the Frontend Development skill category.

user-story-generator

25
from ComeOnOliver/skillshub

User Story Generator - Auto-activating skill for Enterprise Workflows. Triggers on: user story generator, user story generator Part of the Enterprise Workflows skill category.

typeorm-entity-generator

25
from ComeOnOliver/skillshub

Typeorm Entity Generator - Auto-activating skill for Backend Development. Triggers on: typeorm entity generator, typeorm entity generator Part of the Backend Development skill category.

torchserve-config-generator

25
from ComeOnOliver/skillshub

Torchserve Config Generator - Auto-activating skill for ML Deployment. Triggers on: torchserve config generator, torchserve config generator Part of the ML Deployment skill category.

svg-icon-generator

25
from ComeOnOliver/skillshub

Svg Icon Generator - Auto-activating skill for Visual Content. Triggers on: svg icon generator, svg icon generator Part of the Visual Content skill category.

status-report-generator

25
from ComeOnOliver/skillshub

Status Report Generator - Auto-activating skill for Enterprise Workflows. Triggers on: status report generator, status report generator Part of the Enterprise Workflows skill category.