The wh command controls the Local Whisper service and exposes local utilities for recording, transcription, text-to-speech, history, diagnostics, updates, and configuration.

Service lifecycle

Engines and grammar

The CLI switch restarts the service. The macOS menu bar can switch engines and grammar backends in place. Choose Qwen3-ASR 1.7B (higher-quality default) or 0.6B (lower memory and latency) directly with wh engine qwen3_asr <size>, or use wh config. The selected MLX snapshot is downloaded before activation. wh config also controls Qwen vocabulary. When enabled together with Vocabulary replacements, the validated Qwen models receive those rules as local context/hotwords (up to 4,096 characters). Add and manage the underlying word list with wh replace; unsupported engines receive none of this data.

Recording and transcription

Text-to-speech

Text-to-speech uses Kokoro MLX in process after the model is installed. No local TTS server is required.

Replacements

Imports accept CSV, TSV, TOML-style "spoken" = "replacement", or arrow-style spoken -> replacement files, and land in one atomic write. Replacement edits hot-reload a running service — no restart needed. wh replace test shows what the current rules would produce for a sample sentence.

History and diagnostics

Diagnostic reports redact local transcript and config contents. They are designed to be safe to include in private support or issue reports.