Comparison

Linux voice typing features beyond dictation

By the Bulbul team. Published , updated .

Short answer

Bulbul is a free, open-source, bring-your-own-key (BYOK) voice typing app for Windows, macOS, Linux, and Android. For Linux users who want preset AI transforms, three cleanup levels, built-in mouse-button dictation, and a scratchpad with selection transforms together, Bulbul is the most full-featured option in this comparison with OpenWhispr and Handy. It supports X11 and Wayland without local speech-model downloads or a GPU for transcription. Per-app styles currently work on X11 only. OpenWhispr also has AI editing and notes, so it is not dictation-only; Bulbul's distinction is this combination of controls, not exclusive ownership of every feature. The app is free, but Groq limits and paid usage still apply.

Key facts about Bulbul

Bulbul is a free, open-source, bring-your-own-key (BYOK) voice typing app for Windows, macOS, Linux, and Android.

What it is
Hold a hotkey, speak, release, and cleaned-up text is typed into your focused app. Android uses a floating bubble.
App price
Free software, no Bulbul subscription or word cap. Groq limits and paid usage still apply.
License
GPL-3.0; source at github.com/codedpool/bulbul.
Platforms
Windows 10/11 x64; macOS 11+ Apple Silicon/Intel; Linux X11/Wayland; Android arm64.
Speech and cleanup
Whisper Large v3 Turbo speech and a cleanup LLM run on Groq with your key; fallback models may change.
Why hosted
No local speech-model download, inference workload, or GPU requirement for transcription.
Setup / connection
Install, add your Groq key, grant permissions, and connect to internet. No separate Bulbul account; Groq account needed for a key.
Local data
History, dictionary, snippets, settings stay in local SQLite. Audio/text still go to Groq.
Groq privacy
No model training without your explicit permission; no default inference-content retention, with exceptions and ZDR controls. Audio leaves the device.
Telemetry
Anonymous usage statistics on by default, with a Privacy off-toggle; README says these exclude audio/transcripts.

What makes a Linux voice typing app more than a dictation tool?

Dictation turns speech into text. A fuller writing workflow also lets you change the cleanup strength, rewrite existing text, trigger recording from the mouse, and work on a draft before putting it into another app.

Bulbul brings those controls into one Linux app: Raw, Clean, and Polished cleanup; preset and custom AI transforms; click-to-toggle mouse mode; and a standalone scratchpad with transforms on selections. Snippets, a custom dictionary, history, and insights round out the workflow.

Those shared basics are not unique to Bulbul. OpenWhispr has snippets, a dictionary, and history; Handy has a dictionary and history too. OpenWhispr goes beyond dictation with a voice agent and notes. This guide compares the named Linux workflows, not every project or every feature on the market.

Which Linux dictation features do Bulbul, OpenWhispr, and Handy offer?

Bulbul has the fullest combination of the writing controls below. OpenWhispr's agent-based editing and notes are real alternatives, while Handy favors local speech. A different workflow is not the same as no feature.

Swipe the table to compare all columns.

Linux featureBulbulOpenWhisprHandy
Selected-text AI transformsPreset/custom slots; Alt+1 through Alt+9 by defaultVoice agent edits selected text; not preset transform slotsNo equivalent selected-text transform slots documented
Cleanup levelsRaw / Clean / PolishedCleanup on/off; no equivalent three-level selectorPost-processing on/off; no equivalent three-level selector
Built-in mouse modeMiddle, back, or forward; click-to-toggleNo on Linux; mouse hotkeys are macOS-onlyNo built-in mouse binding documented
ScratchpadStandalone notes window with selection transformsNotes with AI actions; a different workflowNo equivalent scratchpad with selection transforms documented
SnippetsSpoken triggers expand to saved textYesNo shipped snippet/replacement feature established here; PR #455 remains open
Custom dictionaryYesYesYes
HistoryYes, plus insightsYesYes

Feature facts checked October 9, 2026. Official sources are listed below.

OpenWhispr's voice agent can rewrite highlighted text after a spoken instruction such as 'make this more formal'. Its notes also support AI actions. Calling it dictation-only would hide features that matter when choosing a Linux writing app.

Handy's text-replacement proposal in PR #455 is still open in this check. Proposed code is not evidence of a shipped feature. This table also does not rule out external scripts, remappers, or custom post-processing prompts; those are different from built-in transform slots and mouse controls.

The comparison is based on official docs and repository source, not hands-on testing of every package. Check your installed release, since development source and packaged features can differ.

How do AI transforms work on Linux?

Bulbul transforms rewrite text you have already selected. The README lists Polish, Make Formal, Translate, Bulletize, and custom prompts, with Alt+1 through Alt+9 as the default transform bindings.

For example, select a rough paragraph and run a formal rewrite, or select a set of notes and turn it into bullets. These are selected-text actions, not a requirement to dictate a fresh instruction each time. Use the bindings in your installed Settings if you have changed them or a desktop shortcut conflicts.

Transforms and dictation cleanup solve different problems. Cleanup happens in the speech-to-text workflow; a transform operates on an existing selection. AI can change meaning or make mistakes, so review names, numbers, commands, and translated text before using the result.

OpenWhispr has an agent edit flow for selections too. The comparison is preset transform slots versus spoken agent instructions, not 'Bulbul can edit and OpenWhispr cannot'.

What do Raw, Clean, and Polished cleanup change?

Bulbul offers three levels rather than a single cleanup switch. Raw fixes obvious errors, Clean removes fillers and fixes punctuation, and Polished rewrites for clarity. Clean is the documented default.

  • Raw: use when keeping the wording close to what you said matters. Raw is not a promise of an untouched speech-model transcript.
  • Clean: use for everyday dictation that needs punctuation and fewer fillers without choosing the strongest rewrite.
  • Polished: use when you want a clearer rewrite rather than just tidier transcription.

The README also documents a separate Polished hold-to-talk shortcut, Shift+Alt+P by default, which overrides the global cleanup level for that recording. Check your installed hotkeys before relying on it.

OpenWhispr describes cleanup as conservative and provides an on/off switch. Handy can toggle post-processing. Custom prompts may offer other behavior, but neither is documented here with Bulbul's Raw/Clean/Polished selector.

What do mouse mode and the scratchpad add?

Mouse mode keeps the recording trigger under your hand. Click a supported middle, back, or forward button once to start recording, then click again to stop. The scratchpad gives you a separate place to write and apply transforms to selected text.

Read the Linux mouse dictation guide for supported buttons and setup.

Mouse mode is click-to-toggle, not mouse-button hold-to-talk or voice control of the pointer. Linux input permissions matter: if virtual-mouse or exclusive access fails, the click can also reach the foreground app. Test in a harmless field before using a button that normally pastes or navigates Back or Forward.

Use the scratchpad when you want to check a draft and rewrite a selection before using it elsewhere. OpenWhispr also has notes with AI actions, so a scratchpad is not evidence that other Linux apps lack note-taking. Bulbul's standalone window and selection transforms are the specific workflow compared here.

Do all these features work the same on X11 and Wayland?

No. Bulbul documents typing and hotkeys on both X11 and Wayland, but per-app styles are currently X11-only. Its README still lists Wayland app-detection for GNOME/wlroots as an open TODO.

Read the Linux voice typing guide for packages, input access, and local versus hosted speech.

Do not read 'Wayland supported' as a promise that app-aware tone selection works there. Choose your cleanup level and transforms explicitly rather than expecting Bulbul to detect every target app on Wayland.

Bulbul ships .deb, .rpm, and AppImage builds. Typing and hotkeys use evdev and a uinput virtual keyboard; .deb and .rpm installers configure access. An AppImage on Wayland can fall back to clipboard paste until you grant uinput access. Desktop environment, device permissions, and the installed version still matter.

OpenWhispr has x86-64 Linux builds with session-dependent input behavior. Handy documents limited Wayland support and may need typing tools and compositor shortcuts configured. These are setup differences, not reasons to pretend either app has no Linux version.

FluidVoice is macOS-only, so its Write Mode and per-app prompts are not Linux alternatives. Wispr Flow has no Linux version in this check. Their features on another operating system should not count as Linux features.

Can a cheap Linux laptop use these features without downloading AI models?

Yes, if it meets Bulbul's platform requirements and has a microphone, internet, and a Groq API key. Groq runs speech recognition, cleanup, and AI rewrites, so Bulbul does not require local speech-model downloads or a GPU for transcription.

The advantage is avoiding local model inference while keeping the writing controls. Your laptop still runs the interface, records audio, and uses the network. Connection quality, provider availability, and rate limits affect the experience; this is not a claim of identical latency on every cheap laptop or measured battery savings.

Bulbul talks directly to Groq with your key, without a Bulbul-owned transcription server between them. History, dictionary, snippets, and settings live in local SQLite. Their local storage does not mean text used for cleanup or transforms stays on-device.

Free app does not mean unlimited free cloud inference. Bulbul has no subscription or Bulbul-imposed word cap; Groq has a rate-limited free tier and may bill paid usage to your provider account. Speech, cleanup, and transforms can involve separate API requests.

OpenWhispr cloud mode can also avoid local speech inference. Handy and OpenWhispr local mode are better fits when offline speech matters. Keep cloud cleanup disabled if your rule is that audio and text must remain on-device. Bulbul's hosted pipeline needs internet.

Does Groq train on or retain my Linux dictation and transforms?

Groq's API terms forbid model training on your inputs and outputs without your explicit permission or instruction. Audio still leaves your device for transcription, and text goes to Groq for cleanup and AI transforms.

Groq policy checked October 9, 2026: https://console.groq.com/docs/legal/services-agreement ; https://console.groq.com/docs/your-data. Review current terms before sensitive use.

Section 4.2 of the Groq Services Agreement says: "Groq is not permitted to use Inputs or Outputs for training or fine-tuning any AI Model Services or other models, unless explicitly granted permission or instructed by Customer."

Groq says inference content is not retained by default. Reliability troubleshooting or abuse investigations can temporarily retain inputs and outputs for up to 30 days, or longer when legally required. Usage metadata is always collected and does not include customer inputs or outputs.

Groq's data documentation says all customers may enable Zero Data Retention (ZDR) in Data Controls to prevent content retention for reliability and abuse monitoring. The agreement refers to eligible customers. Check your account controls and current terms; Bulbul does not automatically turn ZDR on. This is not a promise that no data of any kind is stored.

Bulbul's README also discloses anonymous usage statistics enabled by default, with an off-toggle in Settings > Privacy. It says those statistics exclude audio and transcripts. Local history, no-training terms, and ZDR controls are useful distinctions, but they do not turn hosted inference into offline processing.

Which sources support this Linux feature comparison?

Official product documentation, repository source, the open Handy proposal, and Groq API policies were checked on October 9, 2026. This is a comparison of the named apps, not an exhaustive market ranking or a hardware benchmark.

Frequently asked questions

What is the most full-featured free Linux voice typing app?

For the combination compared here, Bulbul offers preset AI transforms, Raw/Clean/Polished cleanup, built-in mouse mode, and a standalone scratchpad with selection transforms. OpenWhispr also has agent editing and notes. This is a scoped feature comparison, not a ranking of every Linux app. Groq usage limits and paid charges still apply.

Are other Linux voice typing apps dictation-only?

No. OpenWhispr has a voice agent that edits selected text and notes with AI actions. Bulbul's distinction here is its combination of preset transform slots, three cleanup levels, built-in Linux mouse mode, and scratchpad.

Does Bulbul offer AI transforms on Linux?

Yes. Its README lists Polish, Make Formal, Translate, Bulletize, and custom prompts for selected text. Default transform bindings are Alt+1 through Alt+9; check your installed Settings.

Are Bulbul per-app styles available on Wayland?

Not currently. Per-app styles work on X11; Wayland app-detection is an open README TODO. Basic typing and hotkey support on Wayland does not imply per-app style support.

Are snippets and dictionaries unique to Bulbul on Linux?

No. OpenWhispr has snippets and a custom dictionary, and Handy has a dictionary. Handy's PR #455 is an open text-replacement proposal, not a shipped feature established by this comparison.

Do Bulbul's Linux features need a GPU or local model?

No local speech-model download or GPU is required for hosted transcription. Groq runs speech and AI processing. You still need supported hardware, internet, a microphone, input access, and a Groq key.

Does Groq train on text I transform with Bulbul?

Section 4.2 forbids training or fine-tuning on API inputs and outputs without explicit customer permission or instruction. Default inference-content non-retention has reliability and abuse exceptions; review ZDR in Data Controls. Text and audio still leave the device for the relevant processing.

Try Bulbul

Free, open source, and no subscription. Bring your own Groq key.

View on GitHub
PS>irm https://bulbultypes.xyz/install.ps1 | iex
Download for other operating systems

More resources