text-to-speech · calesthio — Claude Code skill: what it does, how to install
Generates speech audio with HeyGen Starfish and lets you choose a voice, speed, and pitch. Useful for voiceovers, narration, and podcasts.
npx skills add calesthio/OpenMontage --skill text-to-speech -a claude-codeWhat text-to-speech does
This skill turns text into an audio file through HeyGen Starfish. It can list voices by language and gender, select a voice_id, and set speech speed, pitch, and locale. A locale can be supplied for multilingual voices.
The usual flow starts with mcp__heygen__list_audio_voices, followed by mcp__heygen__text_to_speech. These MCP tools are preferred over direct requests to GET /v1/audio/voices and POST /v1/audio/text_to_speech. The response includes an audio_url and word timestamps.
You need HEYGEN_API_KEY set before use, so check that first. Starfish voices come from GET /v1/audio/voices, while video voices use GET /v2/voices; the two sets are not always compatible.
What it helps with
- turn text into a standalone audio file
- find a voice by language and gender
- adjust speech speed and pitch
- create audio for narration or a podcast
- return word-level timestamps
Example prompts for the agent
- List HeyGen voices for the target language, then turn this script into audio with the selected voice.
- Generate speech from this text with the given `voice_id`, speed 1.0, and pitch 0.
- Find a voice for the requested locale and return the `audio_url` with word timestamps.
How to install text-to-speech
1Skills CLI (Vercel)
npx skills add calesthio/OpenMontage --skill text-to-speech -a claude-code2Manually: put the files in place
~/.claude/skills/text-to-speech/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/text-to-speech/
1Skills CLI (Vercel)
npx skills add calesthio/OpenMontage --skill text-to-speech -a codex2Manually: put the files in place
.agents/skills/text-to-speech/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add calesthio/OpenMontage --skill text-to-speech -a cursor2Manually: put the files in place
.cursor/skills/text-to-speech/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install calesthio/OpenMontage text-to-speech2Manually: put the files in place
.github/skills/text-to-speech/SKILL.md1Skills CLI (Vercel)
npx skills add calesthio/OpenMontage --skill text-to-speech -a gemini-cli2Platform CLI
gemini skills install https://github.com/calesthio/OpenMontage --path .claude/skills/text-to-speechManually: put the files in place
.devin/skills/text-to-speech/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add calesthio/OpenMontage --skill text-to-speech -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set28
The whole set →Other versions of text-to-speech
Similar
Questions about text-to-speech
How do I install text-to-speech in Claude Code?
Run npx skills add calesthio/OpenMontage --skill text-to-speech -a claude-code, then run the same command again: npx skills add calesthio/OpenMontage --skill text-to-speech -a claude-code. The skill file is placed at ~/.claude/skills/text-to-speech/SKILL.md.
What does text-to-speech do?
It creates speech audio from text with HeyGen Starfish. You can select a voice and set speed, pitch, and locale before receiving the audio file URL.
How is the Starfish voice list different from HeyGen video voices?
Starfish uses GET /v1/audio/voices, while video voices use GET /v2/voices. A video voice is not necessarily compatible with Starfish TTS.