npx skills add ...
npx skills add elevenlabs/skills --skill elevenlabs-transcribe
Transcribe audio to text using ElevenLabs Scribe. Supports batch transcription, realtime streaming from URLs, microphone input, and local files.
npx skills add elevenlabs/skills --skill elevenlabs-transcribe
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.
brew install ffmpeg on macOS)Transcribe a local audio file:
With speaker identification:
Get full JSON response with timestamps:
Stream from a URL (e.g., live radio, podcast):
Transcribe from microphone:
Stream a local file in realtime (useful for testing):
Suppress status messages on stderr:
| Option | Description |
|---|---|
--diarize | Identify different speakers in the audio |
--lang CODE | ISO language hint (e.g., en, pt, es, fr) |
--json | Output full JSON with timestamps and metadata |
--events | Tag audio events (laughter, music, applause) |
--realtime | Stream local file instead of batch processing |
--partials | Show interim transcripts during realtime mode |
-q, --quiet | Suppress status messages (recommended for agents) |
Plain text transcription:
--json)Final transcripts print as they're committed. With --partials:
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
The script exits with non-zero status on errors:
ELEVENLABS_API_KEY environment variable| Scenario | Command |
|---|---|
| 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 |