Install
$ agentstack add skill-fredoliveira-agents-backup-vault ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Vault backup & rotation
Purpose
Keep a rolling set of zip snapshots of the vault in ~/Documents/obsidian/backups, pruned to a grandfather-father-son (GFS) retention schedule so the backup folder stays bounded instead of growing forever.
The actual work is done by backup.sh (next to this file) — the logic is deterministic, so run the script rather than reimplementing it by hand.
Retention schedule
A backup is kept if any tier wants it; everything else is deleted.
| Tier | Rule | | ------- | ------------------------------------------------- | | Daily | every backup from the last 14 days | | Weekly | newest backup of each of the 5 most recent ISO weeks | | Monthly | newest backup of each of the 12 most recent months | | Yearly | newest backup of each of the 5 most recent years |
Tunable at the top of backup.sh (DAILY_DAYS, WEEKLY_KEEP, MONTHLY_KEEP, YEARLY_KEEP).
What gets backed up
- The full vault at
~/Documents/obsidian/umwelt, including.obsidian
(themes, plugins, settings) so a restore reproduces the exact setup.
- Excluded:
.DS_Store,.Trash/, and the backup directory itself. - Archives are named
umwelt-YYYY-MM-DD.zipand contain a top-levelumwelt/
folder, so restoring is just unzip umwelt-.zip.
Instructions
- Run the script:
``sh bash ~/.claude/skills/backup-vault/backup.sh ``
- Preview without changing anything:
bash .../backup.sh --dry-run - Override paths if needed:
VAULT_DIR=... BACKUP_DIR=... bash .../backup.sh
- Report the summary line (how many backups were created / kept / pruned) and
the resulting archive size.
The script is idempotent per day: at most one backup is created per calendar date, so it's safe to run repeatedly. Running it both creates today's snapshot and applies retention in one pass.
Notes
- This is local only. To replicate offsite,
rsyncthebackups/directory to
the remote target after running the script, e.g. rsync -a --delete ~/Documents/obsidian/backups/ :obsidian-backups/. Because retention deletes files locally, use --delete so the remote mirrors the same pruned set.
- For unattended daily runs, schedule the script (launchd/cron, or the
/schedule skill). Nothing in the script needs an interactive session.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: fredoliveira
- Source: fredoliveira/agents
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.