Skip to content

Configuration

Chris Schroedinger edited this page Jul 20, 2026 · 3 revisions

Configuration

Settings live in ~/.config/agentwhisper/config.toml — created with comments on first run. Restart AgentWhisper after editing (mode, the recording limit, auto-type, and notifications can also be changed live from the tray).

All settings

Section Key Default Meaning
[whisper] model base Speech model — see table below
[whisper] device cpu cpu or cuda (NVIDIA GPU with cuDNN)
[whisper] compute_type int8 int8 for CPU, float16 for GPU
[whisper] unload_after_seconds 300 Release the model's memory after this long without dictating. 303600, or 0 to keep it loaded forever
[hotkey] key f12 f1f12, scroll_lock, pause, insert, menu
[hotkey] mode hold hold = push-to-talk, toggle = press to start/stop
[output] auto_type true Type the text into the active window
[output] notifications true Desktop notification after each dictation
[limits] max_record_seconds 60 Hard cap on a single recording, 30600 (tray: Recording Limit)

Invalid values are rejected at startup with a message listing every problem — AgentWhisper never half-applies a broken config.

Choosing a model

All models are multilingual. Whisper detects what you speak, so there is no language to set: switch languages mid-sentence and it follows.

Model Download Speed on a typical CPU Accuracy
tiny ~75 MB fastest okay for short phrases
base ~140 MB fast, and the default good
small ~460 MB noticeably slower very good
medium ~1.5 GB slow without a GPU better
large-v3 ~3 GB needs a GPU to be pleasant best
large-v3-turbo ~1.6 GB much faster than large-v3 close to large-v3

Models download once into ~/.cache/huggingface/ and are shared with other Whisper tools on your system.

Memory

The model is the app's memory footprint: everything else is a few dozen MB. AgentWhisper loads it on demand and releases it again after unload_after_seconds of not dictating, which leaves it sitting at roughly 150 MB between dictations instead of holding the weights all day.

Reloading costs nothing you can feel. It starts the moment you press the hotkey, in parallel with the recording, so the model is back before you have finished speaking. If you would rather trade the memory for certainty, set unload_after_seconds = 0.

Example

[whisper]
model = "small"
unload_after_seconds = 0   # keep the model loaded; RAM for latency

[hotkey]
key = "scroll_lock"
mode = "toggle"

[output]
auto_type = false   # clipboard only; paste with Ctrl+V

Clone this wiki locally