Local voice dictation: Whisper STT + Claude LLM post-processing
Project description
nanowhisper
Local voice dictation for Linux. Press a hotkey, speak, and your words appear as typed text in any application.
Pipeline: Microphone → Whisper (local STT) → Claude (optional cleanup) → typed into active window
Install
Requires uv.
uv tool install nanowhisper
nanowhisper setup
The setup command handles everything: system packages, display server detection (X11/Wayland), keyboard permissions, config file, API key, and starts nanowhisper as a background service.
After setup, log out and back in for keyboard access to take effect.
Configure
Edit ~/.config/nanowhisper/config.toml to change the hotkey, whisper model, output method, etc. The file is well-commented.
Usage
nanowhisper runs as a systemd service after setup. Manage it with:
systemctl --user status nanowhisper # check status
journalctl --user -u nanowhisper -f # view logs
systemctl --user restart nanowhisper # restart after config changes
systemctl --user stop nanowhisper # stop
Or run manually in the foreground:
nanowhisper --preload
Troubleshooting
| Problem | Fix |
|---|---|
| No keyboard found | sudo usermod -aG input $USER, then log out/in |
| Text not appearing | Check [output] method matches your display server |
| First dictation slow | Use --preload or the systemd service (does this by default) |
| Mic permission denied | sudo usermod -aG audio $USER, then log out/in |
| LLM not working | Check ANTHROPIC_API_KEY in ~/.config/nanowhisper/.env |
Uninstall
systemctl --user disable --now nanowhisper
uv tool uninstall nanowhisper
rm -rf ~/.config/nanowhisper ~/.config/systemd/user/nanowhisper.service
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 nanowhisper-1.0.0.tar.gz.
File metadata
- Download URL: nanowhisper-1.0.0.tar.gz
- Upload date:
- Size: 93.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8eb7a61341cc6a955f086c36d6178960a8da80b9a0c508aa0047918b0bd21a87
|
|
| MD5 |
35076213463614b08e45d2998564499c
|
|
| BLAKE2b-256 |
8779ebd77822dbb8193830470c83fa3fdc7a83ad1b5f824bc49e12843b6f56e4
|
File details
Details for the file nanowhisper-1.0.0-py3-none-any.whl.
File metadata
- Download URL: nanowhisper-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
035faac212e50c661f4abbebd3c4fc2e4f08d7d3297ce986db673fc7fa9b0175
|
|
| MD5 |
633429a11ef2e4ba48606ceb668bc66e
|
|
| BLAKE2b-256 |
de9ea47bc7c862251e90376c0fac8a0d6a9328b18cf48fabb072ddf56346c7ad
|