audioitlisted
Install: claude install-skill Quarktex/qcobrain
# Skill: audioit
Text → spoken MP3 via a **configurable** TTS provider. No provider is hard-wired — you choose one in
`config.yml`, bring your own credentials, and `synthesize.sh` dispatches to it. Ported and genericized
from a GCP-only original; nothing about any one cloud or project is baked in.
## Configure your provider (`config.yml`)
```yaml
tts:
provider: none # none | macos-say | gcloud | elevenlabs | openai
voice: "" # provider-specific (see below); empty = provider default
```
- **`none`** — the default. The script prints a one-line setup pointer and exits 0. Pick a provider to enable audio.
- **`macos-say`** — zero-config on macOS; uses the built-in `say`. No keys, works offline. `voice` = a macOS
voice name (e.g. `Samantha`); empty = system default. Output is MP3 if `ffmpeg` is installed, else AAC `.m4a`.
- **`gcloud`** — Google Cloud Text-to-Speech (Chirp3-HD voices). Uses **your** gcloud Application Default
Credentials; project comes from `CLOUDSDK_CORE_PROJECT` (or `GOOGLE_CLOUD_PROJECT`). No project id or
service account is baked in — bring your own. `voice` = e.g. `en-US-Chirp3-HD-Charon`.
- **`elevenlabs`** — ElevenLabs API. Needs `ELEVENLABS_API_KEY` in `.env`. `voice` = a voice id.
- **`openai`** — OpenAI audio/speech. Needs `OPENAI_API_KEY` in `.env`. `voice` = `alloy` | `echo` | `fable`
| `onyx` | `nova` | `shimmer`.
Secrets live in `.env` (gitignored), never in `config.yml`. See `.env.example`. You can also override the