Linux
A Flatpak bundle. Speaks with Piper, included.
clispeak-linux.flatpakSpeak text aloud on your own devices. Peer to peer, no server, no account.
Install it on your laptop and your phone, pair them once, and either can say something out loud on the other. Nothing passes through anyone else’s machine and there is nothing to sign up for.
It is built so an agent can drive it — which is why it is a command-line tool with a window attached rather than an app with a terminal bolted on.
An agent working in your terminal can say “the build finished” or ask a question out loud, on your phone, while you are in another room. This is the reason clispeak exists.
A test suite, a deploy, a render. Append one command and the machine tells you it is done instead of you checking a terminal every ten minutes.
Send text from your laptop to a phone in the kitchen, or to a machine across the room. Text to speech, on hardware you already own, without an account.
A monitor, a cron job, a wake-up. Spoken aloud rather than added to a pile of notifications, with quiet hours so it respects the time.
Free, and the same build on every platform.
A Flatpak bundle. Speaks with Piper, included.
clispeak-linux.flatpakA disk image, signed and notarised by Apple. Apple silicon.
clispeak-macos.dmgAn installer. No administrator password needed.
clispeak-windows-setup.exeAn APK. 64-bit ARM phones only — every phone made since about 2019, and no emulator.
clispeak-android.apkiOS: coming soon. There is no download yet. When there is, it will speak only while the app is on screen — see what works today.
Every platform has a moment where it tells you this software is dangerous. None of them mean the download went wrong. Here is the one you will hit.
One install does nothing on its own. Pairing is what makes it useful, and it takes about a minute.
An invite carries the space it was made for, so scanning it joins the one you asked for rather than whichever happened to be selected. An invite lasts five minutes and works once — if you go and make a coffee, make a new one.
This is the reason the project exists. An agent working on your machine can tell you something out loud instead of writing to a terminal you have walked away from.
$ clispeak devices
Laptop 5dc736e3b1b945e3 (this device)
Phone 700945f4007d3db5
$ clispeak --to Phone "the build finished"
Phone spoken 2.3s
What makes it drivable rather than merely scriptable: distinct exit codes, so a caller can tell “muted” from “unreachable”; errors that carry a fix rather than a diagnosis; and a receiver that reports a reason instead of swallowing a failure. A device that will not speak says which setting stopped it.
clispeak ships a skill: a file that tells an agent when speaking is worth doing, how to name itself so you know who is talking, and what each exit code means. Two ways to install it, and neither needs you to copy anything by hand.
1. Install clispeak on the machine your agent runs on
The app installs the clispeak command onto your PATH the first time it opens. Open a new terminal afterwards — one that was already open keeps the environment it started with.
2. Install the skill
From the terminal:
clispeak skill --install
That writes it to ~/.claude/skills/clispeak/SKILL.md, where Claude Code looks. Or open the app, go to Settings, and press Install — the same file, and it tells you if the copy on disk has fallen behind the app.
Keeps its skills somewhere else? clispeak skill with no flags prints it, so you can put it wherever your agent reads from.
3. Pair the device you want to be spoken to
Usually your phone — see pairing. Then tell your agent who to talk to, in whatever words you like: “speak to me on my phone when a long job finishes”. The skill covers the rest.
Read the skill before you install it — it is a text file, and it is short.
The honest version. If this disagrees with the README, the README is right.
| Platform | Speech | Background |
|---|---|---|
| Linux | Piper, falling back to espeak-ng if the host has it | tray app |
| macOS | Apple’s own | tray app |
| Android | system text-to-speech | foreground service + battery exemption |
| Windows | SAPI 5 | tray app |
| iOS | Apple’s own | foreground only |
iOS speaks only while the app is on screen, and that is the platform rather than an unfinished corner. Backgrounded, it stops answering somewhere between five and ten minutes. Waking a suspended iOS app needs a push server, and this project deliberately has none.