idrive-backup

v2026.09.24

Use this skill whenever the user wants you to manage, discuss or diagnose iDrive Backup configuration on macOS

GitHub
Install command
npx skhub add sammcj/idrive-backup
Markdown
SKILL.md

iDrive Backup for macOS

iDrive stores all configuration at ~/Library/Application Support/IDriveforMac/. The username is the iDrive account email (e.g. user@example.com), detected from the top-level key in appDefaultSettings.plist.

The Tool

This skill bundles scripts/idrive_tool.py which handles all iDrive operations with correct matching semantics, symlink resolution, and safety backups. Run it with:

python3 <skill-path>/scripts/idrive_tool.py <command> [args...]

Commands

CommandDescription
check-exclusion <path>Check if a path is excluded and by which rules. Reports backup scope too
check-scope <path>Check if a path falls under any backup reference path
list-exclusions [--category <name>]List exclusion entries. Categories: Default, Partial File, User Profile, User Specified, Propagated
add-exclusion <path>Add absolute path to User Specified exclusions (auto-backups config first)
remove-exclusion <path>Remove path from User Specified exclusions
show-settingsDisplay all scalar settings with current values
set-setting <key> <value>Modify a setting (auto-detects type from existing value)
account-statusShow quota, usage, encryption type, plan, app version
last-backupParse recent LOGXML files and show backup status/results
find-redundantFind exclusion paths made redundant by a parent path in any map
clean-redundantRemove redundant entries from User Specified exclusions
list-backup-pathsList all online backup reference paths
add-backup-path <path>Add a directory to backup reference
remove-backup-path <path>Remove a directory from backup reference
backup-configCreate timestamped backup copies of config files

Safety Rules

  1. Back up before modifying. The tool does this automatically. Manual changes must copy both appDefaultSettings.plist and <username>/backupReferenceFile.plist to ~/.idrive-backup/backups/ with timestamps first.
  2. Only modify User Specified exclusions. The other four maps (Default, Partial File, User Profile, Propagated) are system-managed and will be overwritten by iDrive.
  3. Preserve plist key quirks exactly. Two keys have trailing spaces: ShowHiddenFilesKey and PowerAfterScheduledJob . One has a typo: NotifyFaiulreValue. The editable exclusion map key is User specified Exclusion (lowercase 's'). Getting any of these wrong creates orphaned keys.
  4. Never modify IDLoginDetails.plist, Sync.plist, LDB_NEW/*.ib databases, or anything under Operation/ (root-owned daemon files).
  5. Exclusion values are always int(1). Presence in the map means excluded. Never write a 0 value; delete the key instead.
  6. All User Specified paths must be absolute. No tildes, no trailing slashes, no relative paths.

Five Exclusion Maps

MapPlist KeyCountMatchingEditable
DefaultDefault Exclusion~24Exact/parent pathNo
Partial FilePartial File Exclusion~41Substring of full path OR exact filenameNo
User ProfileUser Profile Default Exclusion~7Exact/parent pathNo
User SpecifiedUser specified Exclusion100-2000+Exact/parent pathYes
PropagatedPropagated Files ExclusionUsually 0Exact/parent pathNo (web console)

Partial File Exclusion is substring-based. This is the trickiest map. A pattern like .cache matches both /Users/foo/.cache and /path/to/download_cache. Patterns are relative names (never absolute paths), including dotfile dirs (.git, .venv), filename patterns (fp16.bin, safetensors), and one with a separator (pkg/mod).

Key Gotchas

  1. Mixed boolean types. Some settings use <true/>/<false/>, others use <integer>0</integer>/<integer>1</integer> for the same concept. The tool handles this; if modifying manually, match the existing type.
  2. Symlinks/firmlinks. ~/Desktop may resolve to ~/Library/Mobile Documents/com~apple~CloudDocs/Desktop when iCloud Desktop is enabled. Always resolve with os.path.realpath() before comparing paths.
  3. CDP log filenames have a leading space. iDrive bug: Continuous Data Protection logs in SessionLogsNew/Backup/ are named MM-DD-YYYY-00-00-00 (note leading space). Account for this when globbing or reading.
  4. Some files are root-owned. Operation/Backup/IBThrottle, LDB_NEW/*.ib, and some plists are written by the iDrive daemon as root. Reading is fine; writing requires elevated privileges you shouldn't use.
  5. The appDefaultSettings.plist can be large. User Specified Exclusion alone can have 1,800+ entries (mostly auto-populated ~/Library/Containers/com.apple.* paths). The plist file can exceed 170 KB.

Detailed Reference

For detailed file format information, all 22+ scalar settings with types and descriptions, secondary file formats (logs, size files, sync config), or the complete directory layout, read references/idrive-config.md.

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Apache-2.0

Source path

Skills_disabled/idrive-backup

Default branch

main

Latest commit

6ee2ba1

Tree SHA

85ce70a