Files and data locations¶
Sevak stores configuration, themes, script plugins, workflows, logs, usage history and clipboard history in well-known locations on each platform. You can override these with environment variables or command-line flags.
Default locations¶
| Item | Windows | macOS | Linux |
|---|---|---|---|
| Config folder | %APPDATA%\sevak\ |
~/Library/Application Support/sevak/ |
~/.config/sevak/ |
| Config file | %APPDATA%\sevak\config.toml |
~/Library/Application Support/sevak/config.toml |
~/.config/sevak/config.toml |
| Data folder | %APPDATA%\sevak\ |
~/Library/Application Support/sevak/ |
~/.local/share/sevak/ |
| Logs | %APPDATA%\sevak\logs\ |
~/Library/Application Support/sevak/logs/ |
~/.local/share/sevak/logs/ |
| Usage history | %APPDATA%\sevak\usage.json |
~/Library/Application Support/sevak/usage.json |
~/.local/share/sevak/usage.json |
| Local data folder | %LOCALAPPDATA%\sevak\ |
same as the data folder | same as the data folder |
| Clipboard history | %LOCALAPPDATA%\sevak\clipboard-history.json |
~/Library/Application Support/sevak/clipboard-history.json |
~/.local/share/sevak/clipboard-history.json |
| Clipboard images | %LOCALAPPDATA%\sevak\clipboard\ |
~/Library/Application Support/sevak/clipboard/ |
~/.local/share/sevak/clipboard/ |
| Theme files | %APPDATA%\sevak\themes\ |
~/Library/Application Support/sevak/themes/ |
~/.config/sevak/themes/ |
| Script plugins | %APPDATA%\sevak\plugins\ |
~/Library/Application Support/sevak/plugins/ |
~/.config/sevak/plugins/ |
| Workflows | %APPDATA%\sevak\workflows\ |
~/Library/Application Support/sevak/workflows/ |
~/.config/sevak/workflows/ |
| Shortcut takeover record | %APPDATA%\sevak\hotkey-takeover.json |
~/Library/Application Support/sevak/hotkey-takeover.json |
~/.local/share/sevak/hotkey-takeover.json |
| Backup options | %APPDATA%\sevakackup.toml |
~/Library/Application Support/sevak/backup.toml |
~/.config/sevak/backup.toml |
| Backup bookkeeping and safety copies | %APPDATA%\sevakackup-state.json, backup-snapshots\ |
~/Library/Application Support/sevak/backup-state.json, backup-snapshots/ |
~/.local/share/sevak/backup-state.json, backup-snapshots/ |
Theme files, script plugins and workflows sit next to config.toml in the config folder; clipboard images, approvals and the data folders of plugins and workflows are in the data folder. On Windows and macOS the two folders are the same.
The local data folder holds what must not leave this computer: on Windows %LOCALAPPDATA%\sevak\, because %APPDATA% is the roaming profile that domain setups, folder redirection and backup tools copy to other machines. Only the clipboard history lives there; versions before the change kept it in %APPDATA%\sevak\, and the first start moves it (and deletes the old copy). On macOS and Linux, and when SEVAK_DATA_DIR is set, the local data folder is the data folder.
Expand ~ to your home directory, %APPDATA% to your roaming app data folder and %LOCALAPPDATA% to your local one.
Who can read these files¶
- Linux and macOS. The data folder (
~/.local/share/sevak/on Linux, thesevakfolder in Application Support on macOS) and itslogsfolder are created readable by your user only (mode0700), and a folder an earlier version created wider is tightened when Sevak starts. The files Sevak writes there (usage history, script and workflow approvals, the shortcut takeover record, clipboard history) are0600. The config folder follows your own umask, soconfig.toml, themes, plugins and workflows can be shared or kept in a dotfiles repository. - Windows. Nothing is changed: the folders under
%APPDATA%\sevakinherit the access control of your profile (readable by you, administrators and the system). Anything that runs as you can read them. See the threat model.
Override locations¶
Config folder¶
The --config flag takes precedence over the environment variable.
Data folder (logs, usage, clipboard history, approvals)¶
Note: the data folder cannot be overridden via command line; only the SEVAK_DATA_DIR environment variable works.
What each file contains¶
config.toml¶
Your configuration: shortcuts, appearance, enabled plugins, file search roots, etc. See Configuration file reference.
Edited by: You (manually or through the Settings window).
When to back up: Before making large manual edits or testing unusual configurations.
logs/¶
Day-to-day logs from Sevak (one file per day, dated). Useful for troubleshooting. For more detail, set SEVAK_LOG=debug before starting Sevak.
Automatic cleanup: Logs older than 7 days are deleted automatically.
To share logs without sharing private details, use the diagnostics report: it holds the last 100 lines with your user name, home folder and anything that looks like a secret removed. Settings → Help → Open logs folder shows the raw files.
Size: Typically a few kilobytes per day under normal use.
usage.json¶
Records searches and actions you perform: what you typed, which results you ran, timestamps. Used for:
- Query history: press Up/Down on an empty search bar to recall your last ~50 searches.
- Usage statistics and analytics (local only; nothing is sent to Sevak developers).
Edited by: Sevak (you can manually edit it, but Sevak will overwrite it).
Privacy: Text you searched is recorded. Select what to delete (see "Clear history" below).
clipboard-history.json and clipboard/¶
Optional clipboard history (only if [clipboard] enabled = true). clipboard-history.json records the text you copy and the paths of files you copy, with timestamps. The clipboard/ folder next to it holds each copied image as a PNG file plus a small thumbnail (only if [clipboard] images = true, the default once the history is on). On Windows both are encrypted for your account (DPAPI; [clipboard] encrypt), so a copy of the files on another computer or account is unreadable; on macOS and Linux they are plain files readable by your user only (mode 0600).
Edited by: Sevak (when you copy, and when you type cb clear and run Clear clipboard history, which deletes the entries and the image files).
Privacy: Disabled by default because it records what you copy. Apps that mark their content as secret (password managers, etc.) are never recorded. Configure [clipboard] ignore_apps to never record copies from specific apps, and [clipboard] images = false / files = false to record text only.
ai-keys.json¶
API keys for the optional AI assistant, only if you saved one in Settings → AI assistant. On Windows each key is encrypted with DPAPI for your user account; on macOS and Linux the file is readable by your user account only (mode 0600) and not encrypted. It is never part of config.toml, a settings export or the diagnostics report. Delete a key with Remove in Settings, or delete the file.
backup.toml, backup-state.json and backup-snapshots/¶
backup.toml holds the options of automatic backups (off by default) and sits in the config folder. backup-state.json in the data folder records when the last backup was made and the Sevak version that last looked at the schedule. backup-snapshots/ holds the safety copies Sevak takes just before a restore so that Undo restore works (the five newest are kept). A snapshot is an ordinary backup file of what the restore replaced, with the same exclusions. None of these three is part of a backup.
currency-rates.json¶
Cached European Central Bank exchange rates, only if currency conversion ([calculator] currency) is on.
script-plugin-approvals.json¶
The script plugins and workflows you allowed to run, each with a hash of what you allowed (a script plugin's manifest, script files and folder; a workflow's code-running nodes and script files). Delete it to be asked again for each of them. Files written by older versions are read but never match, so each script plugin asks once after an upgrade.
plugins/ and workflows/ (data folder)¶
plugins/<name>/ and workflows/<name>/ in the data folder are where script plugins and workflow scripts may keep their own files (SEVAK_PLUGIN_DATA, SEVAK_WORKFLOW_DATA). Sevak creates the folder when the script first runs; what goes in it is up to the script.
themes/, plugins/ and workflows/ (config folder)¶
Your theme files, script plugins and workflows (each a folder with a workflow.toml and its scripts). They travel with the config folder, so a synced config folder brings them along.
What is never written to disk¶
Contacts and the list of 1Password logins are kept in memory only. The keystrokes watched for snippet expansion (the last 64 characters) are kept in memory only, never logged. The Universal Actions selection is never stored.
Back up your data¶
The easy way is Settings → Backup & restore (or sevak --backup FILE): one file with your settings, snippets, web searches, themes, script plugins and workflows, left out of which are keys, history and the list of scripts you allowed. See Backup and restore. To copy everything, history included, copy the folders yourself:
or on Windows:
Restore from a backup by copying the folder back.
Reset to defaults¶
To reset Sevak to a fresh install while keeping your data:
- Delete
config.toml(or move it aside first). Sevak will write a new default config on next start. - Start Sevak.
To also clear history:
- Delete
config.toml. - Delete
usage.json(or just the queries and actions you want to forget). - If clipboard history is enabled, delete
clipboard-history.jsonand theclipboardfolder. - Start Sevak.
Clear search history¶
Search history is stored in usage.json. To clear it entirely:
On Windows:
Sevak will create a fresh file on next start.
To selectively delete searches, edit usage.json in a text editor (it is JSON format) and remove entries from the searches array.
Clear clipboard history¶
To delete all saved clipboard items, type cb clear in Sevak and press Enter on Clear clipboard history. It deletes the entries and the image files.
Or, with Sevak closed, delete the file and the image folder yourself:
On Windows:
Remove-Item "$env:LOCALAPPDATA\sevak\clipboard-history.json", "$env:LOCALAPPDATA\sevak\clipboard" -Recurse
Sevak will create a fresh file on next use.
Uninstall cleanly¶
Windows¶
- Open Settings → Apps → Installed apps, find Sevak, and click Uninstall.
- The uninstaller removes Sevak itself but keeps config and data. Its "Also delete the web cache" option only clears the web view's cache.
- To also remove config and data:
macOS¶
- Delete the Sevak app from Applications.
- This does not remove config and data.
- To also remove config and data:
Linux¶
Uninstall using your package manager:
To also remove config and data:
Portable setup¶
You can place Sevak's config and data anywhere and point to it with environment variables:
export SEVAK_CONFIG_DIR=/mnt/portable/sevak/config
export SEVAK_DATA_DIR=/mnt/portable/sevak/data
sevak
or
This is useful for running Sevak from a USB drive or shared network folder. The --config flag overrides the default but not the environment variable if both are set; the flag takes precedence.
Troubleshooting file access¶
"Cannot access config file" error:
- Check file permissions. Your user must be able to read and write the config folder.
- Check disk space. If the drive is full, writing a new config may fail.
- Check paths with special characters (non-ASCII, spaces). Ensure the path is valid on your system.
Logs are not being written:
- Check that
~/.local/share/sevak/logs/(or equivalent) exists and is writable. - Set
SEVAK_LOG=debugto enable debug logging, but this is stored in memory unless persisted to a file. - Restart Sevak after changing the data folder.
Old clipboard history or usage data still showing:
- Sevak loads these files at startup. Changes made externally are not live-reloaded.
- Restart Sevak after editing or deleting
usage.jsonorclipboard-history.json.