Claude-skill-registry elevenlabs-tts

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).

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/elevenlabs-tts" ~/.claude/skills/majiayu000-claude-skill-registry-elevenlabs-tts && rm -rf "$T"
manifest: skills/data/elevenlabs-tts/SKILL.md
source content

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

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_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.