Terax Docs

Data locations

Where Terax stores settings, sessions, themes, snippets, and keys on each platform.


Terax stores its state in one app data directory plus the OS keychain. The settings UI is the source of truth - hand-editing these files is supported but not the workflow.

App data directory

PlatformPath
macOS~/Library/Application Support/app.crynta.terax/
Linux~/.local/share/app.crynta.terax/
Windows%APPDATA%\app.crynta.terax\

The bundle id is app.crynta.terax. Resolved by the Rust dirs crate, never by raw $HOME / %APPDATA% reads.

Files

FileContents
terax-settings.jsonApp preferences - themes, fonts, shortcuts, autocomplete, agent toggles, WSL distro, etc.
terax-ai-sessions.jsonChat session list, active id, and per-session message histories
terax-ai-agents.jsonCustom agents - system prompts and tool subsets
terax-ai-snippets.jsonComposer #handle snippets
terax-ai-todos.jsonIn-app TODO lists the agent can read and write
terax-custom-themes.jsonUser-built themes
themes/Background images and any per-theme assets

All seven are managed through tauri-plugin-store. Atomic writes, schema migrations on launch.

You can back up or sync this directory across machines if you want. Just close Terax first.

Keychain

API keys never live in the files above. They go to the OS keychain:

  • macOS - Keychain, service terax-ai
  • Windows - Credential Manager, target terax-ai
  • Linux - Secret Service (libsecret) where available; file-based fallback gated behind #[cfg(target_os = "linux")] for headless environments

Wipe all keys at once by deleting the terax-ai service entries in your OS keychain. The settings file is unaffected.

Cache

Terax does not maintain a separate disk cache today. Webview cache is managed by Tauri's WebView2 (Windows) / WKWebView (macOS) / webkit2gtk (Linux) and lives in the platform-default location for those engines.

Editing files directly

You can edit any file in the app data directory while Terax is closed. On next launch the store will validate, migrate if needed, and surface errors in the About tab.

The settings UI is still the right way to change preferences - it knows the schema, validates inputs, and triggers the right re-renders (theme swaps, font changes, shortcut rebinds). Editing JSON by hand is for backups and bulk migrations, not daily use.