← Back to Skills Marketplace
amreahmed

it will help you to send voice messages to your AI Assistant and also can make it talk

by amreahmed · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
2676
Downloads
1
Stars
21
Active Installs
1
Versions
Install in OpenClaw
/install elevenlabs-voice
Description
Text-to-Speech and Speech-to-Text using ElevenLabs AI. Use when the user wants to convert text to speech, transcribe voice messages, or work with voice in multiple languages. Supports high-quality AI voices and accurate transcription.
README (SKILL.md)

ElevenLabs Speech

Complete voice solution — both TTS and STT using one API:

  • TTS: Text-to-Speech (high-quality voices)
  • STT: Speech-to-Text via Scribe (accurate transcription)

Quick Start

Environment Setup

Set your API key:

export ELEVENLABS_API_KEY="sk_..."

Or create .env file in workspace root.

Text-to-Speech (TTS)

Convert text to natural-sounding speech:

python scripts/elevenlabs_speech.py tts -t "Hello world" -o greeting.mp3

With custom voice:

python scripts/elevenlabs_speech.py tts -t "Hello" -v "voice_id_here" -o output.mp3

List Available Voices

python scripts/elevenlabs_speech.py voices

Using in Code

from scripts.elevenlabs_speech import ElevenLabsClient

client = ElevenLabsClient(api_key="sk_...")

# Basic TTS
result = client.text_to_speech(
    text="Hello from zerox",
    output_path="greeting.mp3"
)

# With custom settings
result = client.text_to_speech(
    text="Your text here",
    voice_id="21m00Tcm4TlvDq8ikWAM",  # Rachel
    stability=0.5,
    similarity_boost=0.75,
    output_path="output.mp3"
)

# Get available voices
voices = client.get_voices()
for voice in voices['voices']:
    print(f"{voice['name']}: {voice['voice_id']}")

Popular Voices

Voice ID Name Description
21m00Tcm4TlvDq8ikWAM Rachel Natural, versatile (default)
AZnzlk1XvdvUeBnXmlld Domi Strong, energetic
EXAVITQu4vr4xnSDxMaL Bella Soft, soothing
ErXwobaYiN019PkySvjV Antoni Well-rounded
MF3mGyEYCl7XYWbV9V6O Elli Warm, friendly
TxGEqnHWrfWFTfGW9XjX Josh Deep, calm
VR6AewLTigWG4xSOukaG Arnold Authoritative

Voice Settings

  • stability (0-1): Lower = more emotional, Higher = more stable
  • similarity_boost (0-1): Higher = closer to original voice

Default: stability=0.5, similarity_boost=0.75

Models

  • eleven_turbo_v2_5 - Fast, high quality (default)
  • eleven_multilingual_v2 - Best for non-English
  • eleven_monolingual_v1 - English only

Integration with Telegram

When user sends text and wants voice reply:

# Generate speech
result = client.text_to_speech(text=user_text, output_path="reply.mp3")

# Send via Telegram message tool with media path
message(action="send", media="path/to/reply.mp3", as_voice=True)

Pricing

Check https://elevenlabs.io/pricing for current rates. Free tier available!

Speech-to-Text (STT) with ElevenLabs Scribe

Transcribe voice messages using ElevenLabs Scribe:

Transcribe Audio

python scripts/elevenlabs_scribe.py voice_message.ogg

With specific language:

python scripts/elevenlabs_scribe.py voice_message.ogg --language ara

With speaker diarization (multiple speakers):

python scripts/elevenlabs_scribe.py voice_message.ogg --speakers 2

Using in Code

from scripts.elevenlabs_scribe import ElevenLabsScribe

client = ElevenLabsScribe(api_key="sk-...")

# Basic transcription
result = client.transcribe("voice_message.ogg")
print(result['text'])

# With language hint (improves accuracy)
result = client.transcribe("voice_message.ogg", language_code="ara")

# With speaker detection
result = client.transcribe("voice_message.ogg", num_speakers=2)

Supported Formats

  • mp3, mp4, mpeg, mpga, m4a, wav, webm
  • Max file size: 100 MB
  • Works great with Telegram voice messages (.ogg)

Language Support

Scribe supports 99 languages including:

  • Arabic (ara)
  • English (eng)
  • Spanish (spa)
  • French (fra)
  • And many more...

Without language hint, it auto-detects.

Complete Workflow Example

User sends voice message → You reply with voice:

from scripts.elevenlabs_scribe import ElevenLabsScribe
from scripts.elevenlabs_speech import ElevenLabsClient

# 1. Transcribe user's voice message
stt = ElevenLabsScribe()
transcription = stt.transcribe("user_voice.ogg")
user_text = transcription['text']

# 2. Process/understand the text
# ... your logic here ...

# 3. Generate response text
response_text = "Your response here"

# 4. Convert to speech
tts = ElevenLabsClient()
tts.text_to_speech(response_text, output_path="reply.mp3")

# 5. Send voice reply
message(action="send", media="reply.mp3", as_voice=True)

Pricing

Check https://elevenlabs.io/pricing for current rates:

TTS (Text-to-Speech):

  • Free tier: 10,000 characters/month
  • Paid plans available

STT (Speech-to-Text) - Scribe:

  • Free tier available
  • Check website for current pricing
Usage Guidance
This skill appears to implement ElevenLabs TTS/STT and will send audio/text to api.elevenlabs.io using an ELEVENLABS_API_KEY. Before installing: (1) confirm the registry metadata is updated to declare the ELEVENLABS_API_KEY requirement and any Python dependencies (requests, python-dotenv); (2) only provide an API key scoped for this use (do not reuse broad or long-lived keys); (3) review or run the scripts in a safe environment to verify behavior and that no other secrets are read; (4) be cautious about placing .env in a shared workspace root — avoid storing unrelated credentials there. The mismatch between metadata and the actual code is the main reason this is flagged as suspicious rather than benign.
Capability Analysis
Type: OpenClaw Skill Name: elevenlabs-voice Version: 1.0.0 The skill bundle is benign. It provides Text-to-Speech and Speech-to-Text functionality using the ElevenLabs API. The Python scripts (`elevenlabs_scribe.py`, `elevenlabs_speech.py`) correctly load the `ELEVENLABS_API_KEY` from environment variables or a workspace `.env` file and make legitimate API calls to `https://api.elevenlabs.io/v1`. File system operations are limited to reading input audio files and writing output audio files, which is expected for its stated purpose. The `SKILL.md` documentation is clear, provides usage examples, and does not contain any prompt injection attempts or instructions for malicious behavior.
Capability Assessment
Purpose & Capability
The name, description, SKILL.md and included Python scripts consistently implement ElevenLabs Text-to-Speech and Speech-to-Text and call api.elevenlabs.io. The capability matches the stated purpose.
Instruction Scope
SKILL.md instructs the agent/user to set ELEVENLABS_API_KEY and shows CLI and code usage for TTS and STT. The runtime instructions only access audio files, write output audio, and call ElevenLabs APIs — they do not request unrelated system files or other credentials. Minor note: examples reference a generic message(action="send", ...) integration but no unexpected external endpoints are used.
Install Mechanism
There is no install spec (instruction-only install), which minimizes disk-write risk. However, the included Python scripts require third-party packages (requests, python-dotenv) that are not declared in the registry metadata; that omission is an incoherence that could cause surprises when attempting to run the skill.
Credentials
Both SKILL.md and the scripts rely on an ELEVENLABS_API_KEY (read from environment or .env). The registry metadata lists no required env vars or primary credential — this is a clear mismatch. Aside from that single API key, no other secrets are accessed, so the key itself is proportionate to the stated function but should be declared.
Persistence & Privilege
The skill is not always:true and does not request persistent/privileged system presence or modify other skills' configurations. It behaves like a normal user-invocable skill.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install elevenlabs-voice
  3. After installation, invoke the skill by name or use /elevenlabs-voice
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
ElevenLabs Speech 1.0.0 - Initial release providing both Text-to-Speech (TTS) and Speech-to-Text (STT) features using ElevenLabs AI. - Supports multiple languages, with high-quality AI voices and accurate transcription. - Includes command line interfaces and Python client for easy integration. - Voice customization options: select voice, adjust stability and similarity. - Lists popular voice IDs for convenience. - Supports voice message workflows for platforms like Telegram. - Comprehensive documentation with code examples, usage, and pricing overview.
Metadata
Slug elevenlabs-voice
Version 1.0.0
License
All-time Installs 21
Active Installs 21
Total Versions 1
Frequently Asked Questions

What is it will help you to send voice messages to your AI Assistant and also can make it talk?

Text-to-Speech and Speech-to-Text using ElevenLabs AI. Use when the user wants to convert text to speech, transcribe voice messages, or work with voice in multiple languages. Supports high-quality AI voices and accurate transcription. It is an AI Agent Skill for Claude Code / OpenClaw, with 2676 downloads so far.

How do I install it will help you to send voice messages to your AI Assistant and also can make it talk?

Run "/install elevenlabs-voice" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is it will help you to send voice messages to your AI Assistant and also can make it talk free?

Yes, it will help you to send voice messages to your AI Assistant and also can make it talk is completely free (open-source). You can download, install and use it at no cost.

Which platforms does it will help you to send voice messages to your AI Assistant and also can make it talk support?

it will help you to send voice messages to your AI Assistant and also can make it talk is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created it will help you to send voice messages to your AI Assistant and also can make it talk?

It is built and maintained by amreahmed (@amreahmed); the current version is v1.0.0.

💬 Comments