Reference
Configuration
Every setting VoiceFlow stores, what it controls, and its default value.
Defaults
shared/app-defaults.ts
Store
electron-store
Secrets
In-app, not .env
Settings & defaults
| Setting | Purpose | Default |
|---|---|---|
| hotkey | Toggle shortcut — tap to start, tap to stop. | ` (backtick) |
| holdToTranscribeHotkey | Hold-to-talk shortcut — records while held. | Shift+Space |
| language | Whisper language hint; empty means auto-detect. | en |
| enablePolish | Rewrite dictation transcripts into clean text. | true |
| polishProvider | AI provider used for polish and Ask. | groq |
| audioInputDeviceId | Microphone device id; empty means system default. | "" (default) |
| groqApiKey | Your Groq key for transcription and AI calls. | "" (unset) |
| defaultMode | Which mode a new recording uses. | dictation |
| askPasteBehavior | Whether Ask replaces the selection or inserts after it. | replace-selection |
The API key
Read from settings, not .env
VoiceFlow reads the Groq API key from the in-app settings store, not from an environment file. Add it on the Settings screen. It is used for both the Whisper transcription request and the polish / Ask chat completions.
Models & endpoints
| Purpose | Model | Endpoint |
|---|---|---|
| Transcription | whisper-large-v3 | POST /openai/v1/audio/transcriptions |
| Polish | openai/gpt-oss-120b | POST /openai/v1/chat/completions |
| Ask transform | openai/gpt-oss-120b | POST /openai/v1/chat/completions |