About elevenlabs-tts
elevenlabs-tts is a skill for generating audio through the ElevenLabs text-to-speech API. It is for developers and creators producing spoken content, with voice presets, adjustable parameters, and a script usable from Python or the command line.
Key features
- 01Convert text to speech through the ElevenLabs API
- 02Choose from seven voice presets
- 03Set a voice ID and adjust voice parameters
- 04Import from Python or run from the command line
- 05Set output paths with automatic directory creation
Use cases
- 01Generate narration audio from text
- 02Create speech with different voice presets
- 03Generate audio files in a Python program
- 04Choose a voice and output location from the command line
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ glebis/ claude-skills --skill elevenlabs-ttsAfter installing, type/elevenlabs-ttsin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
.env.example.gitignorerequirements.txt.claude-plugin/plugin.jsonreferences/api_reference.mdscripts/elevenlabs_tts.pyDetails
From the project READMEElevenLabs 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:
- Ensure the
.envfile contains a validELEVENLABS_API_KEY - Execute the script with text:
python scripts/elevenlabs_tts.py "Your text here" - 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 femaleadam- Deep, authoritative malebella- Warm, friendly femaleelli- Young, enthusiastic femalejosh- Friendly, conversational malearnold- Deep, powerful maleava- 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
from scripts.elevenlabs_tts import generate_speech
path = generate_speech(
text="Hello, this is a test message",
voice_id="rachel"
)
Command Line
# 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_v1model 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..envand.env.example- Environment configuration for storing API credentials securely.