-
Notifications
You must be signed in to change notification settings - Fork 0
Security
- Your accounts and settings stay on your computer.
- accshift never asks for or stores your passwords.
- Sensitive bits (Steam Web API key, Roblox login cookie) are encrypted using your operating system's built-in vault (Windows DPAPI, macOS Keychain, or Linux Secret Service / KWallet). Only your user account on this PC can decrypt them.
- The only outbound traffic is what you ask for: signing into a game launcher, optional update checks, and optional telemetry (see Telemetry). All of that can be disabled.
The rest of this page is reference detail: paths, exact backends, and what the threat model is.
| Data | Path |
|---|---|
| Config | %APPDATA%\com.accshift.desktop\state\ |
| Logs | %APPDATA%\com.accshift.desktop\logs\ |
| User settings and themes | %APPDATA%\com.accshift.desktop\user\ |
| Platform snapshots | %LOCALAPPDATA%\com.accshift.desktop\platforms\ |
| Roblox accounts | %LOCALAPPDATA%\com.accshift.desktop\platforms\roblox\accounts.json |
| Migration backups | %LOCALAPPDATA%\com.accshift.desktop\backups\pre-migration\ |
| Data | Path |
|---|---|
| Config | ~/.config/com.accshift.desktop/state/ |
| Logs | ~/.config/com.accshift.desktop/logs/ |
| User settings and themes | ~/.config/com.accshift.desktop/user/ |
| Platform snapshots | ~/.local/share/com.accshift.desktop/platforms/ |
| Migration backups | ~/.local/share/com.accshift.desktop/backups/pre-migration/ |
Honours $XDG_CONFIG_HOME and $XDG_DATA_HOME when set.
| Data | Path |
|---|---|
| Everything |
~/Library/Application Support/com.accshift.desktop/ (with the same subfolders: state/, logs/, user/, platforms/, backups/pre-migration/) |
| OS | Backend | What it protects |
|---|---|---|
| Windows | DPAPI (user-scoped) | Steam Web API key, Roblox .ROBLOSECURITY cookies |
| Linux | Secret Service via the keyring crate (GNOME Keyring, KWallet, or any compatible daemon) |
Same secrets, where applicable |
| macOS | Keychain via the keyring crate |
Same secrets, where applicable |
Threat model: secrets are bound to your user session. Copying the config file to another machine does not yield decryptable secrets, because the OS key store will not surface them to a different user.
Service id used by the keyring backends: com.accshift.desktop. Entries appear grouped in keyring UIs.
Riot and Ubisoft session files are stored as captured (not separately encrypted). They contain tokens that are only valid on the originating machine; moving them does not transfer the session.
GOG Galaxy, Jagex Launcher and Discord session snapshots are encrypted at rest with a key held in the OS vault above. accshift never parses or decrypts their contents beyond restoring them in place.
Optional 4-digit PIN. When enabled with an inactivity blur delay, the window blurs after the configured timeout. Failed attempts add a short delay before the next try.
Configure in Settings > Privacy: enable the PIN, set the 4 digits, set the inactivity timeout in seconds (0 disables auto-blur but keeps the PIN gate).
When the on-disk layout changes between versions, accshift migrates data on startup. The previous file is copied into …/backups/pre-migration/<timestamp>/ before being moved. You can roll back by restoring from there.
Mutating platform operations (switch, forget, capture) take an exclusive file lock. The GUI and CLI share the same lock, so they cannot collide. The lock has a 2-second timeout; if it is contended, the second caller fails fast rather than queueing.
By default, nothing. Operations that talk to remote services:
- Steam Web API (when you set an API key for ban or profile lookups).
- Roblox login (
.ROBLOSECURITYexchanged for an auth ticket). - Riot, Battle.net, Epic, Ubisoft Connect, GOG Galaxy, Jagex Launcher, Discord: only the operations you start (launching the official client, etc.).
- Roblox session health check (a lightweight authenticated ping to
users.roblox.comto flag expired sessions). - Tauri auto-updater, if you keep it enabled (see Updates).
- Telemetry, if you opt in (see Telemetry).
Account credentials are never sent anywhere by accshift. Captured session files stay on disk.