vault trash empty
Entfernt Einträge endgültig aus dem Trash. Bei Notizen trägt Apparat die NanoID zusätzlich in die Tombstone-Liste ein — die ID wird damit niemals wieder vergeben, auch wenn die Datei komplett aus dem Vault verschwindet. Dateien (Bilder, PDFs …) werden samt ihrer .sha256-Prüfsumme entfernt, aber ohne Tombstone: Datei-NanoIDs werden beim Import zufällig vergeben und nie erneut gewählt, es gibt also keine Verwechslungsgefahr, vor der ein Tombstone schützen müsste.
Häufigster Fall: alles leeren
apparat vault trash empty
Apparat zählt, wie viele Einträge betroffen wären, und fragt nach Bestätigung:
About to permanently delete 3 trash entries from vault "recherche" → removes file(s) from .apparat/trash/ → records tombstones in .apparat/tombstones.yaml → the NanoId(s) will never be re-used. Continue? [y/N]
Mit yes werden die Einträge in einem atomaren Schritt als Tombstones nachgetragen, anschließend werden die Dateien aus .apparat/trash/ entfernt. Danach:
Removed 3 trash entries from vault "recherche"; tombstones recorded. - V1StGXRa (deleted 2026-04-20) - Bx7tYu3v (deleted 2026-04-25) - Cc1DdFfG (deleted 2026-04-28)
Mit no (oder Enter, Default ist N) passiert nichts; der Trash bleibt unverändert.
Einzelnen Eintrag entfernen
apparat vault trash empty V1StGXRa
Entfernt nur den Eintrag mit dieser NanoID, die übrigen Trash-Dateien bleiben liegen. Der Prompt zeigt dann Titel und ID des betroffenen Eintrags statt einer Anzahl. Gehört die NanoID zu einer Datei, weist die Rückfrage darauf hin, dass kein Tombstone geschrieben wird:
About to permanently delete asset "2026-04-19--budget-chart--As3Df9Gh.png" (id: As3Df9Gh) from vault "recherche" → removes the file and its .sha256 sidecar from .apparat/trash/ → no tombstone is written — asset NanoIds are not reserved.
Ohne Rückfrage: --force
apparat vault trash empty --force apparat vault trash empty V1StGXRa --force
Überspringt den Bestätigungs-Prompt. Praktisch für Skripte oder Aufräum-Aufgaben — bewusst explizit einzutippen, damit Tipper nicht versehentlich den gesamten Trash leeren.
Nicht-interaktiver Modus
Im --no-interaction-Modus (CI-Pipelines, Cron-Jobs) verlangt vault trash empty zwingend --force. Ohne bricht das Kommando ab:
apparat vault trash empty --no-interaction # Refusing to empty trash without --force in non-interactive mode. # Exit code: 1 apparat vault trash empty --no-interaction --force # → funktioniert
Diese Doppelsicherung soll verhindern, dass ein schief konfiguriertes Skript unbeabsichtigt Einträge endgültig entsorgt — analog zu entity delete.
Vault-Auswahl
Wie bei allen Kommandos in diesem Namespace: ohne --vault greift die übliche Auto-Lokalisierung (CWD-Erkennung, einziger registrierter Vault, interaktive Auswahl). Explizit:
apparat vault trash empty --vault=arbeit apparat vault trash empty V1StGXRa --vault=/home/max/vaults/recherche
Was nach dem Leeren auf der Platte liegt
Vorher:
vaults/recherche/
└── .apparat/
└── trash/
├── 2026-04-19--maria-beispiel--V1StGXRa.md
└── 2026-02-14--max-mustermann--Bx7tYu3v.md
Nachher:
vaults/recherche/
└── .apparat/
├── trash/
│ └── (leer)
└── tombstones.yaml
Inhalt von .apparat/tombstones.yaml:
tombstones: - id: V1StGXRa deleted: '2026-04-20' - id: Bx7tYu3v deleted: '2026-04-25'
idist die NanoID. Sie bleibt für immer belegt.deletedist das Datum des ursprünglichen Soft-Deletes (aus demdeleted-Feld der Trash-Datei) — nicht das Datum des Empty-Vorgangs.- Fehlt das
deleted-Feld in der Trash-Datei (z.B. weil die Datei manuell in den Trash verschoben wurde), trägt Apparat stellvertretend das heutige Datum ein.
Begleitwirkungen
Endgültig entsorgte Notizen verschwinden vollständig aus dem Vault, ihre NanoID bleibt per Tombstone für immer belegt, damit alte Verweise niemals versehentlich auf eine andere Notiz zeigen. Binärdateien unter assets/, auf die eine gelöschte Notiz verwiesen hat, bleiben zunächst liegen — sie werden erst dann zu „verwaisten Dateien", die du im Aufräumen-Bereich oder per vault trash empty endgültig entfernst. Eine endgültig entfernte Datei lässt im Gegensatz zur Notiz keinen Tombstone zurück.
Fehler
- „Refusing to empty trash without --force in non-interactive mode." — du musst im
--no-interaction-Modus explizit--forcemitgeben. - „No trashed entity or asset with id "…" in vault "…"" — die angegebene NanoID existiert im Trash nicht. Prüf per
vault trash list, welche IDs dort liegen. - „Tombstones recorded, but failed to remove trash file "…". Remove it manually." — seltener Randfall: das Tombstone wurde bereits geschrieben (die NanoID ist also korrekt reserviert), aber der anschließende Löschvorgang der Datei schlug fehl. Die Datei in
.apparat/trash/dann von Hand entfernen; die Invariante „NanoID wird nie wieder vergeben" ist bereits gesichert. - „… asset(s) could not be removed and remain in the trash — remove manually." — beim Leeren des gesamten Trash konnten einzelne Dateien nicht entfernt werden (z.B. wegen Dateirechten). Die übrigen Einträge wurden trotzdem entsorgt; die genannten Dateien bleiben in
.apparat/trash/liegen und sind von Hand zu entfernen. - „Aborted — nothing was removed." — du hast den Prompt mit no beantwortet. Kein Fehler, nur ein Abbruch.