Important
Not verified on a device for 0.7.0: fresh installation, VoiceOver, Bluetooth and USB microphones, and the Japanese, Hindi and Tamil Beta paths with their 1.6 GB model download. See known limits.
- Documentation
- Quick Start
- Screenshots
- Why Mouthtype
- Features
- Privacy and Permissions
- Feature Comparison
- Roadmap
- Build and Contribute
- Experimental Linux Source
- Built With
- Community and Support
- CodesWhat Ecosystem
- License
Mouthtype runs speech recognition and cleanup on your Mac. It puts the result in the text field you're already using, with local history and recovery when delivery fails. No account or transcription subscription is required.
The Mac app is at 0.7.0, a stable release. It supports Apple Silicon and macOS 26 or later. The signed app and corresponding release source are at mouthtype.app/download and mouthtype.app/source.
- Download the signed, notarized DMG from mouthtype.app/download.
- Open the DMG, drag Mouthtype to Applications and open it.
- Grant Microphone and Accessibility access when prompted. The speech model and a small speech detector download on first launch.
- Click an ordinary text field, hold Fn, speak, then release.
Prefer Homebrew? brew install --cask codeswhat/tap/mouthtype installs the same signed DMG build from the CodesWhat tap. The app still updates itself.
Hold Fn, double-tap Fn, or use Fn+Space. Control+Command+V pastes the last delivered take and Control+Command+C copies it. A single recording stops after 20 minutes, with a warning at 19.
See the install notes and the getting-started guide for the full walkthrough. What changed in each release is in packaging/ReleaseNotes.txt.
| Light | Dark |
![]() |
![]() |
| Classic pill | Hi-Fi pill |
![]() |
![]() |
You already know what you mean, and sometimes saying it is the easier way in. Mouthtype is a small tool for that: hold your shortcut, speak, release, and the text lands in the app you were using.
It runs on your machine. Recognition and cleanup are local once the models have downloaded, you don't need a Mouthtype account to dictate, and your recordings and history stay on your Mac. Cleanup aims to remove the rough edges while keeping your wording, and you pick how much of it you want. If delivery fails, the take is still saved, so you can copy or retry it.
It's early days. App compatibility, clipboard behavior and fresh-install setup still need wider testing. Read why Mouthtype for the longer version.
| Feature | Description | |
|---|---|---|
| ποΈ | Hold or Hands-Free Dictation | Hold Fn, double-tap Fn, or use Fn+Space. Recording behavior and shortcuts are configurable. |
| π§Ή | Local Cleanup | Basic formatting works without a cleanup model. Fast (the default level) and Thorough use optional local models and preserve wording. Until the selected model finishes downloading, dictations use Basic. |
| ποΈ | Writing Rules | Choose Formal, Casual, Very casual or Excited, with per-app and website rules for tone, cleanup level and your own instructions. |
| π | Saved Spellings and Phrases | Keep exact local spelling rules and reusable text, including multiline phrases. Optional Boost my saved words favors them while recognizing. |
| βοΈ | Transform Selection | Preview Clean up, Fix grammar, Make shorter, More formal or More casual on text you've selected in another app, then explicitly accept the replacement. Accept only replaces the text if the app, field and selection are unchanged. |
| π | File Transcription | Import one WAV, AIFF or M4A, up to 10 minutes and 512 MB, then explicitly copy or save the result. |
| π€ | Microphone Selection | Follow System Default, choose a named input, or opt into an ordered priority list. |
| π | Recovery | Copy or retry saved text after a failed paste. Interrupted audio remains recoverable, and Recover works on any take whose audio is still saved. |
| π | Home and Stats | Your last 50 takes on Home, and words, speed and streaks on Stats, all worked out on your Mac. Takes from secure fields are never counted. |
| π | Pill Styles | A small recording pill in Classic, Hi-Fi, Glass, Matrix or Minimal, with Light and Dark previews and Standard or Large size. |
| π₯οΈ | Editor Hints | Optional. With Boost my saved words on, Mouthtype can add up to 40 code names from VS Code, Cursor, Xcode and Terminal to the boost for one take. Nothing is kept after the take. |
| π€ | Automation | mouthtype:// URLs and a mouthtype command-line script can start, stop, toggle, cancel, copy and paste the last take, and open a page. Dictation commands are off until you turn on the automation switch. |
| π | Built-in Updates | Signed update checks through Sparkle, with optional automatic checking. |
See the usage reference for cleanup behavior, delivery limits and current caveats. Quiet other audio is on by default from 0.4.0 (it stays off if you turned it off before), and Live words is optional and off by default. Check the destination before retrying an interrupted paste, since some text may already have arrived. Split pastes preserve text and never synthesize a Return key press.
Audio, transcripts, settings, spellings and phrases stay on this Mac. The default data directory is ~/Library/Application Support/Mouthtype/. Text history is retained indefinitely. Completed audio defaults to 90 days and 2 GB; unfinished and recovery audio are protected from normal retention cleanup. The local database and recordings aren't encrypted by Mouthtype, so protect the Mac and its backups accordingly.
Microphone access records a take. Accessibility access handles the global shortcut, examines the destination and inserts text. Cleanup can read a small amount of nearby text for formatting and spelling hints, excluding secure fields. Phrase rules can explicitly insert the clipboard's text. These are powerful permissions; grant them only to a build you trust.
Model downloads and optional update checks use the network. Dictation and cleanup run locally. The security policy and security controls and limits describe reporting, distribution integrity and the boundaries of those claims.
How does Mouthtype compare to Apple Dictation and Wispr Flow?
These are tradeoffs, not a scoreboard. We haven't run a controlled accuracy or speed benchmark against either product, and nothing here claims Mouthtype is more accurate or faster. Β β = supported Β β = not supported
| What matters | Mouthtype | Apple Dictation | Wispr Flow |
|---|---|---|---|
| Where it runs | Apple Silicon Macs, macOS 26+. Experimental Linux source only. | Part of macOS | Mac, Windows, iOS and Android |
| Separate app to install | β | β | β 1 |
| Recognition | Local, after model downloads | On-device for general text on supported setups. Check your Mac's notice. | Cloud, needs internet access |
| Cleanup | Basic rules, or optional local Fast and Thorough models | Automatic punctuation in supported languages, plus spoken punctuation and formatting commands | Dictation and text cleanup together |
Stay with Apple Dictation if you want built-in dictation without another app and its output already suits you. Consider Wispr Flow if you want dictation across desktop and mobile and cloud processing works for your setup. Try Mouthtype if you want local recognition and cleanup on a supported Mac, explicit cleanup choices and a small app with optional skins.
Product details checked October 16, 2026. See the Apple Dictation and Wispr Flow comparisons for sources. Contributions welcome if any information is inaccurate.
1 Wispr's help center tells you to download Flow and open it from the menu bar or system tray (data sharing and local history, URL checked 2026-10-21).
Shipped and planned
High-level themes only, with no dates. CHANGELOG.md has per-release detail.
| Version | Theme | Highlights |
|---|---|---|
| 0.1.x β | First stable release | Hold Fn, speak, release. Local recognition and cleanup, recovery after interrupted takes |
| 0.2.x β | Transform and boost | Transform selected text, optional Boost my saved words, cleanup level in app and website rules |
| 0.3.x β | Home and Stats | Home page with recent takes and Recover, Stats page, suggested spellings |
| 0.4.0 β | One window | Single redesigned window, Transform Selection preview, Transforms page, separate Transcribe Audio File window, automation, editor hints |
| 0.5.0 β | Speed and slash commands | Launch and dictation speed, spoken slash commands in coding apps, Show in Dock, a docs site, Fn remap and quit-path hardening, cleanup fixes, real app icons in Style lists |
| 0.6.0 β | Languages and names | Dictation in 25 languages with Auto-detect, a mouse-button trigger, dictionary export and Wispr Flow and VoiceInk import, names on screen and a Models page in Setup, a silent-microphone warning, per-app cleanup instructions, an Excited tone, repeatable release builds, a Homebrew cask |
| 0.7.0 β | Beta languages and fixes | Japanese, Hindi and Tamil dictation in Beta through a separate 1.6 GB Whisper model, selected-text cleanup tone precedence, dictionary and cleanup fixes, a website typing speed test with a countdown |
| Planned | Next | Linux desktop client acceptance and a supported release, a Ring pill style |
Still open: fresh-install, VoiceOver, and Bluetooth and USB microphone verification, and wider app-compatibility testing. See known limits.
Install Xcode with Swift 6.2 on a supported Mac. Run bash scripts/run-app.sh to build and open a signed app bundle. Without a Developer ID identity, the script uses ad-hoc signing; permission grants and distribution guarantees differ from the released app.
Run swift test for core, macOS integration logic, Settings rendering and Fn guardian tests. Desktop self-tests take focus and require a free desktop. Tests don't replace physical microphone or third-party app acceptance.
Read CONTRIBUTING.md for checks, dependency maintenance and the reviewed development-branch workflow. Report vulnerabilities through SECURITY.md.
Linux work targets x86_64 Arch/Omarchy, Hyprland and PipeWire. The source includes a daemon/CLI, setup diagnostics, an Omarchy bar plugin with a floating pill, single-file audio transcription, optional paste or typing delivery and optional local Fast and Thorough cleanup models. Delivery is recovery-only and cleanup is off by default. There is no supported Linux desktop release. Physical acceptance remains open, and the Linux cleanup models differ from the Mac ones (Thorough is Qwen3 4B, not Gemma). Follow the Linux setup and testing guide or the Omarchy plugin guide.
Licenses for each component are in THIRD_PARTY_NOTICES.md.
Components and licenses
| Component | What it does | License |
|---|---|---|
| FluidAudio | Runs the Parakeet speech models on Core ML | Apache-2.0 |
| WhisperKit | Alternative Whisper speech recognition | MIT |
| mlx-swift-lm | Runs the local cleanup models on MLX | MIT |
| Sparkle | Signed update checks | MIT |
| GRDB.swift | SQLite storage for local history | MIT |
| Parakeet TDT 0.6B v3 | Speech recognition | CC BY 4.0 |
| Silero VAD | Speech detection | MIT |
| S1-mini | Fast cleanup | Apache-2.0 plus a naming clause |
| Gemma 4 E4B | Thorough cleanup | Apache-2.0 |
Speech recognition uses NVIDIA's Parakeet models, converted to Core ML by FluidInference. No model is bundled; each downloads on request.
Open an issue for bugs, or ask in Discussions. Include the app version, macOS version, destination app and reproduction steps; omit personal transcripts and recordings. Report vulnerabilities through SECURITY.md, not in an issue. The troubleshooting guide covers the problems you can hit today.
| Tool | Role |
|---|---|
| mouthtype | Local dictation for Mac. Hold Fn, speak, release to paste |
| drydock | Container update monitoring, web UI and notification engine |
| portwing | Remote Docker agent, secure socket-level access from Drydock or standalone |
| sockguard | Docker socket proxy, default-deny allowlist filter protecting the socket |
Mouthtype is the one desktop app here. The other three tools are for Docker hosts and are designed to layer: sockguard filters the socket, portwing exposes it remotely, and drydock monitors and acts on container state.
Mouthtype is licensed under GPL-3.0. Corresponding release source is available separately from the app download. Dependencies, fonts, adapted code and downloaded models have their own terms. THIRD_PARTY_NOTICES.md records adapted code, fonts, the S1-mini model, the Swift package dependencies and the downloaded models.



