elevenlabs-tts · glebis — Claude Code skill: text-to-speech via ElevenLabs
Turns text into an audio file through the ElevenLabs API, with seven voice presets and control over stability and similarity boost.
npx skills add glebis/claude-skills --skill elevenlabs-tts -a claude-codeWhat elevenlabs-tts does
The skill drives scripts/elevenlabs_tts.py, which talks to the ElevenLabs API and writes an mp3. Pick a voice by preset name (rachel, adam, bella, elli, josh, arnold, ava) or pass a raw voice ID. rachel is the default, and the model is eleven_monolingual_v1 unless you override it.
Two parameters shape the delivery. stability (0.0–1.0, default 0.5) — lower values give more expressive variation, higher values keep it consistent. similarity_boost (0.0–1.0, default 0.75) holds the output closer to the original voice characteristics. Output path goes through --output, and directories are created for you.
You need a working ELEVENLABS_API_KEY in .env before the first run, otherwise the script has nothing to authenticate with. It also imports as a module: generate_speech(text=..., voice_id=...) returns the absolute path to the finished file.
What it helps with
- turn a block of text into an mp3 file
- narrate a video with a chosen voice
- tune delivery with stability and similarity boost
- list the available voices
- call speech generation from your own Python code
Example prompts for the agent
- Narrate this text with the adam voice and save it to audio/narration.mp3
- Generate audio from this text with stability 0.7
- List the available voices
How to install elevenlabs-tts
1Skills CLI (Vercel)
npx skills add glebis/claude-skills --skill elevenlabs-tts -a claude-code2Manually: put the files in place
~/.claude/skills/elevenlabs-tts/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/elevenlabs-tts/
1Skills CLI (Vercel)
npx skills add glebis/claude-skills --skill elevenlabs-tts -a codex2Manually: put the files in place
.agents/skills/elevenlabs-tts/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add glebis/claude-skills --skill elevenlabs-tts -a cursor2Manually: put the files in place
.cursor/skills/elevenlabs-tts/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install glebis/claude-skills elevenlabs-tts2Manually: put the files in place
.github/skills/elevenlabs-tts/SKILL.md1Skills CLI (Vercel)
npx skills add glebis/claude-skills --skill elevenlabs-tts -a gemini-cli2Platform CLI
gemini skills install https://github.com/glebis/claude-skills --path elevenlabs-ttsManually: put the files in place
.devin/skills/elevenlabs-tts/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add glebis/claude-skills --skill elevenlabs-tts -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about elevenlabs-tts
How do I install elevenlabs-tts in Claude?
Run npx skills add glebis/claude-skills --skill elevenlabs-tts -a claude-code. The skill lands at ~/.claude/skills/elevenlabs-tts/SKILL.md.
What does elevenlabs-tts do?
It generates an audio file from text using the ElevenLabs API. Voices come from seven presets or a direct voice ID.
What do I need before using it?
An ELEVENLABS_API_KEY in your .env file. Without it the request to the ElevenLabs API will not go through.
Source text
SKILL.md · MIT
---
name: elevenlabs-tts
description: This skill converts text to high-quality audio files using ElevenLabs API. Use this skill when users request text-to-speech generation, audio narration, or voice synthesis with customizable voice parameters (stability, similarity boost) and voice presets (rachel, adam, bella, elli, josh, arnold, ava).
---
# ElevenLabs Text-to-Speech
## Overview
Generate professional audio files from text using ElevenLabs' advanced text-to-speech API. The skill provides pre-configured voice presets with sensible defaults, voice parameter customization, and direct access to the `scripts/elevenlabs_tts.py` script for programmatic control.
## Quick Start
To generate audio from text:
1. Ensure the `.env` file contains a valid `ELEVENLABS_API_KEY`
2. Execute the script with text: `python scripts/elevenlabs_tts.py "Your text here"`
3. Specify voice and output: `python scripts/elevenlabs_tts.py "Text" --voice adam --output audio/output.mp3`
## Voice Presets
Seven pre-configured voices are available. See `references/api_reference.md` for complete voice descriptions:
- `rachel` (default) - Clear, professional female
- `adam` - Deep, authoritative male
- `bella` - Warm, friendly female
- `elli` - Young, enthusiastic female
- `josh` - Friendly, conversational male
- `arnold` - Deep, powerful male
- `ava` - Expressive, dynamic female
## Parameters
### Text
The text to convert to speech. Any length is supported.
### Voice Selection
Specify voice using preset name (e.g., `rachel`, `adam`) or direct ElevenLabs voice ID.
### Voice Parameters
- **stability** (0.0-1.0, default 0.5): Lower values create expressive variation; higher values ensure consistency
- **similarity_boost** (0.0-1.0, default 0.75): Higher values maintain closer adherence to voice characteristics
### Output
Specify the output file path. Default is `output.mp3`. Directories are created automatically.
## Usage Examples
### Basic Python Usage
```python
from scripts.elevenlabs_tts import generate_speech
path = generate_speech(
text="Hello, this is a test message",
voice_id="rachel"
)
```
### Command Line
```bash
# With default voice
python scripts/elevenlabs_tts.py "Generate this text"
# With custom voice and stability
python scripts/elevenlabs_tts.py "Different voice" --voice adam --stability 0.7
# To custom output path
python scripts/elevenlabs_tts.py "Save here" --output audio/narration.mp3
# List available voices
python scripts/elevenlabs_tts.py "" --list-voices
```
## Implementation Notes
- The script handles API communication with error reporting
- Output directories are created automatically if they don't exist
- Returns absolute path to generated audio file
- Uses `eleven_monolingual_v1` model by default (can be overridden)
## Resources
- `scripts/elevenlabs_tts.py` - Main Python script for text-to-speech generation. Can be imported as a module or executed from command line.
- `references/api_reference.md` - Detailed API documentation including voice descriptions, parameter explanations, and usage examples.
- `.env` and `.env.example` - Environment configuration for storing API credentials securely.
© glebis · MIT · glebis/claude-skills
Similar skills
Everything for AI and ML →elevenlabs-tts by other authors comes first.