hermes-backup-pipeline

Automates nightly Hermes state snapshots, tar.gz packaging, and GitHub push with integrity verification.

10|2|Updated May 6, 2026
One-click install
npx skills add https://github.com/jcrabapple/hermes-skills --skill hermes-backup-pipeline-jcrabapple
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: hermes-backup-pipeline
Source: https://github.com/jcrabapple/hermes-skills/tree/main/hermes-backup-pipeline
Command: npx skills add https://github.com/jcrabapple/hermes-skills --skill hermes-backup-pipeline-jcrabapple

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Backing up a Hermes Agent installation manually is slow and error-prone: the full backup zips ~7.1 GB of mostly rebuildable data, hits script timeouts, and can exceed GitHub's 100MB file limit or local disk quotas. This Skill provides a tested nightly pipeline that produces a small, verified archive and pushes it to a private GitHub repo automatically. ## Core Features & Use Cases - Quick State Snapshot: Uses hermes backup -q to capture critical state (config.yaml, .env, auth.json, cron/, mnemosyne memory DB) in under 5 seconds, filtering out rebuildable data like state.db and sessions/. - Integrity Verification & Git LFS Push: Repackages to tar.gz, runs SHA256 checksums and archive test-reads, then pushes via a 3-tier git fallback (normal, plain, force) with Git LFS handling large archives. - Failure Recovery Guidance: Documents fixes for snapshot ID parsing failures, git push credential hangs, disk quota issues on tmpfs, and poisoned git history reinitialization. - Use Case: Schedule the script via cron at 4:30am ET to back up your Hermes config, skills, and memory nightly, receive a Telegram success/failure notification, and restore everything from the archive after a machine failure. ## Quick Start Set up the nightly Hermes backup pipeline using the quick snapshot approach and push the verified archive to my private GitHub repo.

Frequently Asked Questions about hermes-backup-pipeline

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I back up my Hermes Agent configuration and skills automatically?▼

Run `hermes backup -q --label nightly` to create a quick state snapshot, copy skills/ manually into staging, repackage as tar.gz, and push to a private GitHub repo. Schedule the provided nightly_backup.py script via cron for automated daily runs.

How to push backup archives larger than 100MB to GitHub?▼

Use Git LFS to track *.tar.gz archives, which removes GitHub's 100MB file limit. Run `git lfs install` and `git lfs track "*.tar.gz"` in the backup repo so archives of any size push cleanly.

Why does git push hang with no error in a cron job?▼

The push hangs because the credential helper is unavailable and git waits for interactive input that never arrives. Temporarily embed a token in the remote URL using `gh auth token`, push, then revert the URL to remove the token from git config.

What data should be excluded from a Hermes backup?▼

Exclude rebuildable data: state.db (~2.1 GB session history), sessions/, backups/ (already in git), checkpoints/, and caches like logs and browser screenshots. Include only config.yaml, .env, auth.json, skills/, cron/, and the mnemosyne memory database.

How do I restore Hermes from a backup archive?▼

Extract the tar.gz to a temporary directory, then copy config.yaml and skills/ back into ~/.hermes/. Stop Hermes before restoring the mnemosyne memory directory so the SQLite WAL is not live; embedding models re-download automatically on first recall.