Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nanowhisper-1.0.0.tar.gz (93.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nanowhisper-1.0.0-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

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

Hashes for nanowhisper-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8eb7a61341cc6a955f086c36d6178960a8da80b9a0c508aa0047918b0bd21a87
MD5 35076213463614b08e45d2998564499c
BLAKE2b-256 8779ebd77822dbb8193830470c83fa3fdc7a83ad1b5f824bc49e12843b6f56e4

See more details on using hashes here.

File details

Details for the file nanowhisper-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nanowhisper-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 035faac212e50c661f4abbebd3c4fc2e4f08d7d3297ce986db673fc7fa9b0175
MD5 633429a11ef2e4ba48606ceb668bc66e
BLAKE2b-256 de9ea47bc7c862251e90376c0fac8a0d6a9328b18cf48fabb072ddf56346c7ad

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page