Skip to content

Releases: note89/hearsay

hearsay 0.2.2

Choose a tag to compare

@github-actions github-actions released this 09 Sep 10:23

hearsay v0.2.2 — cleanup that runs, and a cloud cleanup model on the Mac

A 290-word dictation came out raw because the cleanup step hit its 8 s timeout and the app kept the
transcript. Fixed, and the ceiling of the on-device model on long rewrites is now something you can
choose around.

New

  • Cleanup model choice on macOS (Style pane): on this Mac (private, free) or Gemini 3.7 Flash via
    OpenRouter. The cloud model receives the transcript and dictionary terms only; field context is not even
    read when it is selected.
  • Cleanup timeout scales with length: 6 s plus 70 ms per word, capped at 40 s, instead of a flat 8 s.
  • Cleanup rules tightened (both apps): keep every request and the sign-off, keep the point of view,
    standard spelling for product names ("key cloak" → Keycloak), lists for enumerated options.
  • OpenRouter errors say what the server said ("no credits", with the top-up link) instead of "failed".
  • hearsay-check polish file.txt [light|full] [style] [cloud] and hearsay-rs polish file.txt [model]
    run cleanup on a transcript file and time it.
  • Linux/Windows cleanup default is Gemini 3.7 Flash, the same model as the Mac cloud option.

hearsay 0.2.1

Choose a tag to compare

@github-actions github-actions released this 06 Sep 14:34

hearsay v0.2.1 — NixOS, Wayland paste, baked-in fonts

New

  • Nix flake. nix run github:note89/hearsay builds hearsay-rs with every library linked and the
    run-time-loaded ones wrapped in, so it starts on NixOS. nix develop for a dev shell. CI builds the flake
    on every push.
  • Wayland paste on wlroots compositors. hearsay asks the compositor for zwp_virtual_keyboard_v1:
    Hyprland, Sway and river get the paste at the caret; GNOME still gets the clipboard and a "press Ctrl+V" pill.
  • Fonts baked in. Inter for text and JetBrains Mono for keys and paths ship inside the binary, so the
    Linux and Windows window looks the same everywhere, and closer to the Mac app. Both SIL OFL.
  • Honest insertion outcomes. "copied — could not paste" and "nothing landed — the text is in History"
    are now distinct; the log says which step failed. hearsay-rs insert "text" tests insertion by hand.
  • hearsay-rs insert and hearsay-rs transcribe file.wav [engine] for debugging a desktop.

Fixes

  • Style pane cards laid out horizontally on Linux; History showed a day count instead of a date.

hearsay 0.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 13:46

hearsay v0.2.0 — Linux & Windows, the race, mixed languages

hearsay now runs on all three desktops. hearsay.app is the Mac app; hearsay-rs is the Rust port with
the same concepts, the same data files and the same bake-off lab.

New

  • hearsay-rs for Linux and Windows: hold Ctrl+Alt+Space, speak, release. whisper.cpp on-device (base.en
    or large-v3-turbo, downloaded from the Dictation pane with progress). Wayland sessions supported: the
    chord is read from the keyboard devices, the text goes to the clipboard.
  • Engines: ElevenLabs Scribe v2, Gemini 3.5 Transcribe Live (streaming, partials in the pill on every
    platform), Gemini 3.7 Flash via OpenRouter. Mixed-language dictation (svengelska) works on all three.
  • API keys are found automatically (environment, keys.env, shell profile) and can be pasted in the app.
  • The bake-off is a race: one take feeds every ticked engine, a leaderboard by WER and latency, each
    engine's record against the rival, failures counted. Ten-sentence script with Swedish, svengelska and
    Portuguese. Both apps.
  • Every engine receives dictionary terms as vocabulary hints.
  • Overlay: good news is a glance (700 ms, fading), warnings stay readable.

Known limits on Linux/Windows (deliberate, see PLAN-CROSSPLATFORM.md)

  • Local whisper is batch: no live partials (Gemini 3.5 Transcribe streams).
  • Paste-only insertion; no field context, per-app tone or secure-field detection.
  • Cleanup (Light/Full) uses OpenRouter, opt-in. Off is fully local.
  • Prebuilt binaries run whisper on the CPU; GPU back ends are build-from-source features.

Verified: macOS build and bake-off tests; Linux x86_64, Windows x86_64 and macOS built and tested by
GitHub Actions, Linux window smoke-tested under Xvfb; Windows with whisper compiled on MSVC.

Assets: hearsay-0.2.0.zip (macOS app, local certificate — right-click → Open), hearsay-rs-linux-x86_64.zip,
hearsay-rs-windows-x86_64.zip, hearsay-rs-macos-arm64.zip (the Rust app on a Mac, for comparison runs).

hearsay 0.1.1

hearsay 0.1.1 Pre-release
Pre-release

Choose a tag to compare

@note89 note89 released this 01 Sep 19:48

Fixes from the full review round.

  • Scorer crash: dictating a token like "90's" in the bake-off pane recursed forever (SIGSEGV). Fixed, with regression tests.
  • Bake-off fairness: typographic apostrophes no longer penalize every contraction; wer and diff share one token pipeline.
  • Cloud engines detect language themselves — the Apple locale is no longer passed to them.
  • Bake-off: Retake last, Archive & reset, Delete all runs; takes record only into the run they started in; mode is derived from where the text would land, not from window activation.
  • A missing API key keeps your engine choice (runs on Apple until the key exists). Focus drifting onto a password field keeps your dictation instead of discarding it. Salvage on failure includes text finalized after release.
  • Privacy: support files repaired to 0600, arena-era leftovers purged, content-free logs, no shell in Relaunch. Overlay shows a 'cloud' badge for cloud sessions.
  • Field context moved under Style (it feeds cleanup); the Dictionary pane discloses that terms need cleanup on.

hearsay 0.1.0

hearsay 0.1.0 Pre-release
Pre-release

Choose a tag to compare

@note89 note89 released this 01 Sep 16:45

First public build.

Push-to-talk dictation for macOS 26+: on-device transcription (Apple SpeechAnalyzer), on-device cleanup (Apple FoundationModels), per-app tone, dictionary, field context, and the built-in Wispr Flow bake-off lab.

Install: unzip, drag to /Applications, then right-click → Open (the build is signed with a local certificate, not a paid Developer ID) — or xattr -dr com.apple.quarantine /Applications/hearsay.app. Grant Microphone, Accessibility and Input Monitoring on first run.

Known limits: no notarization yet; Apple engine needs a manual language pick (cloud engines auto-detect); Swedish runs on Apple's DictationTranscriber fallback.