← all repositories
savbell/whisper-writer

Dictate Into Any App Using Local or Cloud Whisper

WhisperWriter turns your microphone into a global input device, transcribing speech directly into whichever window is active so you never have to paste.

1.1k stars Python Image · Video · Audio
whisper-writer
Not currently ranked — collecting fresh signals.
star history

What it does WhisperWriter is a background dictation daemon that listens for a keyboard shortcut, records your microphone, and feeds the transcription into the currently focused window as simulated keystrokes. It supports four recording modes—including a continuous loop that restarts automatically after you pause—so you can dictate long passages without toggling the mic on and off. Transcription runs locally by default through faster-whisper, or you can point it at the OpenAI API (or a compatible local endpoint) if you prefer cloud processing.

The interesting bit The app is essentially glue between a microphone, a speech model, and the system input buffer, but that glue is where the value hides: it removes the copy-paste step that makes most dictation tools feel clunky. The author also notes that the initial prototype was almost entirely pair-programmed by ChatGPT-4 and GitHub Copilot, after which WhisperWriter itself was used to draft the prompts—making it a rare case of an AI-assisted tool bootstrapped by its own future siblings.

Key highlights

  • Local-first: defaults to faster-whisper running on CPU or CUDA, with no API key required.
  • Four recording modes, including continuous auto-restart that keeps the mic open until you explicitly toggle it off.
  • Injects text directly into the active window via simulated keypresses, complete with configurable typing delays and trailing-space handling.
  • PyQt5 settings GUI and an optional status window; recently rewritten from tkinter (May 2024).
  • Supports custom API base URLs, allowing substitution of LocalAI or other OpenAI-compatible endpoints.

Caveats

  • The author warns that a major May 2024 rewrite introduced bugs and asks for patience while they are ironed out.
  • Local GPU execution requires manually installing matching NVIDIA cuBLAS and cuDNN libraries, and cuDNN 9+ is currently incompatible with the underlying faster-whisper dependency.
  • Requires Python 3.11 specifically.

Verdict Developers, writers, or anyone with repetitive-strain issues who wants to dictate into arbitrary apps—terminals, browsers, IDEs—should take a look. If you need a polished, zero-configuration commercial product, this is not it yet.

Frequently asked

What is savbell/whisper-writer?
WhisperWriter turns your microphone into a global input device, transcribing speech directly into whichever window is active so you never have to paste.
Is whisper-writer open source?
Yes — savbell/whisper-writer is open source, released under the GPL-3.0 license.
What language is whisper-writer written in?
savbell/whisper-writer is primarily written in Python.
How popular is whisper-writer?
savbell/whisper-writer has 1.1k stars on GitHub.
Where can I find whisper-writer?
savbell/whisper-writer is on GitHub at https://github.com/savbell/whisper-writer.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.