API Key Management
OpenAI
window.electronAPI.getOpenAIKey()
Retrieve the stored OpenAI API key.The OpenAI API key, or
null if not setwindow.electronAPI.saveOpenAIKey()
Save an OpenAI API key to persistent storage.The OpenAI API key to save
Whether the key was saved successfully
Anthropic
window.electronAPI.getAnthropicKey()
Retrieve the stored Anthropic API key.The Anthropic API key, or
null if not setwindow.electronAPI.saveAnthropicKey()
Save an Anthropic API key.The Anthropic API key
Whether the key was saved successfully
Gemini
window.electronAPI.getGeminiKey()
Retrieve the stored Google Gemini API key.window.electronAPI.saveGeminiKey()
Save a Gemini API key.Groq
window.electronAPI.getGroqKey()
Retrieve the stored Groq API key.window.electronAPI.saveGroqKey()
Save a Groq API key.Mistral
window.electronAPI.getMistralKey()
Retrieve the stored Mistral API key.window.electronAPI.saveMistralKey()
Save a Mistral API key.Hotkey Management
window.electronAPI.updateHotkey()
Update the global hotkey used to activate dictation.Hotkey string in Electron accelerator format (e.g.,
"Alt+R", "CommandOrControl+Shift+Space")Whether the hotkey was registered successfully
Error message if registration failed
Example
GNOME Wayland: On GNOME + Wayland, hotkeys are registered using native GNOME shortcuts (gsettings). The backtick key is not supported; use
Alt+R instead.window.electronAPI.setHotkeyListeningMode()
Enable or disable hotkey capture mode (for recording custom hotkeys in the UI).Whether to enable hotkey capture mode
The new hotkey (when exiting capture mode)
Whether the mode was changed successfully
Example
window.electronAPI.getHotkeyModeInfo()
Get information about the hotkey system in use.Whether GNOME native shortcuts are being used (GNOME + Wayland)
Activation Mode
window.electronAPI.getActivationMode()
Get the current dictation activation mode.Activation mode:
"tap" (toggle on/off) or "push" (hold-to-record)window.electronAPI.saveActivationMode()
Save the dictation activation mode.Activation mode:
"tap" or "push"Whether the mode was saved successfully
Push-to-Talk on Windows: Requires the
windows-key-listener.exe native binary. Falls back to tap mode if unavailable.GNOME Wayland: Push-to-talk is not supported (only tap mode available).Dictation Key
window.electronAPI.getDictationKey()
Get the current dictation activation key (file-based persistence for startup).The dictation hotkey string
window.electronAPI.saveDictationKey()
Save the dictation activation key to persistent storage.The hotkey string to save
Whether the key was saved successfully
System Settings
window.electronAPI.openMicrophoneSettings()
Open the system microphone privacy settings.Whether the settings were opened successfully
Platform-Specific Behavior
- macOS: Opens System Preferences → Privacy → Microphone
- Windows: Opens Settings → Privacy → Microphone
- Linux: No standard URL scheme (user must open manually)
window.electronAPI.openAccessibilitySettings()
Open the system accessibility settings (macOS only, required for clipboard auto-paste).window.electronAPI.requestMicrophoneAccess()
Request microphone permission from the system.Whether permission was granted
UI Language
window.electronAPI.getUiLanguage()
Get the current UI language.Language code (e.g.,
"en", "es", "fr")window.electronAPI.saveUiLanguage()
Save the UI language preference.Language code (e.g.,
"en", "es", "fr")The saved language code
window.electronAPI.setUiLanguage()
Set the UI language and reload the UI.Language code
Whether the language was changed successfully
The new language code
Example
Auto-Start
window.electronAPI.getAutoStartEnabled()
Check if the app is set to start automatically on login.Whether auto-start is enabled
window.electronAPI.setAutoStartEnabled()
Enable or disable auto-start on login.Whether to enable auto-start
Whether the setting was changed successfully
Error message if failed
The app starts minimized to tray when auto-start is enabled.
Startup Preferences Sync
window.electronAPI.syncStartupPreferences()
Sync startup preferences (used for pre-warming models on app launch).Example
This method updates environment variables and persists them to
.env for the next app launch.Environment Persistence
window.electronAPI.saveAllKeysToEnv()
Save all API keys and settings to the.env file.
Whether the keys were saved successfully