Everything on this page is editable from the GUI, from the CLI with
savevault-cli config, or by editing the file
directly. The CLI validates values before saving, so it’s the safest way to script
changes.
Game-database update bookkeeping. A stored ETag is only reused when the configured source hasn’t changed.
State that isn’t configuration — the backup library index (state.db), scan cache,
scheduled-run history, device id — lives in the per-platform data directory alongside the
logs. On Windows the data directory is the same %APPDATA%\SaveVault\ folder as the
config directory (%APPDATA% is the Roaming folder); on Linux and macOS they differ.
Every key savevault-cli config list prints, grouped as it appears in config.toml.
Settable keys take config set. Dedicated keys are readable with config get
but written through the named command instead. Internal keys are machine-managed and
read-only.
This device’s display name, recorded in every backup it makes so devices sharing a folder can be told apart. Detected as Steam Deck / Steam Deck OLED / Steam Machine / Steam Frame on Valve hardware, otherwise the hostname. Machine-local; never exported. See multiple devices.
Settable. Machine-local. Also toggled from the GUI, and live enable-all turns it on; the CLI engine runs with live start regardless.
live.monitored_games
empty (all detected)
Dedicated: live enable <game> / live disable <game> / live enable-all / live disable-all.
live.rolling_snapshot_limit
10
Unpinned snapshots kept per game.
live.debounce_seconds
3
Quiet period after a save write before a snapshot is taken.
live.hotkey
Ctrl+Shift+S
Keyboard checkpoint shortcut.
live.controller_hotkey
L3+R3
Controller checkpoint chord. config unset live.controller_hotkey disables it and stays off across updates. Buttons: A B X Y LB RB LT RT Select Start L3 R3 DPadUp DPadDown DPadLeft DPadRight, joined with +.
live.per_game_overrides
empty
Dedicated: per-game snapshot limit and debounce, set in the GUI.
Install-scan threads. A thread count, or auto (or an empty string) restores the default; config get prints auto when unset.
scan.redirect_wine
false
Resolve Windows-layout saves inside Wine/Proton prefixes on restore by default (the CLI’s --redirect-wine). Restore-side only; scanning and backups ignore it.
backup.parallelism
unset (half of logical CPUs)
Per-game archive/compression threads. A thread count, or auto (or an empty string) restores the default.
restore.include_mode
saves
What restores copy back by default: saves, configs, or both. Any single restore can override with --include.
Settings → General → Settings Backup (or savevault-cli settings export / import)
copies portable preferences to a TOML file: schedule (including on/off), Live
Protection options, notifications, manual install roots, cloud-sync preferences,
built-in theme selection, and Show Themes in Sidebar — optionally plus custom games
and path redirects.
It does not export machine-local state: backup_dir, scheduled and snapshot output
folders, cloud sign-in, rclone paths, or the device name. The live on/off (live.enabled)
and cloud on/off (cloud_backup.enabled) values are written to the bundle but never
applied on import, so importing never turns Live Protection or cloud backup on or off.
User theme files in
themes/ aren’t bundled either; export them individually from the Themes page. Importing
with schedule.enabled = true re-registers the OS scheduler on the new machine, and a
bundle that includes custom games opens the same Add / Replace / Skip flow as a standalone
custom-games import.