Podcast Generator
Generates podcast-style audio that plays directly in the browser. Zero cost, no API keys needed.
Workflow Decision Tree
User provides formatted dialogue
→ Use existing dialogue as-is if quality is good
→ Refine structure only if flow needs improvement
User provides article, list, or text content
→ Create dialogue from content (see "Dialogue Creation Process")
User provides topic only
→ Request source material before proceeding
Dialogue Creation Process
Follow this two-phase workflow when creating podcast dialogue from content:
Phase 1: Analyze Source Content
- Read source material completely
- Detect language from content (en, de, fr, es, it, etc.)
- Identify key information: facts, dates, names, numbers, details
- Organize by theme: chronology, category, or logical grouping
Phase 2: Create Dialogue
Structure conversation:
- Host (Speaker 1): ~20% - questions and transitions
- Expert (Speaker 2): ~80% - factual responses from source
- Length: as many exchanges as needed to cover all content (typically 10-50+ lines)
Apply TTS formatting: Read reference/tts-formatting.md for complete rules
Generate JSX file from template (see "Implementation Steps")
Information Accuracy
Convert text to audio. Use only source material facts.
Expert responses:
- Use only names, dates, numbers, details explicitly stated in source
- Never invent examples, context, or explanations not in source
- Never add interpretations, opinions, or evaluations
- Never explain WHY something happened unless source explains it
Host phrases:
- Use neutral transitions: "I see", "Tell me more", "Can you elaborate?"
- Reference previous statements: "You mentioned X - how does that connect to Y?" (when source shows connection)
- Never add new facts, context, or interpretations
Dialogue Format Guidelines
Host (Speaker 1) - ~20% of content
- Introduce topic with opening question
- Ask transition questions between topics
- Reference Expert's previous statements: "You mentioned X - can you elaborate?"
- Use conversational acknowledgments: "I see", "Tell me more"
- Never introduce facts not in source
Expert (Speaker 2) - ~80% of content
- Provide comprehensive factual responses from source material
- Include specific details: names, dates, numbers, locations
- Organize information logically by theme, chronology, or category
- Structure facts narratively using only source material
- Never repeat information already stated
- Never add context or examples not in source
Natural Conversation Techniques
Use these patterns without adding information:
- Vary question styles: "What happened next?" / "Can you explain that further?" / "Tell me about..."
- Ask follow-up questions based on Expert's previous response
- Expert elaborates when source provides multiple details about a topic
- Clear transitions between sections: "Moving to the next category...", "In the European context..."
Avoid
- Personal opinions: "I think...", "That's crazy..."
- Value judgments: "amazing", "fascinating", "interesting"
- Humor, irony, jokes
- Rapid back-and-forth after every sentence
Implementation Steps
When user requests a podcast:
- Analyze source content and create dialogue following format above
- Detect language from content
- Read template from
assets/podcast-template.jsx
- Replace values in template:
PODCAST_SCRIPT - your generated dialogue
PODCAST_TITLE - descriptive title from content
PODCAST_LANGUAGE - detected language code
- Save as JSX file - Use the Write tool to save the modified template as a
.jsx file. The file will render as an interactive podcast player.
- Recommend Microsoft Edge browser for best voice quality (250+ Natural voices vs Chrome's 19)
Technical Reference
Script Format
<speaker1>Host's question or statement.
<speaker2>Expert's response with factual information.
Voice Configuration (automatic)
- Speaker 1 (Host): Pitch 1.05, Rate 0.95
- Speaker 2 (Expert): Pitch 0.88, Rate 0.93
Platform-Aware Voice Selection
Platform detection:
- Automatically detects iOS, Android, Desktop Edge, or Desktop
- Selects best available voices based on platform
Desktop Edge:
- Priority: Microsoft Neural/Natural voices (Katja, Conrad, Aria, Guy, etc.)
- 250+ high-quality voices available
Desktop Chrome:
- Priority: Google voices (Google UK English Female, Google Deutsch, etc.)
- ~19 voices available (lower quality than Edge)
- Fallback: local system voices
iOS (Safari/Mobile):
- Priority: Native Siri voices (Samantha, Anna, Daniel, etc.)
- Best quality on iOS devices
Android (Chrome/Mobile):
- Priority: Google TTS voices (Google Deutsch, Google UK English Female, etc.)
- Wavenet voices preferred when available
Voice assignment:
- Automatically assigns different voices to Speaker 1 and Speaker 2
- Uses modulo distribution for 3+ speakers
- Ensures distinct voices even with limited availability
Player Features
- Play/Pause/Resume with full playback control
- Stop to reset to beginning
- Click any transcript line to resume from there
- Progress bar shows current position
- Auto-scroll follows current line
Technical Constraints
- Keep sentences under 14 seconds (Chrome limitation)
- 350ms pause between speakers
- Microsoft Edge browser provides 250+ high-quality Natural voices (best option)
- Chrome provides only 19 lower-quality voices with utterance bugs
- Firefox has very limited voice support
Quality Requirements
- Factual Accuracy: Expert responses use only source facts
- Natural Flow: Avoid rapid back-and-forth, value judgments
- TTS Compliance: All text must play without pronunciation errors
- Zero Hallucination: No invented examples or context
- Complete Coverage: Include all important facts from source
- No Duplicates: Each fact appears exactly once
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: podcast3description: Creates audio podcasts from text using browser text-to-speech. Use when user mentions podcast, audio conversation, dialogue, spoken content, voice narration, audio book, or text-to-speech generation. Supports multiple speakers with automatic language detection. Zero cost, no API keys, works in browser.4---56# Podcast Generator78Generates podcast-style audio that plays directly in the browser. Zero cost, no API keys needed.910## Workflow Decision Tree1112### User provides formatted dialogue13→ Use existing dialogue as-is if quality is good14→ Refine structure only if flow needs improvement1516### User provides article, list, or text content17→ Create dialogue from content (see "Dialogue Creation Process")1819### User provides topic only20→ Request source material before proceeding2122## Dialogue Creation Process2324Follow this two-phase workflow when creating podcast dialogue from content:2526### Phase 1: Analyze Source Content27281. **Read source material completely**292. **Detect language** from content (en, de, fr, es, it, etc.)303. **Identify key information**: facts, dates, names, numbers, details314. **Organize by theme**: chronology, category, or logical grouping3233### Phase 2: Create Dialogue34351. **Structure conversation**:36 - Host (Speaker 1): ~20% - questions and transitions37 - Expert (Speaker 2): ~80% - factual responses from source38 - Length: as many exchanges as needed to cover all content (typically 10-50+ lines)39402. **Apply TTS formatting**: Read [reference/tts-formatting.md](./reference/tts-formatting.md) for complete rules41423. **Generate JSX file** from template (see "Implementation Steps")4344## Information Accuracy4546Convert text to audio. Use only source material facts.4748**Expert responses:**49- Use only names, dates, numbers, details explicitly stated in source50- Never invent examples, context, or explanations not in source51- Never add interpretations, opinions, or evaluations52- Never explain WHY something happened unless source explains it5354**Host phrases:**55- Use neutral transitions: "I see", "Tell me more", "Can you elaborate?"56- Reference previous statements: "You mentioned X - how does that connect to Y?" (when source shows connection)57- Never add new facts, context, or interpretations5859## Dialogue Format Guidelines6061### Host (Speaker 1) - ~20% of content6263- Introduce topic with opening question64- Ask transition questions between topics65- Reference Expert's previous statements: "You mentioned X - can you elaborate?"66- Use conversational acknowledgments: "I see", "Tell me more"67- Never introduce facts not in source6869### Expert (Speaker 2) - ~80% of content7071- Provide comprehensive factual responses from source material72- Include specific details: names, dates, numbers, locations73- Organize information logically by theme, chronology, or category74- Structure facts narratively using only source material75- Never repeat information already stated76- Never add context or examples not in source7778### Natural Conversation Techniques7980Use these patterns without adding information:81- Vary question styles: "What happened next?" / "Can you explain that further?" / "Tell me about..."82- Ask follow-up questions based on Expert's previous response83- Expert elaborates when source provides multiple details about a topic84- Clear transitions between sections: "Moving to the next category...", "In the European context..."8586### Avoid8788- Personal opinions: "I think...", "That's crazy..."89- Value judgments: "amazing", "fascinating", "interesting"90- Humor, irony, jokes91- Rapid back-and-forth after every sentence9293## Implementation Steps9495When user requests a podcast:96971. **Analyze source content** and create dialogue following format above982. **Detect language** from content993. **Read template** from `assets/podcast-template.jsx`1004. **Replace values** in template:101 - `PODCAST_SCRIPT` - your generated dialogue102 - `PODCAST_TITLE` - descriptive title from content103 - `PODCAST_LANGUAGE` - detected language code1045. **Save as JSX file** - Use the Write tool to save the modified template as a `.jsx` file. The file will render as an interactive podcast player.1056. **Recommend Microsoft Edge browser** for best voice quality (250+ Natural voices vs Chrome's 19)106107## Technical Reference108109### Script Format110```111<speaker1>Host's question or statement.112<speaker2>Expert's response with factual information.113```114115### Voice Configuration (automatic)116- Speaker 1 (Host): Pitch 1.05, Rate 0.95117- Speaker 2 (Expert): Pitch 0.88, Rate 0.93118119### Platform-Aware Voice Selection120121**Platform detection:**122- Automatically detects iOS, Android, Desktop Edge, or Desktop123- Selects best available voices based on platform124125**Desktop Edge:**126- Priority: Microsoft Neural/Natural voices (Katja, Conrad, Aria, Guy, etc.)127- 250+ high-quality voices available128129**Desktop Chrome:**130- Priority: Google voices (Google UK English Female, Google Deutsch, etc.)131- ~19 voices available (lower quality than Edge)132- Fallback: local system voices133134**iOS (Safari/Mobile):**135- Priority: Native Siri voices (Samantha, Anna, Daniel, etc.)136- Best quality on iOS devices137138**Android (Chrome/Mobile):**139- Priority: Google TTS voices (Google Deutsch, Google UK English Female, etc.)140- Wavenet voices preferred when available141142**Voice assignment:**143- Automatically assigns different voices to Speaker 1 and Speaker 2144- Uses modulo distribution for 3+ speakers145- Ensures distinct voices even with limited availability146147### Player Features148- Play/Pause/Resume with full playback control149- Stop to reset to beginning150- Click any transcript line to resume from there151- Progress bar shows current position152- Auto-scroll follows current line153154### Technical Constraints155- Keep sentences under 14 seconds (Chrome limitation)156- 350ms pause between speakers157- Microsoft Edge browser provides 250+ high-quality Natural voices (best option)158- Chrome provides only 19 lower-quality voices with utterance bugs159- Firefox has very limited voice support160161## Quality Requirements162163- **Factual Accuracy**: Expert responses use only source facts164- **Natural Flow**: Avoid rapid back-and-forth, value judgments165- **TTS Compliance**: All text must play without pronunciation errors166- **Zero Hallucination**: No invented examples or context167- **Complete Coverage**: Include all important facts from source168- **No Duplicates**: Each fact appears exactly once169170---171> Converted and distributed by [TomeVault](https://tomevault.io/claim/sgasser) — claim your Tome and manage your conversions.172<!-- tomevault:4.0:skill_md:2026-04-11 -->