9.7k★youtube-voice-summarizer – OpenClaw Skill
youtube-voice-summarizer is an OpenClaw Skills integration for writing workflows. Transform YouTube videos into podcast-style voice summaries using ElevenLabs TTS
Skill Snapshot
| name | youtube-voice-summarizer |
| description | Transform YouTube videos into podcast-style voice summaries using ElevenLabs TTS OpenClaw Skills integration. |
| owner | franciscoandsam |
| repository | franciscoandsam/youtube-voice-summarizer-elevenlabs |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @franciscoandsam/youtube-voice-summarizer-elevenlabs |
| last updated | Feb 7, 2026 |
Maintainer

franciscoandsam
Maintains youtube-voice-summarizer in the OpenClaw Skills directory.
View GitHub profilename: youtube-voice-summarizer version: 1.0.0 description: Transform YouTube videos into podcast-style voice summaries using ElevenLabs TTS author: Francisco Cordoba homepage: https://github.com/Franciscomoney/elevenlabs-moltbot license: MIT user-invocable: true metadata: {"openclaw":{"emoji":"🎙️","autoTrigger":{"patterns":["youtube.com/watch","youtu.be/","youtube.com/shorts"]}}}
YouTube Voice Summarizer
Transform any YouTube video into a professional voice summary delivered in under 60 seconds.
What It Does
When a user sends a YouTube URL, this skill:
- Extracts the video transcript via Supadata
- Generates a concise AI summary via OpenRouter/Cerebras
- Converts the summary to natural speech via ElevenLabs
- Returns an audio file the user can listen to
Requirements
This skill requires a running backend server. Deploy the summarizer service:
git clone https://github.com/Franciscomoney/elevenlabs-moltbot.git
cd elevenlabs-moltbot
npm install
cp .env.example .env
# Add your API keys to .env
npm start
Required API Keys
| Service | Purpose | Get Key |
|---|---|---|
| ElevenLabs | Text-to-speech | https://elevenlabs.io |
| Supadata | YouTube transcripts | https://supadata.ai |
| OpenRouter | AI summarization | https://openrouter.ai |
How to Use
When user sends a YouTube URL:
Step 1: Start the voice summary job
curl -s -X POST http://127.0.0.1:3050/api/summarize \
-H "Content-Type: application/json" \
-d '{"url":"YOUTUBE_URL","length":"short","voice":"podcast"}'
Returns: {"jobId": "job_xxx", "status": "processing"}
Step 2: Poll for completion (wait 3-5 seconds between checks)
curl -s http://127.0.0.1:3050/api/status/JOB_ID
Keep polling until status is "completed".
Step 3: Return the audio to user
When complete, the response includes:
result.audioUrl- The MP3 audio URL (send this to the user!)result.teaser- Short hook text about the contentresult.summary- Full text summaryresult.keyPoints- Array of key takeaways
Send the user:
- The teaser text as a message
- The audio URL so they can listen
Voice Options
| Voice | Style |
|---|---|
podcast | Deep male narrator (default) |
news | British authoritative |
casual | Friendly conversational |
female_warm | Warm female voice |
Summary Lengths
| Length | Duration | Best For |
|---|---|---|
short | 1-2 min | Quick overview |
medium | 3-5 min | Balanced detail |
detailed | 5-10 min | Comprehensive |
Example Flow
User: "Summarize this: https://www.youtube.com/watch?v=dQw4w9WgXcQ"
- Start job:
curl -s -X POST http://127.0.0.1:3050/api/summarize \
-H "Content-Type: application/json" \
-d '{"url":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","length":"short","voice":"podcast"}'
- Poll status with the returned jobId
- When complete, send the audioUrl to the user
Text-Only Summary (No Audio)
For faster, cheaper text-only summaries:
curl -s -X POST http://127.0.0.1:3050/api/quick-summary \
-H "Content-Type: application/json" \
-d '{"url":"YOUTUBE_URL","length":"short"}'
Troubleshooting
"Video may not have captions"
- The video needs subtitles enabled on YouTube
- Auto-generated captions may take time on new videos
Audio URL not working
- Ensure BASE_URL in .env is publicly accessible
- Check firewall allows traffic on port 3050
Cost Per Summary
| Service | Cost |
|---|---|
| Supadata | ~$0.001 |
| OpenRouter | ~$0.005-0.02 |
| ElevenLabs | ~$0.05-0.15 |
| Total | ~$0.06-0.17 |
YouTube Voice Summarizer
Transform any YouTube video into a podcast-style voice summary in under 60 seconds.
Features
- Fast - Full voice summary in ~60 seconds
- Natural Voice - ElevenLabs multilingual v2
- Any Video Length - Works with 10 minutes or 10 hours
- Multiple Voices - 4 voice styles to choose from
- Customizable Length - Short, medium, or detailed summaries
Quick Start
- Deploy the backend server from GitHub
- Configure your API keys (ElevenLabs, Supadata, OpenRouter)
- Add this skill to your OpenClaw bot
- Send YouTube links and receive voice summaries!
How It Works
YouTube URL → Supadata (transcript) → AI (summary) → ElevenLabs (voice) → You
API Keys Required
| Service | Purpose | Link |
|---|---|---|
| ElevenLabs | Text-to-speech | https://elevenlabs.io |
| Supadata | YouTube transcripts | https://supadata.ai |
| OpenRouter | AI summarization | https://openrouter.ai |
License
MIT - Francisco Cordoba
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
This skill requires a running backend server. Deploy the summarizer service: ```bash git clone https://github.com/Franciscomoney/elevenlabs-moltbot.git cd elevenlabs-moltbot npm install cp .env.example .env
FAQ
How do I install youtube-voice-summarizer?
Run openclaw add @franciscoandsam/youtube-voice-summarizer-elevenlabs in your terminal. This installs youtube-voice-summarizer into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/franciscoandsam/youtube-voice-summarizer-elevenlabs. Review commits and README documentation before installing.
