OSTT is a terminal-native speech-to-text tool. Record from a hotkey, transcribe with local Whisper-compatible models or your chosen cloud provider, then send the result to your clipboard, a file, stdout, an AI prompt, or any shell command. Local transcription runs offline and supports GPU acceleration through Metal on macOS and CUDA or Vulkan on Linux.
Overview
Terminal-native speech-to-text tool with support for local and cloud transcription
Open source voice-to-text for the terminal. Record from a hotkey, transcribe with any provider, pipe to AI or shell commands.
From the maintainer
ostt auth # Save cloud provider credentials ostt model # Choose cloud or local transcription model ostt # Record, transcribe, print to stdout ostt -c # Record, transcribe, copy to clipboard ostt -m deepgram/nova-3 -c ostt -m whisper/turbo --param language=sv -c ostt launch -c # Popup workflow for global hotkeys
OSTT is built for people who treat the terminal as a normal place for voice input to land. It does not assume one vendor, one subscription, or one app-specific workflow: use offline local models, bring your own API key for OpenAI, Deepgram, Groq, DeepInfra, AssemblyAI, Berget, ElevenLabs, or Mistral, and retry the same recording with another model when needed. Voice becomes text that can move through the same tools as everything else.
Latest Release
Release Notes
Changed
- Audio capture now uses the system
defaultinput device by default instead of requiring a named device. - The volume meter now calibrates itself by default (
reference_level_db = "auto"). The meter scale adapts to the observed speech level — fast attack, slow release — so metering works out of the box regardless of OS input gain, on macOS and Linux alike. Setting a numericreference_level_dbkeeps the previous fixed-reference behavior. - The red peak indicator now means actual clipping (signal within 3 dB of full scale) when using auto mode, instead of crossing an arbitrary configurable level. When the signal clips, the entire recording footer lights up red for 1.5 seconds.
peak_volume_thresholdnow only applies with a fixed reference level. - Simplified the recording footer: removed the red recording dot and the rapidly flickering instantaneous volume value, leaving the duration and the peak-hold percentage.
- Polished the spectrum visualization: bars now rise instantly and fall with gravity, per-column peak caps sink slowly after loud moments, the spectrum is mirrored center-out so voice fundamentals sit in the middle of the screen, and the whole display dims while recording is paused.
Fixed
- Clipping detection now checks the raw multi-channel input before mono downmixing, so single-channel microphones on multi-channel interfaces no longer hide true peaks.
Install ostt 0.0.25
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/kristoferlund/ostt/releases/download/v0.0.25/ostt-installer.sh | sh
Install prebuilt binaries via Homebrew
brew install kristoferlund/ostt/ostt
Download ostt 0.0.25
| File | Platform | Checksum |
|---|---|---|
| ostt-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| ostt-x86_64-apple-darwin.tar.gz | Intel macOS | checksum |
| ostt-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum |
| ostt-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Discussions