Kokoro TTS CLI for macOS/Linux (local, open weights)
Find a file
2026-02-21 13:15:52 -05:00
kokoro_cli Default voice to af_sky 2026-02-21 13:15:52 -05:00
.gitignore Initial Kokoro CLI (download, voices, say) 2026-02-21 12:52:53 -05:00
LICENSE Initial Kokoro CLI (download, voices, say) 2026-02-21 12:52:53 -05:00
pyproject.toml Initial Kokoro CLI (download, voices, say) 2026-02-21 12:52:53 -05:00
README.md Default voice to af_sky 2026-02-21 13:15:52 -05:00

CatacoLabs Kokoro TTS CLI

A small, local-first CLI for the open-weight Kokoro TTS model, optimized for macOS/Linux.

Goals:

  • dead-simple CLI (stdin → wav)
  • keeps weights out of git (download on demand)
  • works great on Apple Silicon CPU; optional server/warm mode later

Quickstart (macOS)

0) Use Python 3.12/3.13

Kokoro ONNX tooling currently targets Python < 3.14. On this Mac mini, the simplest path is:

brew install python@3.12

1) Create a venv + install

/opt/homebrew/bin/python3.12 -m venv .venv
source .venv/bin/activate
pip install -e .

2) Download model files (one-time)

kokoro-cli download

This downloads into ~/.cache/kokoro-cli/ by default.

3) Synthesize

echo "Hello Luis, local TTS is live." | kokoro-cli say --voice af_sky --out out.wav

Play it on macOS:

afplay out.wav

Commands

  • kokoro-cli download — downloads kokoro-v1.0.onnx + voices-v1.0.bin
  • kokoro-cli voices — list available voices
  • kokoro-cli say — one-shot synthesis (loads model per run)
  • kokoro-cli servedaemon mode (keeps model loaded)
  • kokoro-cli client — call the daemon (fast)

Terminal 1:

kokoro-cli serve --host 127.0.0.1 --port 7777

Terminal 2:

echo "instant TTS" | kokoro-cli client --voice af_sky --out out.wav --play

Model sources

This tool uses the community ONNX packaging for Kokoro:

We download model artifacts at runtime and do not commit them.

License

Apache-2.0 (repo code). Model and voice files retain their upstream licenses.