Backup
Die installierte mac-backup-CLI als einzige Transfer-Implementierung verwenden. Den Ablauf nicht
mit rohem scp, rsync, SSHFS, Explorer-Aktionen oder Ad-hoc-Löschung nachbauen.
Anfrage routen
- Eine gewöhnliche "Backup"-Anfrage bedeutet
mirror; die Quelle bleibt unangetastet.
archive bedeutet Quell-Bereinigung und ist eine eigene, destruktive Absicht. Niemals aus
"backup", "copy" oder "free some space" ableiten.
restore schreibt an ein neues Ziel und überschreibt nie stillschweigend.
- Existiert kein geprüftes Job-JSON, einen Job-Vorschlag vorbereiten und vor
init-target oder
Transfer anhalten.
Ausführung
- Den Job lesen und
mac-backup plan <job> --json ausführen.
- Prüfen, dass die zurückgegebene Quellklasse, Dateianzahl, Byte-Anzahl, Ziel-Volume-ID,
Verschlüsselungsstatus und Host-Fingerprint mit der Anfrage und dem aktuellen Geräte-Beleg
übereinstimmen.
- Für Mirror
mac-backup mirror <job> --json ausführen, danach mac-backup verify <job> --json.
- Für Restore ein neues, absolutes Ziel verwenden und die wiederhergestellten Dateien über das
Manifest-Ergebnis des Befehls verifizieren.
- Für Archive
--confirm-delete nur übergeben, wenn der Nutzer die Quell-Entfernung ausdrücklich
verlangt hat und der geprüfte Plan genau diese Quelle nennt. Eine Policy-Blockade ist das
korrekte Ergebnis; niemals target_encryption_required,
source_class_unknown_cleanup_blocked, onedrive_dehydrate_not_implemented, einen Lock, eine
Identitätsabweichung oder einen fehlenden Anker umgehen.
init-target ist privilegiertes Setup, keine Routine-Ausführung. Es benötigt einen unabhängig
eingeholten Betriebssystem-Beleg für Volume-ID und Verschlüsselung; ein aus dem vorgeschlagenen
Job kopierter Wert ist kein Beleg.
Niemals behaupten, ein Mirror sei ein vollständiges Backup, bevor Ziel-Verify und ein echter
Restore-Test beide bestanden haben. Geheimnisse, echte Job-Dateien, lokale Anker und
Nutzer-Dateinamen aus Tickets, Git und OneDrive heraushalten.
Changelog
1.0.0 (2026-08-24)
- Neutralisierte Kopie des
~/.claude/skills/backup/-Deployment-Masters, in die kategorisierte
Bibliothek aufgenommen. Ursache der Sync-Lücke: Der Skill war deployt, hatte aber keinen
Quell-Eintrag unter skills/<category>/, weshalb skill_sync.py status ihn als NUR-ZIEL
(nur Ziel) meldete und catalog.py/build_public_registry.py (die nur skills/ scannen) ihn
nie sahen — er konnte die öffentliche Registry oder SKILLS-MAP.md deshalb nie erreichen, egal
wie die Deployment-Kopie bearbeitet wurde.
1---2name: backup3description: Plant, spiegelt, verifiziert, stellt wieder her oder archiviert Dateien explizit über den fail-closed mac-backup-Kern. Für die eigenen hostübergreifenden Backup-Jobs des Nutzers verwenden; nicht für allgemeine Cloud-Synchronisation oder beiläufiges Dateikopieren.4---56<img src="banner.png" width="100%" alt="backup banner">78# Backup910Die installierte `mac-backup`-CLI als einzige Transfer-Implementierung verwenden. Den Ablauf nicht11mit rohem `scp`, `rsync`, SSHFS, Explorer-Aktionen oder Ad-hoc-Löschung nachbauen.1213## Anfrage routen1415- Eine gewöhnliche "Backup"-Anfrage bedeutet `mirror`; die Quelle bleibt unangetastet.16- `archive` bedeutet Quell-Bereinigung und ist eine eigene, destruktive Absicht. Niemals aus17 "backup", "copy" oder "free some space" ableiten.18- `restore` schreibt an ein neues Ziel und überschreibt nie stillschweigend.19- Existiert kein geprüftes Job-JSON, einen Job-Vorschlag vorbereiten und vor `init-target` oder20 Transfer anhalten.2122## Ausführung23241. Den Job lesen und `mac-backup plan <job> --json` ausführen.252. Prüfen, dass die zurückgegebene Quellklasse, Dateianzahl, Byte-Anzahl, Ziel-Volume-ID,26 Verschlüsselungsstatus und Host-Fingerprint mit der Anfrage und dem aktuellen Geräte-Beleg27 übereinstimmen.283. Für Mirror `mac-backup mirror <job> --json` ausführen, danach `mac-backup verify <job> --json`.294. Für Restore ein neues, absolutes Ziel verwenden und die wiederhergestellten Dateien über das30 Manifest-Ergebnis des Befehls verifizieren.315. Für Archive `--confirm-delete` nur übergeben, wenn der Nutzer die Quell-Entfernung ausdrücklich32 verlangt hat und der geprüfte Plan genau diese Quelle nennt. Eine Policy-Blockade ist das33 korrekte Ergebnis; niemals `target_encryption_required`,34 `source_class_unknown_cleanup_blocked`, `onedrive_dehydrate_not_implemented`, einen Lock, eine35 Identitätsabweichung oder einen fehlenden Anker umgehen.3637`init-target` ist privilegiertes Setup, keine Routine-Ausführung. Es benötigt einen unabhängig38eingeholten Betriebssystem-Beleg für Volume-ID und Verschlüsselung; ein aus dem vorgeschlagenen39Job kopierter Wert ist kein Beleg.4041Niemals behaupten, ein Mirror sei ein vollständiges Backup, bevor Ziel-Verify und ein echter42Restore-Test beide bestanden haben. Geheimnisse, echte Job-Dateien, lokale Anker und43Nutzer-Dateinamen aus Tickets, Git und OneDrive heraushalten.4445## Changelog4647### 1.0.0 (2026-08-24)48- Neutralisierte Kopie des `~/.claude/skills/backup/`-Deployment-Masters, in die kategorisierte49 Bibliothek aufgenommen. Ursache der Sync-Lücke: Der Skill war deployt, hatte aber keinen50 Quell-Eintrag unter `skills/<category>/`, weshalb `skill_sync.py status` ihn als `NUR-ZIEL`51 (nur Ziel) meldete und `catalog.py`/`build_public_registry.py` (die nur `skills/` scannen) ihn52 nie sahen — er konnte die öffentliche Registry oder `SKILLS-MAP.md` deshalb nie erreichen, egal53 wie die Deployment-Kopie bearbeitet wurde.