skills$openclaw/elevenlabs-transcribe
paulasjes9.6k

by paulasjes

elevenlabs-transcribe – OpenClaw Skill

elevenlabs-transcribe is an OpenClaw Skills integration for coding workflows. Transcribe audio to text using ElevenLabs Scribe. Supports batch transcription, realtime streaming from URLs, microphone input, and local files.

9.6k stars8.5k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

nameelevenlabs-transcribe
descriptionTranscribe audio to text using ElevenLabs Scribe. Supports batch transcription, realtime streaming from URLs, microphone input, and local files. OpenClaw Skills integration.
ownerpaulasjes
repositorypaulasjes/elevenlabs-transcribe
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @paulasjes/elevenlabs-transcribe
last updatedFeb 7, 2026

Maintainer

paulasjes

paulasjes

Maintains elevenlabs-transcribe in the OpenClaw Skills directory.

View GitHub profile
File Explorer
6 files
.
scripts
requirements.txt
491 B
transcribe.py
13.3 KB
transcribe.sh
2.8 KB
_meta.json
297 B
SKILL.md
3.7 KB
SKILL.md

name: elevenlabs-transcribe description: Transcribe audio to text using ElevenLabs Scribe. Supports batch transcription, realtime streaming from URLs, microphone input, and local files. homepage: https://elevenlabs.io/speech-to-text metadata: {"clawdbot":{"emoji":"🎙️","requires":{"bins":["ffmpeg","python3"],"env":["ELEVENLABS_API_KEY"]},"primaryEnv":"ELEVENLABS_API_KEY"}}

ElevenLabs Speech-to-Text

Official ElevenLabs skill for speech-to-text transcription.

Convert audio to text with state-of-the-art accuracy. Supports 90+ languages, speaker diarization, and realtime streaming.

Prerequisites

  • ffmpeg installed (brew install ffmpeg on macOS)
  • ELEVENLABS_API_KEY environment variable set
  • Python 3.8+ (dependencies auto-install on first run)

Usage

{baseDir}/scripts/transcribe.sh <audio_file> [options]
{baseDir}/scripts/transcribe.sh --url <stream_url> [options]
{baseDir}/scripts/transcribe.sh --mic [options]

Examples

Batch Transcription

Transcribe a local audio file:

{baseDir}/scripts/transcribe.sh recording.mp3

With speaker identification:

{baseDir}/scripts/transcribe.sh meeting.mp3 --diarize

Get full JSON response with timestamps:

{baseDir}/scripts/transcribe.sh interview.wav --diarize --json

Realtime Streaming

Stream from a URL (e.g., live radio, podcast):

{baseDir}/scripts/transcribe.sh --url https://npr-ice.streamguys1.com/live.mp3

Transcribe from microphone:

{baseDir}/scripts/transcribe.sh --mic

Stream a local file in realtime (useful for testing):

{baseDir}/scripts/transcribe.sh audio.mp3 --realtime

Quiet Mode for Agents

Suppress status messages on stderr:

{baseDir}/scripts/transcribe.sh --mic --quiet

Options

OptionDescription
--diarizeIdentify different speakers in the audio
--lang CODEISO language hint (e.g., en, pt, es, fr)
--jsonOutput full JSON with timestamps and metadata
--eventsTag audio events (laughter, music, applause)
--realtimeStream local file instead of batch processing
--partialsShow interim transcripts during realtime mode
-q, --quietSuppress status messages (recommended for agents)

Output Format

Text Mode (default)

Plain text transcription:

The quick brown fox jumps over the lazy dog.

JSON Mode (--json)

{
  "text": "The quick brown fox jumps over the lazy dog.",
  "language_code": "eng",
  "language_probability": 0.98,
  "words": [
    {"text": "The", "start": 0.0, "end": 0.15, "type": "word", "speaker_id": "speaker_0"}
  ]
}

Realtime Mode

Final transcripts print as they're committed. With --partials:

[partial] The quick
[partial] The quick brown fox
The quick brown fox jumps over the lazy dog.

Supported Formats

Audio: MP3, WAV, M4A, FLAC, OGG, WebM, AAC, AIFF, Opus Video: MP4, AVI, MKV, MOV, WMV, FLV, WebM, MPEG, 3GPP

Limits: Up to 3GB file size, 10 hours duration

Error Handling

The script exits with non-zero status on errors:

  • Missing API key: Set ELEVENLABS_API_KEY environment variable
  • File not found: Check the file path exists
  • Missing ffmpeg: Install with your package manager
  • API errors: Check API key validity and rate limits

When to Use Each Mode

ScenarioCommand
Transcribe a recording./transcribe.sh file.mp3
Meeting with multiple speakers./transcribe.sh meeting.mp3 --diarize
Live radio/podcast stream./transcribe.sh --url <url>
Voice input from user./transcribe.sh --mic --quiet
Need word timestamps./transcribe.sh file.mp3 --json
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

- **ffmpeg** installed (`brew install ffmpeg` on macOS) - **ELEVENLABS_API_KEY** environment variable set - Python 3.8+ (dependencies auto-install on first run)

FAQ

How do I install elevenlabs-transcribe?

Run openclaw add @paulasjes/elevenlabs-transcribe in your terminal. This installs elevenlabs-transcribe 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/paulasjes/elevenlabs-transcribe. Review commits and README documentation before installing.