Safe Vault
approvedby Eghosa Osayande
Backup your vault as an archive, with optional encryption and Git version control. - This plugin has not been manually reviewed by Obsidian staff.
Safe Vault
Safe Vault is an Obsidian backup plugin for creating archive-based backups of your vault.
Backups can optionally be encrypted and version-controlled, making it possible to keep local backup snapshots as well as store them in a Git repository.
Safe Vault currently uses:
tarfor creating and extracting archivesagefor optional encryptiongitfor version control and remote synchronization
These tools must be installed on your system and available on your PATH before their corresponding Safe Vault features can be used.
Features
Safe Vault supports:
- Creating backups of your Obsidian vault
- Excluding selected files and directories from backups
- Encrypting backups using
age - Managing backups with Git
- Pushing backups to a remote Git repository
- Pulling backup updates from a remote repository
- Restoring a vault from an existing backup
Commands
Safe Vault provides the following commands:
Backup
Creates a new archive of the current vault using the configured backup settings.
Push
Pushes the backup repository to its configured Git remote.
Pull
Pulls the latest changes from the configured Git remote.
Backup and Push
Creates a new backup and then pushes the updated backup repository to its configured remote.
Restore from Backup
Restores the vault from an existing Safe Vault backup.
Configuration
Directories
Backup Directory
Specifies where Safe Vault should store backup archives.
If the backup directory is located in the current vault directory it must be excluded. Otherwise, it must be located outside the current vault directory.
For example:
Documents/
├── .backups/
└── MyVault/
├── Notes/
└── Attachments/
In this example, .backups/ can be used as the backup directory because it is outside MyVault.
Or:
MyVault/
├── .backups/
└── Notes/
In this example, .backups/ can only be used as the backup directory if it is excluded from the archive.
Excluded Paths
Specifies files or directories that should not be included in the archive.
Excluded paths are specified relative to the vault root.
For example:
.obsidian/workspace.json
Attachments/temp
private-notes
Paths currently use exact relative path matching.
Wildcards are not supported.
Archive
Safe Vault allows you to configure how backup archive files are named.
Naming Strategy
Available naming strategies include:
Same Name
Every backup uses the same configured archive name.
For example:
vault-backup.tar.gz
If an archive with the same name already exists, Safe Vault can handle it using one of the following strategies:
- Overwrite — replace the existing archive
- Delete then create new — delete the existing archive before creating the new one
Delete then create new is the default behaviour.
Date Formatted
Generates archive names using the date and time of the backup.
For example:
vault-backup-2026-08-30.tar.gz
This is useful when you want to retain multiple backup snapshots.
Prompt Before Backup
Prompts for the archive name before creating each backup.
This is useful when you want to assign descriptive names to individual backups.
Encryption
Safe Vault supports optional backup encryption using age.
When encryption is enabled, the generated archive is encrypted before being stored in the backup directory.
Two encryption methods are supported.
Password
Encrypts the archive using an age passphrase.
The same passphrase is required when restoring the backup.
This can be useful for simple personal backups where managing a separate identity file is unnecessary.
Identity File
Uses an age public/private key pair.
This is the default encryption method.
The public recipient key is used when creating backups, while the corresponding private identity is required when decrypting and restoring them.
A new identity can be generated with:
age-keygen -o key.txt
The public recipient can be derived from the identity with:
age-keygen -y key.txt
Keep the identity file secure. Anyone with access to the private identity can decrypt backups encrypted for its corresponding recipient.
System Requirements
Safe Vault relies on external command-line tools rather than bundling its own implementations.
Depending on the features you use, you will need:
tar
age
git
Each required command must be available from your system PATH.
You can verify this from a terminal with:
tar --version
age --version
git --version
If a command is unavailable, the Safe Vault feature that depends on it will not work.
Backup Workflow
A typical Safe Vault workflow is:
Obsidian Vault
│
▼
Archive
tar
│
▼
Optional Encryption
age
│
▼
Backup Directory
│
▼
Optional Version Control
git
│
▼
Remote Repository
For a simple local setup, you can use Safe Vault only for archive creation.
For a more complete backup strategy, you can combine archive creation, encryption, and Git synchronization.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.