scientific-skills/Others/audio-script-writer/SKILL.md
Convert written medical content into podcast or video scripts optimized for audio delivery. Transforms academic papers, reports, and educational materials into engaging spoken-word formats with pronunciation guides, timing markers, and audio-friendly structure.
npx skillsauth add aipoch/medical-research-skills audio-script-writerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Content transformation tool that converts written medical and scientific materials into professionally structured audio scripts suitable for podcasts, educational videos, audiobooks, and voiceover narration.
Key Capabilities:
✅ Use this skill when:
❌ Do NOT use when:
Integration:
abstract-summarizer (content condensation), lay-summary-gen (patient-friendly language)medical-translation (multi-language scripts), voice-cloning-tool (AI narration)Convert written text to conversational audio style:
from scripts.audio_writer import AudioScriptWriter
writer = AudioScriptWriter()
# Transform written content
script = writer.convert_to_audio(
source_text=research_paper,
format="podcast", # podcast, video, lecture, audiobook
target_audience="medical_students",
duration_minutes=15
)
print(script.spoken_text)
# Converts: "The pathophysiology of diabetes mellitus involves..."
# To: "So what exactly happens in diabetes? Well, it all starts when..."
Transformation Rules: | Written Style | Audio Style | Example | |---------------|-------------|---------| | "Furthermore" | "Plus" | Less formal transitions | | " et al." | "and their colleagues" | Expand abbreviations | | Numbers in text | Spoken numbers | "15%" → "15 percent" | | Long sentences | 15-20 word max | Break into digestible chunks | | Passive voice | Active voice | "was observed" → "we saw" | | Citations | Omit or footnote | "(Smith et al., 2024)" → [reference tone] |
Create phonetic spelling for medical terms:
# Generate pronunciation guide
pronunciation = writer.create_pronunciation_guide(
text=script,
include_phonetic=True,
include_syllables=True
)
# Output:
# "Hyperlipidemia: hi-per-lip-i-DEE-mee-uh"
# "Metformin: met-FOR-min"
# "Atherosclerosis: ath-er-oh-skleh-ROH-sis"
Guide Elements:
Calculate speaking duration and mark pacing cues:
# Analyze timing
timing = writer.calculate_timing(
script=script,
speaking_rate="conversational", # slow, conversational, fast
include_pauses=True
)
print(f"Estimated duration: {timing.duration_minutes} minutes")
print(f"Word count: {timing.word_count}")
print(f"Pace: {timing.words_per_minute} WPM")
Speaking Rates: | Style | WPM | Use Case | |-------|-----|----------| | Slow/Educational | 120-130 | Patient education, complex topics | | Conversational | 140-160 | Podcasts, general audience | | Fast/News | 170-190 | Time-constrained content | | Variable | Varies | Dynamic pacing with pauses |
Pacing Cues:
[BREATHE] - Brief pause for narrator
[PAUSE 2s] - Two-second pause for emphasis
[SLOW DOWN] - Reduce pace for key point
[SPEED UP] - Increase energy/excitement
[BEAT] - Dramatic pause
Generate scripts for different audio formats:
# Podcast episode
podcast = writer.create_podcast_script(
content=article,
episode_format="interview", # solo, interview, panel
include_intro_music=True,
ad_breaks=[5, 12] # minutes
)
# Educational video
video = writer.create_video_script(
content=lecture_slides,
visual_cues=True, # Mark where visuals change
b_roll_notes=True # Suggest supplemental footage
)
Format Types: | Format | Characteristics | Best For | |--------|-----------------|----------| | Podcast | Conversational, segments, ads | Long-form content, interviews | | Video | Visual cues, B-roll notes | YouTube, educational platforms | | Lecture | Structured, Q&A breaks | Online courses, training | | Audiobook | Chapter markers, consistent tone | Textbooks, memoirs | | News | Tight, factual, quick | Research briefs, updates |
Scenario: Convert published study to 15-minute podcast episode.
# Convert paper to podcast script
python scripts/main.py \
--input paper.pdf \
--format podcast \
--duration 15 \
--style conversational \
--include-intro-outro \
--output podcast_script.txt
# Generate pronunciation guide
python scripts/main.py \
--input podcast_script.txt \
--generate-pronunciation \
--output pronunciation_guide.txt
Structure:
[INTRO MUSIC 5s]
HOST: Welcome to Medical Research Today. I'm your host...
[BREATHE]
HOST: Today we're diving into a fascinating study about...
[PAUSE]
HOST: So what did the researchers find? Well...
[BREATHE]
HOST: Dr. Smith, one of the study authors, explains...
[SOUND BITE: Interview clip]
...
[OUTRO MUSIC]
Scenario: Convert lecture notes to video script for online course.
# Create lecture script
lecture = writer.create_lecture_script(
notes=lecture_content,
duration=45, # minutes
break_intervals=[15, 30], # minutes for student breaks
interaction_points=True # "Pause and think..." prompts
)
# Add visual cues
script = writer.add_visual_cues(
script=lecture,
slide_transitions=True,
animation_notes=True
)
Lecture Elements:
Scenario: Create audio guide for diabetes management.
# Patient-friendly script
patient_script = writer.create_patient_script(
medical_content=diabetes_guide,
reading_level=6, # 6th grade
empathetic_tone=True,
key_points_highlighted=True
)
# Slow, clear pacing
patient_script.adjust_pacing(
wpm=130,
pause_after_sentences=1.5 # seconds
)
Patient Script Features:
Scenario: Adapt live presentation to YouTube video format.
# Convert presentation script
python scripts/main.py \
--input presentation_transcript.txt \
--format video \
--platform youtube \
--include-hooks true \
--engagement-cues true \
--output youtube_script.txt
YouTube Optimization:
From research paper to published podcast:
# Step 1: Extract and summarize content
python scripts/main.py \
--input paper.pdf \
--extract-key-points \
--output key_points.txt
# Step 2: Convert to audio script
python scripts/main.py \
--input key_points.txt \
--format podcast \
--duration 20 \
--output raw_script.txt
# Step 3: Add production elements
python scripts/main.py \
--input raw_script.txt \
--add-music-cues \
--add-sound-effects \
--add-pacing-marks \
--output production_script.txt
# Step 4: Generate pronunciation guide
python scripts/main.py \
--input production_script.txt \
--generate-pronunciation \
--output pronunciations.txt
# Step 5: Create timing breakdown
python scripts/main.py \
--input production_script.txt \
--calculate-timing \
--output timing_breakdown.txt
Python API:
from scripts.audio_writer import AudioScriptWriter
from scripts.pronunciation import PronunciationGuide
from scripts.timing import TimingCalculator
# Initialize
writer = AudioScriptWriter()
pronouncer = PronunciationGuide()
timing = TimingCalculator()
# Read source material
with open("research_article.txt", "r") as f:
content = f.read()
# Step 1: Convert to spoken format
script = writer.convert_to_audio(
text=content,
format="podcast",
target_duration=15, # minutes
audience="general_medical"
)
# Step 2: Add production elements
script_with_cues = writer.add_production_cues(
script=script,
music_stings=True,
transition_effects=True
)
# Step 3: Generate pronunciation guide
medical_terms = pronouncer.extract_terms(script_with_cues)
pronunciation_guide = pronouncer.create_guide(medical_terms)
# Step 4: Calculate timing
timing_analysis = timing.calculate(
script=script_with_cues,
speaking_rate=150 # WPM
)
# Export complete production package
writer.export_production_package(
script=script_with_cues,
pronunciation=pronunciation_guide,
timing=timing_analysis,
output_dir="podcast_production/"
)
Content Quality:
Audio Optimization:
Production Quality:
Before Recording:
Content Issues:
❌ Too dense → Information overload for listeners
❌ Visual dependencies → "As shown in Figure 3..."
❌ Citation overload → Every sentence has reference
Audio Issues:
❌ Written-style language → "Furthermore, the aforementioned..."
❌ No pauses → Relentless information delivery
❌ Ignoring pronunciation → Mispronounced medical terms
Production Issues:
❌ Underestimating time → 10 minutes of script takes 12+ to record
❌ Complex sentence structures → Tongue twisters for narrator
Available in references/ directory:
audio_writing_best_practices.md - Broadcast writing guidelinesmedical_pronunciation_guide.md - Common terms phoneticspodcast_production_standards.md - Industry format standardsaccessibility_guidelines.md - Inclusive audio contentplatform_requirements.md - YouTube, Spotify, Apple specsvoice_care_tips.md - Narrator health and performanceLocated in scripts/ directory:
main.py - CLI interface for script conversionaudio_writer.py - Core text-to-audio transformationpronunciation.py - Medical terminology phoneticstiming.py - Duration calculation and pacingformat_templates.py - Podcast, video, lecture templatesvoice_direction.py - Narrator cues and directionaccessibility.py - Alternative format generation| Parameter | Type | Default | Required | Description |
|-----------|------|---------|----------|-------------|
| --input, -i | string | - | No | Input text file path |
| --output, -o | string | - | No | Output JSON file path (default: stdout) |
| --text | string | - | No | Direct text input (alternative to --input) |
| --duration, -d | int | 5 | No | Target duration in minutes |
| --pace, -p | string | normal | No | Speaking pace (slow, normal, fast) |
| --style, -s | string | conversational | No | Script style (conversational, formal, educational) |
# Convert from file
python scripts/main.py --input article.txt --duration 5 --output script.json
# Direct text input
python scripts/main.py --text "Medical research findings..." --duration 3
# From stdin
cat article.txt | python scripts/main.py --duration 5 --style conversational
# With specific style and pace
python scripts/main.py --input paper.txt --style educational --pace slow
| Risk Indicator | Assessment | Level | |----------------|------------|-------| | Code Execution | Python script executed locally | Low | | Network Access | No external API calls | Low | | File System Access | Read input files, write output files | Low | | Instruction Tampering | Standard prompt guidelines | Low | | Data Exposure | Output saved only to specified location | Low |
# Python 3.7+
# No additional packages required (uses standard library)
🎙️ Pro Tip: The best audio scripts sound natural when spoken. Always read your script aloud before finalizing—if you stumble over a sentence, your narrator will too. Revise for the ear, not the eye.
tools
Generates complete conventional oncology bulk-transcriptome biomarker and hub-gene research designs from a user-provided cancer type and study direction. Always use this skill whenever a user wants to design, plan, or build a tumor bioinformatics study centered on differential expression, prognostic filtering or risk modeling, PPI-based hub-gene prioritization, diagnostic/prognostic evaluation, clinical association, immune infiltration context, methylation context, and optional tissue or cell validation. Covers five study patterns (signature-first prognostic workflow, hub-gene-first biomarker workflow, hybrid signature-to-hub workflow, immune-context biomarker workflow, translational validation workflow) and always outputs four workload configs (Lite / Standard / Advanced / Publication+) with recommended primary plan, step-by-step workflow, figure plan, validation strategy, minimal executable version, publication upgrade path...
development
Generates complete conventional non-oncology bioinformatics research designs from a user-provided disease context, process-related gene family or biological theme, and validation direction. Use when a study centers on multi-dataset bulk transcriptome integration, DEG analysis, process-gene intersection, enrichment analysis, GSEA, PPI hub-gene prioritization, TF/miRNA regulatory networks, ROC-based biomarker evaluation, and immune infiltration analysis. Covers five study patterns (process-DEG discovery, enrichment/GSEA interpretation, hub-gene prioritization, regulatory-network and immune interpretation, multi-layer public validation) and always outputs Lite / Standard / Advanced / Publication+ with a recommended primary plan, stepwise workflow, figure plan, validation hierarchy, minimal executable version, publication upgrade path, and strictly verified literature retrieval.
tools
Plans confounder control, variable adjustment logic, and bias mitigation strategies at the protocol stage for clinical, epidemiologic, translational, observational, and biomarker studies. Always use this skill when a user needs to identify major confounders, decide which variables should or should not be adjusted for, compare matching/stratification/weighting approaches, anticipate selection or measurement bias, or pressure-test a study design before execution. Focus on bias sensing, causal structure awareness, variable-role classification, and critical design review rather than generic statistical advice.
testing
Generates complete comparative network-toxicology research designs from a user-provided exposure pair, shared toxic phenotype, and validation direction. Use when a study centers on two related exposures under one outcome and needs target collection, shared-vs-specific target decomposition, enrichment, PPI hub prioritization, docking, optional transcriptomic cross-checks, and conservative mechanistic synthesis. Covers five study patterns and always outputs Lite / Standard / Advanced / Publication+ with a recommended primary plan, stepwise workflow, figure plan, validation hierarchy, minimal executable version, publication upgrade path, and strictly verified literature retrieval.