Privacy
Your voice stays on your Mac.
This page describes exactly what ShellVoice does with audio, text and settings in the current build (0.1.0). It is written from the app's behaviour, not from aspirations.
Audio
ShellVoice records from your microphone only while you hold (or have toggled) the dictation shortcut, for at most five minutes per session. With the default local transcription provider, the recording is transcribed on your Mac by whisper.cpp and discarded immediately afterwards. Raw audio is never written to disk and never logged.
If you select the optional cloud provider (Settings → Dictation → Transcription → Cloud API), the recording is sent to the OpenAI-compatible endpoint you configure, using your own API key, for that dictation only. ShellVoice has no endpoint of its own and never sends audio anywhere unless you choose this option.
Transcripts and spoken text
Transcripts are inserted into the app you were using (or copied to the clipboard). If history is on (the default, Settings → Privacy), recent dictations, spoken text and CLI notifications are kept in a local JSON file with permissions restricted to your user account (chmod 0600). History is capped, can be turned off, and can be cleared at any time from the History screen.
Speech synthesis
Neural voices (Piper) are downloaded once from a public voice catalogue and then run entirely on your Mac. System voices use macOS's built-in synthesizer. Text you ask ShellVoice to speak is not sent anywhere.
Network activity
- Downloading Whisper models and Piper voices you choose in-app.
- The cloud transcription request, only if you enable that provider.
That is the complete list. There are no accounts, no analytics, no crash reporting, no update pings and no telemetry of any kind in the current build.
Settings and secrets
Settings are stored as a JSON file in your user Library, restricted to your user account. If you configure a cloud API key it is stored in that file, not in the macOS Keychain — Keychain storage is a planned improvement. Keep this in mind if you share your user account.
The command line
The shellvoice CLI talks to the app over a Unix domain socket inside the app's data directory, created with 0600 permissions so only your user can connect. Input is length-capped and stripped of control characters. The app never executes text it receives as a shell command.
Permissions
| Permission | Used for |
|---|---|
| Microphone | Recording dictation while the shortcut is held. |
| Accessibility | Synthesizing ⌘V to paste the transcript into the frontmost app. Without it, transcripts are copied to the clipboard instead. |
This website
shellvoice.dev is a static site. It sets no cookies and includes no analytics or third-party scripts. The interactive demonstration on the features page can, only after you click “Use my microphone”, measure your microphone level inside your browser to animate the visual; that audio is never recorded, transcribed or transmitted, and the microphone is released when you stop the demo or leave the page.
Changes
If a future version changes any of the above — for example by adding an opt-in update check — this page and the changelog will say so explicitly.