Listen to AI coding assistant responses via Kokoro TTS.
Project description
lystn CLI
Cross-platform command-line client for the Lystn TTS server. Replaces the Windows-only PowerShell hook with a Python package that works on Windows, Mac, and Linux.
Install
pipx install -e . # from this folder, while developing
# or once published:
pipx install lystn
pipx puts lystn on your PATH in an isolated environment — no
conflicts with your other Python packages.
Configure
lystn config set server http://127.0.0.1:7878 # local server (default)
lystn config set voice af_heart # any voice from `lystn voices`
lystn config set api_key sk_... # only needed for cloud server later
lystn config show
Config lives at:
- Windows:
%APPDATA%\lystn\config.json - Mac/Linux:
~/.config/lystn/config.json
Use
lystn test # speak "Lystn is connected and working."
lystn speak "Hello there." # speak the argument
echo "Hello there." | lystn speak # speak stdin
lystn voices # list voices
lystn doctor # check server reachable
Wire into Claude Code
lystn install
Prints a JSON snippet — copy the hooks block into
~/.claude/settings.json. Restart Claude Code. Every completed
response will be spoken aloud.
The hook is fire-and-forget: if the Lystn server is down or the text is empty, the hook exits silently and doesn't break Claude's UI.
Commands
| Command | What it does |
|---|---|
lystn speak [TEXT] |
Speak text from argument or stdin |
lystn hook |
Claude Code Stop-hook entry — reads JSON from stdin |
lystn test |
Speak a short connection-test message |
lystn voices |
List voices the server offers |
lystn doctor |
Print config + server health |
lystn config show |
Show current config |
lystn config set KEY VALUE |
Update config (server, voice, api_key) |
lystn install |
Print the Claude Code settings snippet |
Requirements
- Python 3.10+
- A running Lystn server (local Kokoro for now; cloud server later)
- Audio output device (
sounddevicehandles it cross-platform)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lystn-0.1.1.tar.gz.
File metadata
- Download URL: lystn-0.1.1.tar.gz
- Upload date:
- Size: 17.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2dfe11d83bdbc624a6edab55104d94bc45ee0a5fc7f41ff41a40ed3c8a4cbe5
|
|
| MD5 |
053cb705f670cd5bf1cd0e7291adbfea
|
|
| BLAKE2b-256 |
8ee23f5d589be15186fb53ba0fc3d44b7939105244c9545401f5b9115b306d85
|
File details
Details for the file lystn-0.1.1-py3-none-any.whl.
File metadata
- Download URL: lystn-0.1.1-py3-none-any.whl
- Upload date:
- Size: 18.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
838dabc2589b9216a16d5717f22c56f5e7551449d9503a9eb86a6c2c67c52709
|
|
| MD5 |
186edff6c9637ea4bee99c4f2339b6d5
|
|
| BLAKE2b-256 |
3c61bd88be81c062fc87d77d2202e95d829e4d5a6139714767a12208947d1641
|