Gemini tts
Shareable skills for clankers
npx -y skills add iurysza/agent-skills --skill gemini-ttsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 19 days oldThe repository was created 19 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Generates spoken MP3 audio from text or Markdown with Gemini TTS. Use for narration, accessibility, voice previews, or reading documents aloud.
SKILL.md
2.9 KB, as published. Nobody here has run it
Gemini TTS
Generate an MP3 from inline text or a UTF-8 text/Markdown file with the bundled script.
Setup
Resolve paths relative to this SKILL.md; do not assume a particular install directory.
python3 -m pip install -r <skill-directory>/requirements.txt
export GEMINI_API_KEY='...'
GOOGLE_API_KEY and OPENCODE_GOOGLE_API_KEY are accepted as fallbacks. Set GEMINI_TTS_MODEL to override the default model.
Before generation
Confirm or infer:
- source text or file
- output path
- voice or template
- desired delivery notes and speed
- whether playback is wanted
For long input, report the chunk count before making paid API calls. Ask for confirmation when the request is unexpectedly large or the user has not clearly approved generation.
Discover voices and templates
python3 <skill-directory>/scripts/generate_tts.py --list-voices
python3 <skill-directory>/scripts/generate_tts.py --list-templates
python3 <skill-directory>/scripts/generate_tts.py --show-template mystery-narrator
Bundled templates include mystery-narrator, newscaster, whisper, empathetic, deadpan, promo-hype, and podcast-newsletter.
Generate audio
From text:
python3 <skill-directory>/scripts/generate_tts.py \
--text 'Read this clearly and naturally.' \
--voice Orus \
--output ./narration.mp3
From a file and template:
python3 <skill-directory>/scripts/generate_tts.py \
--file ./article.md \
--template podcast-newsletter \
--output ./article.mp3 \
--play
Customize delivery when needed:
python3 <skill-directory>/scripts/generate_tts.py \
--file ./script.txt \
--voice Kore \
--profile 'Calm technical narrator' \
--scene 'A quiet recording booth' \
--notes 'Clear diction, measured pace, neutral accent' \
--speed 1.1 \
--output ./script.mp3
Explicit CLI flags override template values. Templates override the hard defaults (Orus, speed 1.0).
Reliability controls
--max-workers N: concurrent chunk requests; default1--requests-per-minute N: request throttle; default8;0disables it--allow-partial: write an MP3 despite failed chunks; avoid unless the user accepts missing audio
Environment equivalents are GEMINI_TTS_MAX_WORKERS and GEMINI_TTS_RPM.
Verification
After generation:
- Confirm the command exited successfully.
- Confirm the MP3 exists and is non-empty.
- Report the exact output path.
- If playback was requested, report when no supported player is installed.
Never print API keys or include them in command examples, logs, or output files.