vt-c-doc-versioning¶
Automatisches Versionierungs-System für Dokumente. Erstellt neue Versionen, archiviert alte Versionen im 99-alt Ordner, erhöht Versionsnummern und aktualisiert Versionshistorie. Primär für Markdown, aber alle Formate unterstützt (docx, pdf, xlsx, pptx, md).
Plugin: core-standards
Category: Documentation Pipeline
Command: /vt-c-doc-versioning
Document Versioning Skill¶
Zweck¶
Dieser Skill verhindert das Überschreiben von Dokumenten und sorgt für eine vollständige Versionierungshistorie. Er wird automatisch bei jeder Dokumentänderung aktiviert.
Workflow¶
Bei jeder Anfrage zur Änderung eines Dokuments:
1. Versionierung starten¶
WICHTIG: Bevor das Dokument geändert wird, IMMER diesen Prozess durchlaufen!
2. Nutzer-Informationen abfragen¶
Frage den Nutzer:
1. "Autor der Änderung?" (z.B. "Max Mustermann")
2. "Beschreibung der Änderungen?" (z.B. "Ergänzung Kostenschätzung")
3. "Status der neuen Version?" (Optionen: "Zur Abstimmung", "Entwurf", "Final")
3. Aktuelle Version ermitteln¶
- Dateiname analysieren:
Dokument_v0.2.docx→ Version0.2 - Falls keine Version im Dateinamen: Im Dokument nach "Version:" suchen
- Format:
vX.YoderX.Y(mit oder ohne "v")
4. Neue Version berechnen¶
- Minor-Version erhöhen:
v0.2→v0.3 - Bei
v0.9→v0.10(nicht zu v1.0, außer explizit vom Nutzer gewünscht) - Bei
v1.0→ Major-Wechsel nur auf Nutzer-Anfrage
5. Altes Dokument archivieren¶
# 99-alt Ordner erstellen falls nicht vorhanden
mkdir -p 99-alt
# Alte Version verschieben (Dateiname bleibt gleich)
mv Dokument_v0.2.docx 99-alt/
6. Neue Datei erstellen¶
- Dateiname: Alte Version durch neue ersetzen
Dokument_v0.2.docx→Dokument_v0.3.docx2024-10-22_Bericht_v1.5.md→2024-10-22_Bericht_v1.6.md
7. Dokument-Inhalt aktualisieren¶
Für Markdown (.md)¶
# Metadaten aktualisieren
Version: v0.3
Datum: [AKTUELLES_DATUM im Format DD.MM.YYYY]
# Versionshistorie (OBEN neue Zeile einfügen)
| Version | Datum | Autor | Änderungen | Status |
|---------|-------|-------|------------|--------|
| v0.3 | [DATUM] | [AUTOR] | [ÄNDERUNGEN] | [STATUS] |
| v0.2 | ... | ... | ... | Abgelöst |
Für Word (.docx)¶
from docx import Document
doc = Document('Dokument_v0.3.docx')
# Metadaten auf Seite 1 suchen und ersetzen
# "Version: v0.2" → "Version: v0.3"
# "Datum: DD.MM.YYYY" → "Datum: [AKTUELLES_DATUM]"
# Versionshistorie-Tabelle finden
# Neue Zeile OBEN einfügen mit:
# [v0.3] [DATUM] [AUTOR] [ÄNDERUNGEN] [STATUS]
# Alte Zeilen: Status auf "Abgelöst" setzen
doc.save('Dokument_v0.3.docx')
Für PDF, Excel, PowerPoint¶
- Hinweis: Diese Formate können nicht direkt bearbeitet werden
- Nur Datei-Versionierung (Archivierung + neuer Dateiname)
- Metadaten müssen manuell im Quelldokument geändert werden
8. Bestätigung¶
✅ Versionierung abgeschlossen:
- Alt: 99-alt/Dokument_v0.2.docx
- Neu: Dokument_v0.3.docx
- Version: v0.3
- Status: [STATUS]
Bereit für Änderungen am Dokument.
Dokumenttypen¶
Primär: Markdown (.md)¶
- Vollständige Unterstützung
- Metadaten und Versionshistorie werden direkt bearbeitet
- YAML Frontmatter oder Markdown-Tabellen
Sekundär: Word (.docx)¶
- Vollständige Unterstützung
- Metadaten auf Seite 1 werden aktualisiert
- Versionshistorie-Tabelle wird erweitert
Eingeschränkt: PDF, Excel (.xlsx), PowerPoint (.pptx)¶
- Nur Datei-Versionierung (kein Inhalt)
- Archivierung und Dateiname-Anpassung
- Nutzer muss Metadaten manuell ändern
Versionsnummer-Regeln¶
Format¶
- Mit Präfix:
v0.3,v1.0,v2.5 - Ohne Präfix:
0.3,1.0,2.5 - Konsistent zum bestehenden Format
Erhöhung¶
- Minor: Nach dem Punkt (+1)
v0.2→v0.3v0.9→v0.10v1.5→v1.6- Major: Nur auf Nutzer-Anfrage
v0.10→v1.0(explizit anfragen)v1.9→v2.0(explizit anfragen)
Versionshistorie-Tabelle¶
Struktur¶
| Version | Datum | Autor | Änderungen | Status |
|---------|------------|-----------------|-------------------------------|-----------------|
| v0.3 | 22.10.2025 | Max Mustermann | Ergänzung Kostenschätzung | Zur Abstimmung |
| v0.2 | 04.08.2025 | Max Mustermann | Detaillierte Feature-Bewertung| Abgelöst |
| v0.1 | 30.07.2025 | Max Mustermann | Initiale Erstellung | Abgelöst |
Regeln¶
- Neue Zeile: Immer OBEN (neueste zuerst)
- Status alte Versionen: Auf "Abgelöst" setzen
- Status neue Version: Vom Nutzer abfragen (Zur Abstimmung | Entwurf | Final)
- Datum: Format
DD.MM.YYYY
Wichtige Hinweise¶
IMMER vor Änderungen¶
Dieser Skill wird ZUERST ausgeführt, bevor irgendwelche Änderungen am Dokument vorgenommen werden.
Nie überschreiben¶
Dokumente werden NIEMALS direkt überschrieben. Immer erst versionieren!
Archiv-Ordner¶
- Name:
99-alt(im gleichen Verzeichnis wie Dokument) - Wird automatisch erstellt falls nicht vorhanden
- Dateinamen bleiben unverändert
Claude Code Integration¶
Bei Verwendung mit Claude Code:
Nutzer: "Bitte Dokument XYZ anpassen und Kapitel 3 ergänzen"
Claude:
1. [Skill aktiviert] "Autor? Änderungen? Status?"
2. [Nutzer antwortet]
3. [Versionierung durchführen]
4. [DANN] Dokument bearbeiten
Beispiel-Ablauf¶
Nutzer: "Bitte im Dokument 'Vorgangsvorschlag_v0.2.docx' die Kostenschätzung ergänzen"
Claude:
→ Skill aktiviert
→ "Autor der Änderung?"
Nutzer: "Rolf Schulte Strathaus"
→ "Beschreibung der Änderungen?"
Nutzer: "Ergänzung von Kostenschätzung"
→ "Status?" (Zur Abstimmung/Entwurf/Final)
Nutzer: "Zur Abstimmung"
Claude führt aus:
1. ✓ 99-alt/ Ordner erstellen
2. ✓ Vorgangsvorschlag_v0.2.docx → 99-alt/
3. ✓ Neue Datei: Vorgangsvorschlag_v0.3.docx
4. ✓ Im Dokument:
- Version: v0.3
- Datum: 22.10.2025
- Versionshistorie: Neue Zeile oben
5. ✓ Jetzt Kostenschätzung ergänzen
Fertig!
Fehlerbehandlung¶
Keine Version gefunden¶
→ Frage Nutzer: "Welche Version soll das Dokument haben?"
→ Setze als v0.1 und erstelle Versionshistorie
99-alt existiert bereits¶
→ Prüfe ob Datei bereits in 99-alt existiert
→ Falls ja: Umbenennen mit Timestamp: "Dokument_v0.2_backup_20251022.docx"