Skip to main content
SpeechKit for macOS is an early beta that does Dictation only. It runs on macOS 14 or newer on Apple Silicon. Intel Macs are not supported. The current public release is v0.70.3, published 2026-09-15.
The macOS bundle is signed ad-hoc, without an Apple Developer ID and without notarization. macOS quarantines it and may claim the app is damaged. It is not. Removing the quarantine label takes one documented command, described below.

Download

macOS bundle (Apple Silicon)

Download SpeechKit-macOS-arm64.zip from the newest published release.
Verify the download against SHA256SUMS.txt before opening it. That file lists the Windows assets too, so check only the line for the macOS archive:

Install

  1. Unzip the download and drag SpeechKit.app into your Applications folder. Move it before the next step: macOS runs an app left in Downloads from a hidden read-only copy, and SpeechKit cannot update itself from there.
  2. Remove the quarantine label in Terminal:
    Nothing is printed when it works. The command needs no password and affects only this app.
  3. Open SpeechKit from Applications and grant Microphone and Accessibility when asked.
Read the full unsigned-release notice for the reasoning behind each step. Nothing in the procedure asks you to disable Gatekeeper system-wide or to run anything as root.

What works, and what does not

The hotkey listener installs but receives no key events, so the menu-bar item is the way to start a dictation until that is fixed. Use the Windows client when you need the complete feature set.

Permissions after an update

macOS remembers permission grants against an app’s exact signature. Every ad-hoc signed build has a different signature, so macOS asks for Microphone and Accessibility again after each update, and sometimes for keychain access. That is expected for an unsigned beta. If an update leaves dictation unresponsive, open System Settings → Privacy & Security → Accessibility and switch SpeechKit back on. It picks the permission up while running; no restart is needed.