# Show HN: VoxHearth is a small privacy-focused Mac TTS app

> Source: <https://github.com/stephansturges/voxhearth-mac>
> Published: 2026-08-10 11:58:56+00:00

**Dictation that stays home.**

VoxHearth is a small, open-source macOS menu bar app for private dictation. It records into memory, transcribes with a bundled Core ML model, and inserts the result into the focused app. The installed app has no account, telemetry, automatic updater, remote API, or runtime model download.

```
microphone → in-memory audio → bundled Core ML model → in-memory text → focused app
```

- Audio and transcripts are not written to a VoxHearth history or cache. If insertion fails, the transcript may remain in memory for up to two minutes so you can Retry or Discard it; it is then discarded automatically.
- The model is part of the signed app and is loaded through a reviewed, network-free FluidAudio subset; downloader and cache clients are not linked.
- The normal insertion paths use macOS Accessibility or Unicode keyboard events. An optional clipboard compatibility fallback is off by default.
- Logs contain fixed operation names and error types, never audio, transcript text, clipboard contents, or file paths.
- Release checks reject network entitlements, known updater/network dependencies, unapproved model files, and source use of network APIs.

Building, signing, and Apple notarization require network access. Running the
installed app does not. Read the complete [privacy statement](/stephansturges/voxhearth-mac/blob/main/Documentation/PRIVACY.md)
and [threat model](/stephansturges/voxhearth-mac/blob/main/Documentation/THREAT_MODEL.md), including the macOS and
destination-app trust boundaries.

- Apple Silicon Mac
- macOS 14 Sonoma or later
- Microphone permission
- Accessibility permission to insert text into other applications

Official binaries exist only as tagged [GitHub Releases](/stephansturges/voxhearth-mac/releases). If
that page does not list `v0.1.0`

, no official VoxHearth binary has been
published yet; build from source and treat any unsigned local DMG as a
development artifact.

To install a published release:

- Open the
[latest GitHub release](/stephansturges/voxhearth-mac/releases/latest)and confirm its tag. - Download the matching
`VoxHearth-v<VERSION>.dmg`

and`SHA256SUMS`

. - Verify the checksum and, optionally, the GitHub provenance/SBOM attestations by
following
[VERIFY_RELEASE.md](/stephansturges/voxhearth-mac/blob/main/Documentation/VERIFY_RELEASE.md). - Open the DMG, drag VoxHearth to Applications, and launch it.
- Complete the microphone and Accessibility permission steps.

The first launch opens a visible setup window. After setup, VoxHearth remains in the menu bar; launching it again reuses the existing instance instead of registering a second dictation listener.

The release workflow publishes a DMG only after it is signed with a Developer ID Application certificate, notarized by Apple, and given a stapled ticket. VoxHearth has no automatic updater; install future versions manually from GitHub Releases.

The default shortcut is **Control-Option-Space**. Hold it while speaking and
release to transcribe and insert. You can also start and stop from the menu bar.
Settings let you choose the shortcut, microphone, and one of the model's 25
supported European languages.

The Accessibility insertion path is preferred. Clipboard compatibility is an explicit opt-in for applications that reject the normal paths; clipboard managers and Universal Clipboard can observe that temporary value.

Xcode 26.2 and its Swift 6 toolchain are the pinned release environment.

```
./scripts/local-check.sh
./scripts/fetch-model.sh
./scripts/build-app-bundle.sh
```

The app appears at `.build/distribution/VoxHearth.app`

. It receives an anonymous
ad-hoc signature so the complete local bundle launches consistently, but it has
no trusted publisher identity or Apple notarization. To create a local,
unsigned development DMG in one command:

```
./scripts/build-release-local.sh
```

Model and DMG bytes live under `.build/`

and are never committed. See
[BUILDING.md](/stephansturges/voxhearth-mac/blob/main/Documentation/BUILDING.md) for signing, notarization, source
bundling, and the exact release credentials.

`Vendor/FluidAudioLocal`

is an attributed, network-free subset adapted from FluidAudio commit`19600a485baa4998812e4654b70d2bab8f2c9949`

(release 0.15.5). The root package has no remote runtime dependency.- The model is pinned to Hugging Face revision
`aed02740059203c4a87495924f685de3722ae9ce`

. locks every permitted model file by byte count and SHA-256.`Models/parakeet-tdt-0.6b-v3-coreml.json`

- Each release includes checksums, SPDX 2.3 SBOM, provenance metadata, a complete source archive containing the reviewed FluidAudio subset, and GitHub provenance and SBOM attestations.

The signed DMG is not bit-for-bit reproducible because Apple timestamps, notarization tickets, and disk-image metadata vary. Its source and model inputs are immutable and independently checkable.

See [CONTRIBUTING.md](/stephansturges/voxhearth-mac/blob/main/CONTRIBUTING.md) before opening a pull request. Report
vulnerabilities privately as described in [SECURITY.md](/stephansturges/voxhearth-mac/blob/main/SECURITY.md); never put
private audio, transcripts, or credentials in a public issue.

VoxHearth is GPL-3.0-or-later. It is a renamed, independent fork of TypeWhisper
v1.5.1. See [LICENSE](/stephansturges/voxhearth-mac/blob/main/LICENSE), [NOTICE](/stephansturges/voxhearth-mac/blob/main/NOTICE), and [UPSTREAM.md](/stephansturges/voxhearth-mac/blob/main/UPSTREAM.md).

The bundled FluidAudio code is Apache-2.0, its incorporated components retain
their notices, and the model is conservatively redistributed under CC BY 4.0.
See [THIRD_PARTY_NOTICES.md](/stephansturges/voxhearth-mac/blob/main/THIRD_PARTY_NOTICES.md),
[MODEL_PROVENANCE.md](/stephansturges/voxhearth-mac/blob/main/Documentation/MODEL_PROVENANCE.md), and [LICENSES](/stephansturges/voxhearth-mac/blob/main/LICENSES).

TypeWhisper is a trademark of its respective owner. VoxHearth is not affiliated with or endorsed by TypeWhisper, NVIDIA, FluidInference, or Apple.
