Nutze dieses Skill für die tzst-Befehlszeilenschnittstelle. Standardmäßig zur Ausführung übergehen, wenn der Benutzer eindeutig eine echte Archivaktion wünscht und die erforderlichen Pfade oder Archivnamen bereits bekannt sind.
Dieses Skill ist nur für die CLI. Wenn der Benutzer nach Python-Code wie from tzst import ... fragt, behandele dies als allgemeine Python-Bibliotheks- oder API-Dokumentationsaufgabe, anstatt dieses Skill als Hauptanleitung zu verwenden.
Wann verwenden
Verwende dieses Skill, wenn der Benutzer:
.tzst- oder.tar.zst-Archive erwähnt- ein
tzst-Archiv erstellen, extrahieren, flach extrahieren, auflisten oder testen möchte - Hilfe bei der Installation von
tzstoder der Auswahl von CLI-Flags benötigt - maschinenlesbare
tzst-Ausgabe für Skripterstellung oder Automatisierung wünscht - eine sichere Konflikthandhabung oder Extraktionsfilter-Anleitung benötigt
Verwende dieses Skill nicht für allgemeine tar-, zip- oder Python-API-Fragen, es sei denn, tzst ist tatsächlich Teil der Anfrage.
Vorbereitung
- Überprüfe, ob
tzstmittzst --versionodertzst --helpverfügbar ist. - Falls es fehlt, bevorzuge einen dieser Installationspfade:
uv tool install tzstpip install tzst- ein separates Release-Binärpaket von https://github.com/xixu-me/tzst/releases/latest, wenn der Benutzer keine Python-Installation wünscht
- Führe
tzst --versionodertzst --helperneut aus, bevor du mit der eigentlichen Arbeit beginnst.
Workflow
- Entscheide, ob die Anfrage eine Ausführung oder eine Anleitung ist. Anfragen wie „diese Dateien archivieren“, „dieses Backup extrahieren“, „zeigen, was drin ist“, „dieses Archiv testen“ oder „tzst installieren“ sind Ausführungsabsichten.
- Wähle den Befehl, der zur Anfrage passt:
a,add,createfür die Archivierungx,extractfür normale Extraktion mit beibehaltener Verzeichnisstrukture,extract-flatnur, wenn der Benutzer explizit eine flache Ausgabe wünschtl,listzur Archivprüfungt,testfür Integritätsprüfungen
- Wenn der Benutzer nur wenige Mitglieder extrahieren möchte und die Mitgliedsnamen unsicher sind, liste zuerst auf.
- Lade
references/cli-reference.md, wenn du die Befehlsmatrix, genauen Flag-Namen oder Kopier-Einfüge-Beispiele benötigst.
Sichere Standardeinstellungen
- Bevorzuge
xgegenübere, es sei denn, die flache Extraktion wird explizit angefordert. - Behalte
--filter dataals Standard-Extraktionsmodus bei. - Verwende
--filter tarnur, wenn der Benutzer standardmäßige tar-Kompatibilität benötigt. - Verwende
--filter fully_trustednur, wenn der Benutzer explizit angibt, dass die Archivquelle vollständig vertrauenswürdig ist. - Behalte die atomare Archiverstellung bei. Greife nur auf
--no-atomiczurück, wenn der Benutzer dies explizit wünscht. - Bevorzuge
--streamingfür große Archive oder speicherbeschränkte Umgebungen. - Für Automatisierung oder Pipelines bevorzuge
tzst --json --no-banner .... - Für automatisierte Extraktion erfordere eine explizite nicht-interaktive
--conflict-resolution-Auswahl wiereplace_all,skip_alloderauto_rename_all. - Kombiniere
--jsonnicht mit interaktiver Konfliktabfrage.
Hinweise zur Skripterstellung
- Setze globale Flags vor den Unterbefehl in Beispielen, z. B.
tzst --json --no-banner l archive.tzst. - Verwende Exit-Codes in Skripten:
0für Erfolg,1für Betriebsfehler,2für Argumentparsungsfehler und130für Unterbrechung. - Wenn die Archivbenennung wichtig ist, teile dem Benutzer mit, dass
tzstein Erstellungsziel auf.tzstoder.tar.zstnormalisieren kann.
Häufige Fehler
- Verwenden von
e, wenn der Benutzer erwartet, dass die ursprüngliche Verzeichnisstruktur erhalten bleibt - Empfehlen von
fully_trustedfür Archive aus unbekannter oder nicht vertrauenswürdiger Quelle - Vergessen einer expliziten Konfliktstrategie für die nicht-interaktive Extraktion
- Behandeln einer Python-API-Frage als CLI-Frage
- Raten von Flags aus
tar-Gewohnheiten, anstatt die gebündelte Referenz oder die installierte CLI-Hilfe zu überprüfen