Privacy-minimal mode: dictate → clipboard, no Accessibility / Screen Recording / global hotkeys required #182
nuwan-forti
started this conversation in
Ideas
Replies: 1 comment
|
Not a bad proposal at all, and it is aligned with the project's goals. I would make it a clear choice during setup, and store that preference, so we can still show the menu bar warning and errors when permissions are missing, since macOS weirdness sometimes break them. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hey! First off, thanks for building FreeFlow, the no-subscription, no-server model is exactly what I want from a dictation tool, and the post-processing quality is great.
I want to start a conversation about supporting a stripped-down "privacy-minimal" mode for users who don't want to grant the app full control of their computer.
The concern
To use FreeFlow today, a user is asked to grant:
For people who are privacy-conscious or work on shared/enterprise machines, that surface area is uncomfortable. "Allow this app to control your computer" is a strong ask for what is, fundamentally, speech-to-text.
The setup wizard currently hard-blocks progress on the Accessibility step, the in-app alert pops on launch and on every Start Dictating attempt, and even the menu bar shows persistent red/orange banners. The app can't be used at all without those permissions, even for users who'd happily trade auto-paste and context-aware spelling for the ability to use it.
The proposal
Add a "minimal mode" (or "manual paste mode") that:
Cmd-V.Why this is worth doing
Cmd-V, and the menu bar already has a manual Start/Stop button.What I tried locally (proof it's a small change)
I've been running a personal fork with the following modifications, and the basic dictate → clipboard flow works end to end:
startHotkeyMonitoring()a no-op so theCGEventTapis never installed — this alone removes the macOS system permission prompt.hasAccessibilityguard inprepareRecordingStart(the existing CGEvent-based auto-paste silently no-ops without permission, and the clipboard write already happens regardless).preserveClipboardtofalseso the transcript stays on the clipboard for manual paste.Happy to clean it up into a PR if there's interest in supporting this officially — wanted to get a read on whether this aligns with the project's direction first.
All reactions