DeskScribe is a macOS menu bar dictation app that runs local speech recognition through a native ONNX Runtime path.
Homebrew is the primary install path:
brew tap geier/deskscribe https://github.com/geier/deskscribe
brew trust geier/deskscribe
brew install --cask deskscribeHomebrew requires brew trust for third-party taps before installing casks from them.
Launch DeskScribe, then approve the macOS permission prompts:
- Microphone access for recording.
- Accessibility access for the global hotkey and automatic paste.
The selected speech model downloads automatically the first time it is needed. Models are stored locally under:
~/Library/Application Support/DeskScribe/Models/
The app installs as:
/Applications/DeskScribe.app
- Runs speech recognition locally in the macOS app process, without a Python worker.
- Downloads versioned ONNX model packages from Hugging Face on first use.
- Starts and stops dictation with
Option+Spaceby default. - Shows live partial transcription while recording.
- Pastes the final transcript into the previously active app.
- Supports custom hotkeys, trigger mode, model selection, vocabulary replacement rules, transcript history, and launch-at-login.
DeskScribe currently supports native-compatible NeMo Conformer TDT ONNX packages:
- NVIDIA Parakeet TDT 0.6B v3 Multilingual ONNX:
geier/deskscribe-nvidia-parakeet-tdt-0.6b-v3-onnx(default) - DeskScribe PrimeLine ONNX:
geier/deskscribe-parakeet-primeline-onnx - NVIDIA Parakeet TDT 0.6B v2 English ONNX:
geier/deskscribe-nvidia-parakeet-tdt-0.6b-v2-onnx
Each model package is distributed as a ZIP plus manifest and SHA256 checksum. The app verifies the archive before installing it.
DeskScribe records audio only while dictation is active and runs speech recognition locally. Model packages are downloaded on demand from Hugging Face and reused from local storage.