- Settings: "Keep history" (a day … forever, default a month); older recordings and their audio are pruned at startup, after each recording and when the setting changes. - History rows keep play, copy and delete only. - Advanced: the microphone is picked from PipeWire's sources instead of a free-text field, with a note about Bluetooth headsets switching profile. - A stock machine without voxtype gets a banner with an Install button that runs omarchy-voxtype-install in a floating terminal; the daemon refuses to record until the tools are there and says why.
3.8 KiB
Speech to Text
Dictation for Omarchy: press a key, talk, press it again, and the words are pasted where your cursor is. A live waveform and the words as they are recognised show in the bar while you talk; every recording is kept with its text so you can play it back, copy or paste it again.
Tested only on Omarchy 4 (Arch Linux, Hyprland, omarchy-shell).
What you get
- One key per language (default:
SUPER ALT Dfor English; set your own in Settings). Press to start, press again to stop and paste. Esc discards. - + Return per language: also press Return after pasting (for chat boxes and prompts).
- Ask your agent: a second key per language hands the text to Omarchy's default coding agent (
omarchy default agent) instead of pasting it. - Live waveform and live text in the bar: yellow while the microphone connects, green while it listens; the bar goes back to the icon the moment the text is pasted.
- Stop is instant: the recording is transcribed at every pause while you talk, so only the last phrase is left when you stop.
- History of every recording (text + audio) with play, copy and delete, searchable, in the bar popup; kept for a month by default (Settings).
- Languages picked from Whisper's list; the model a language needs is downloaded by itself the first time (about 150 MB for the default model; the bar shows the progress). English-only models are swapped for the multilingual one.
- Engine: Omarchy's own dictation engine, voxtype (local Whisper), by default, so there is nothing new to install. whisper.cpp (
whisper-cli) and any custom command are also supported (Settings → Advanced). - Safe key bindings: a key that anything else already uses is refused, never taken over.
- Local only. Nothing leaves your machine.
Install
omarchy plugin add https://github.com/alanfortlink/speech-to-text.git --enable
That is all. The microphone icon appears in the bar, the daemon starts with the shell and applies the key bindings itself (nothing in ~/.config/hypr is touched).
If Omarchy's dictation engine (voxtype) is not installed yet, the popup says so and offers an Install button, which runs omarchy-voxtype-install in a floating terminal (about 150 MB, asks for your password). Everything else the plugin needs is part of a stock Omarchy: PipeWire, wl-clipboard, curl, Python 3; wtype comes with voxtype.
Optional: ~/.config/omarchy/plugins/alanfortlink.speech-to-text/install.sh puts the stt command on your PATH. From a checkout anywhere else, ./install.sh also links the checkout into the plugins directory (handy for development).
Use
- Press the language's key, talk, press it again.
Escdiscards while recording. The first press for a new language downloads its model; the bar shows "Getting ready…" until it is there. - Click the microphone icon for History and Settings. Right-click it to start recording; while recording, click the waveform to stop, right-click to discard.
- Settings: one row per language: the Dictate key (click it, press the key; Backspace clears), the + Return switch, and the Ask-agent key. The first row is the default language; use the arrows to reorder. Add languages from the picker.
sttfrom a terminal:stt toggle --lang en [--enter],stt status --follow,stt history,stt paste ID,stt set liveText false.
Files
| What | Where |
|---|---|
| Config | ~/.config/speech-to-text/config.json |
| History database and audio | ~/.local/share/speech-to-text/ |
| Models | ~/.local/share/voxtype/models/ (shared with voxtype) |
| Daemon socket and log | $XDG_RUNTIME_DIR/speech-to-text/ |
Uninstall
~/.config/omarchy/plugins/alanfortlink.speech-to-text/install.sh --uninstall
omarchy plugin remove alanfortlink.speech-to-text