Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

tagent-gui.json

tagent-gui keeps its settings in a JSON file, tagent-gui.json:

  • Linux: ~/.config/tagent-gui/tagent-gui.json
  • macOS: ~/Library/Application Support/tagent-gui/tagent-gui.json
  • Windows: %APPDATA%\tagent-gui\tagent-gui.json

Settings writes it, but it is meant to be edited by hand too. tagent-cli has its own settings and doesn’t read this file.

  • A missing file is created with the defaults on first start; a missing key takes its default.
  • The file is read again before each translation, so a hand edit applies without a restart, except where noted below.
  • A file that isn’t valid JSON is left alone: the app writes a warning to its log and keeps its previous settings until the file is fixed.
  • On Linux and macOS it is written readable by you only (0600), since it can hold API keys.

Colors are "#RRGGBB", or "" for the theme’s color.

Providers and languages

KeyDefaultMeaningSettings
translate_provider"google"The translation provider (a profile name)Providers
dictionary_provider"google"The dictionary providerProviders
speech_provider"google"The speech providerProviders
provider_options{}Provider profiles: {"<name>": {"<option>": "<value>"}}; see How providers workProviders
hidden_providers[]Profiles unticked under “Show in lists”Providers
source_language"auto"The main window’s source language at start ("auto" or a code)General
target_languagethe system language, else "en"The main window’s target language at start (a code)General

Behavior

KeyDefaultMeaningSettings
show_dictionarytrueA dictionary entry for a single wordGeneral
spell_checktrueLook misspelled words up under their correct spellingGeneral
enable_text_to_speechtrueSpeaking: the 🔊 in the transcript’s prompts and the speech hotkeyGeneral
show_context_menufalseRight-click opens a Copy menu instead of copyingGeneral
translate_hotkey"Alt+A"The translate hotkey; restart requiredHotkeys & Tray
speech_hotkey"Alt+S"The speech hotkey; restart requiredHotkeys & Tray
enable_speech_hotkeytrueWhether the speech hotkey is active; restart requiredHotkeys & Tray
start_minimizedtrueStart in the tray, without the window; read at startHotkeys & Tray
remember_window_geometrytrueReopen the window where it wasHotkeys & Tray
window_geometrynullThe remembered window, {"x", "y", "width", "height"}; written by the app—

Look

KeyDefaultMeaningSettings
theme"auto""auto" (follow the system), "light" or "dark"View
background_color""The transcript’s and the input box’s backgroundView
show_prompttrueThe [Language]: prompt before each lineView
prompt_color""The prompt’s colorView
phrase_font, translation_font"monospace"Font family of the phrase and the translation linesView
phrase_size, translation_size13Font size in pixelsView
phrase_color, translation_color""Text colorView
phrase_background, translation_background""Background color of the linesView
input_size13Font size in pixels of the transcript’s header, the input box’s label and its textView
block_spacing_px20Gap between entries, in pixelsView
phrases_spacing_px2Gap between a phrase and its translation, in pixelsView

The color scheme on the View tab isn’t stored by name: picking one sets these colors.

KeyDefaultMeaningSettings
show_popuptrueShow the popup on the translate hotkeyPopup
popup_show_prompttrueThe prompt in the popupPopup
popup_prompt_color""Its color; "" follows prompt_colorPopup
popup_show_phrasetrueThe phrase line in the popupPopup
popup_font"monospace"Font familyPopup
popup_size13Font size in pixelsPopup
popup_color""Text color; "" follows translation_colorPopup
popup_background""Background colorPopup
popup_auto_hide_seconds3Seconds before it hides; 0 means the defaultPopup
popup_max_width600Maximum width in pixelsPopup
popup_max_height600Maximum height in pixels; taller text scrollsPopup
popup_border_width1Border width in pixelsPopup
remember_popup_positionfalseShow later popups where you dragged this onePopup
popup_positionnullThe remembered position, {"x", "y"}; written by the app—

Example

{
  "translate_provider": "ollama",
  "dictionary_provider": "ollama",
  "target_language": "de",
  "theme": "dark",
  "translate_hotkey": "Ctrl+Ctrl",
  "provider_options": {
    "ollama": {
      "type": "openai",
      "endpoint": "http://localhost:11434/v1",
      "model": "qwen3:8b"
    }
  }
}