| name | elevenlabs-core-workflow-b |
| description | Implement ElevenLabs speech-to-speech, sound effects, audio isolation, and
speech-to-text.
Use when converting one voice to another, generating sound effects from a text
description, removing background noise from a recording, or transcribing audio.
Trigger with "elevenlabs speech to speech", "voice changer", "sound effects",
"audio isolation", "remove background noise", "elevenlabs transcribe".
|
| allowed-tools | Read, Write, Bash(npm:*), Bash(curl:*) |
| version | 1.6.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","voice","ai","elevenlabs","speech-to-speech","sound-effects","audio-isolation"] |
| compatibility | Designed for Claude Code |
ElevenLabs Core Workflow B — Speech-to-Speech, Sound Effects & Audio Isolation
Overview
Secondary ElevenLabs workflows beyond TTS: (1) Speech-to-Speech voice conversion,
(2) Sound Effects generation from text descriptions, (3) Audio Isolation for noise
removal, and (4) Speech-to-Text transcription. Each maps to one API endpoint and
has both a TypeScript SDK and a cURL path.
Full code for every step lives in references/implementation.md;
copy-ready invocations are in references/examples.md.
Prerequisites
- Completed
elevenlabs-install-auth setup.
- For STS: source audio file in MP3/WAV/M4A format.
- For audio isolation: noisy audio file to clean.
Authentication
The SDK client (new ElevenLabsClient()) reads the API key from the
ELEVENLABS_API_KEY environment variable automatically — never hardcode it. cURL
requests send it as the xi-api-key: ${ELEVENLABS_API_KEY} header. Full auth setup
is covered by the elevenlabs-install-auth skill.
Instructions
Import the SDK once, then call the relevant module. The client authenticates from
the environment:
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
import { createReadStream, createWriteStream } from "fs";
import { Readable } from "stream";
import { pipeline } from "stream/promises";
const client = new ElevenLabsClient();
- Speech-to-Speech (voice changer) —
client.speechToSpeech.convert(voiceId, …)
against POST /v1/speech-to-speech/{voice_id}. Use model_id: "eleven_english_sts_v2"
and set remove_background_noise: true for built-in cleanup.
- Sound Effects —
client.textToSoundEffects.convert({ text, … }) against
. Tune (0.5–30) and
(0–1; higher follows the prompt more closely).