S01: Checkpoint-Tooling eingeführt: checkpoint.cmd + checkpoint.ps1; Regel R7 ergänzt; agent-prompt.md auf Checkpoint-Workflow umgestellt

This commit is contained in:
tlg
2026-04-14 09:18:47 +02:00
parent 0c6cfda3d6
commit abf0c037ee
5 changed files with 174 additions and 28 deletions

View File

@@ -8,12 +8,15 @@ Alle Dateien liegen im Ordner `Q:\DesTEngS\Pro\Git\marketing\claude_cowork` (Git
```
claude_cowork/
├── agent-prompt.md # Diese Datei Hauptanweisung + aktueller Stand
├── zentral-index.md # Überblick aller Teilgebiete (Status, Priorität, Abhängigkeiten)
├── marketing.md # Unternehmensdaten, Zielgruppe, Positionierung, Tonalität
├── changelog.md # Chronologisches Entscheidungslog (append-only)
├── teilgebiete/ # Pro Teilgebiet eine Detail-Datei (NN-<name>.md)
── artefakte/ # Pro Teilgebiet ein Unterordner mit fertigen Materialien
├── agent-prompt.md # Diese Datei Hauptanweisung + aktueller Stand
├── zentral-index.md # Überblick aller Teilgebiete (Status, Priorität, Abhängigkeiten)
├── marketing.md # Unternehmensdaten, Zielgruppe, Positionierung, Tonalität
├── changelog.md # Chronologisches Entscheidungslog (append-only)
├── checkpoint.cmd # Tooling: Changelog-Eintrag + Git-Commit (von Thomas ausgeführt)
── checkpoint.ps1 # Tooling: PowerShell-Logik hinter checkpoint.cmd
├── .checkpoint-pending.txt # Temporäre Übergabedatei vom Agent an checkpoint.cmd
├── teilgebiete/ # Pro Teilgebiet eine Detail-Datei (NN-<name>.md)
└── artefakte/ # Pro Teilgebiet ein Unterordner mit fertigen Materialien
```
## Session-Start: Lesereihenfolge
@@ -25,15 +28,15 @@ Lies zu Beginn jeder neuen Session in dieser Reihenfolge:
4. `changelog.md` letzte Einträge, um den Kontext der letzten Sessions zu verstehen
5. Die für die aktuelle Aufgabe relevante Teilgebiet-Datei (falls anwendbar)
Bestätige Thomas kurz, was du gelesen hast und welche Aufgabe laut "Aktueller Stand" ansteht, bevor du loslegst.
Bestätige Thomas kurz, was du gelesen hast und welche Aufgabe laut "Aktueller Stand" ansteht, bevor du loslegst. Ermittle außerdem aus dem letzten Eintrag in `changelog.md` die neue Session-Nummer (z.B. nach S03 → S04) und verwende sie durchgängig in dieser Session.
## Prozessregeln
**R1 — Append-only Changelog.** Neue Einträge werden am Ende von `changelog.md` angefügt. Bestehende Einträge werden niemals verändert oder gelöscht. Jeder Eintrag enthält Timestamp und Session-Nummer (S01, S02, …).
**R1 — Append-only Changelog.** Neue Einträge in `changelog.md` werden ausschließlich über den Checkpoint-Workflow (siehe unten) angehängt. Bestehende Einträge werden niemals verändert oder gelöscht. Jeder Eintrag enthält Timestamp und Session-Nummer (S01, S02, …).
**R2 — Status/Priorität/Abhängigkeiten nur mit OK.** Änderungen an Status, Priorität oder Abhängigkeiten eines Teilgebiets im `zentral-index.md` sind ausschließlich nach explizitem OK von Thomas erlaubt. Du triffst diese Entscheidungen nie eigenständig. Du darfst Änderungen vorschlagen.
**R3 — Session-Nummerierung.** Beim Session-Start ermittelst du aus der letzten Zeile von `changelog.md` die nächste Session-Nummer (z.B. nach S03 → S04) und verwendest sie für alle Einträge dieser Session.
**R3 — Session-Nummerierung.** Beim Session-Start ermittelst du aus der letzten Zeile von `changelog.md` die nächste Session-Nummer und verwendest sie für alle Checkpoints dieser Session.
**R4 — Fragen vor Taten.** Bei Unklarheiten fragst du Thomas, bevor du Annahmen triffst. Inhaltliche Marketing-Entscheidungen (Zielgruppe, Kanäle, Positionierung etc.) werden immer mit Thomas abgestimmt.
@@ -41,38 +44,48 @@ Bestätige Thomas kurz, was du gelesen hast und welche Aufgabe laut "Aktueller S
**R6 — Dateinamen.** Teilgebiet-Dateien folgen dem Schema `NN-<kurzname>.md` (z.B. `01-positionierung.md`). Die Nummer NN entspricht dem Eintrag im Zentral-Index.
## Session-Ende-Routine
**R7 — Kein direkter Git-Commit und kein direkter Changelog-Edit.** Du editierst `changelog.md` nicht direkt und führst auch keinen `git commit` aus. Beides geschieht ausschließlich über den Checkpoint-Workflow.
Thomas kündigt das Session-Ende explizit an ("Session beenden" o.ä.). Dann führst du folgende Schritte in dieser Reihenfolge aus:
## Checkpoint-Workflow
1. **Teilgebiet-Dateien aktualisieren:** Trage die in dieser Session erarbeiteten Ergebnisse in die betroffene(n) Teilgebiet-Datei(en) ein.
2. **`zentral-index.md` aktualisieren:** Nur nach R2 und nur nach bestätigten Entscheidungen.
3. **`changelog.md` ergänzen:** Hänge einen neuen Eintrag an im Format:
Ein **Checkpoint** fasst einen abgeschlossenen Arbeitsschritt zusammen und besteht aus zwei gekoppelten Aktionen: einem Eintrag in `changelog.md` und einem Git-Commit. Checkpoints können **mehrfach pro Session** erfolgen jedes Mal, wenn ein logischer Zwischenstand erreicht ist (z.B. ein Teilgebiet-Abschnitt fertig, ein Artefakt erstellt). Sie sollen aber auch **immer am Session-Ende** erfolgen, um den Stand zu sichern.
**Ablauf:**
1. Der Agent hat inhaltliche Änderungen an `marketing.md`, `zentral-index.md`, Teilgebiet-Dateien oder Artefakten vorgenommen.
2. Vor dem letzten Checkpoint einer Session zusätzlich: Aktualisiere den Abschnitt "Aktueller Stand / Nächste Aufgabe" am Ende dieser `agent-prompt.md`-Datei, sodass die nächste Session nahtlos starten kann.
3. Der Agent schreibt die Datei `.checkpoint-pending.txt` im Repo-Root mit **exakt** diesem Format:
```
YYYY-MM-DD HH:MM | S<NN> | <kompakte Zusammenfassung der Entscheidungen und Ergebnisse>
S<NN>
<kompakte Zusammenfassung in einer oder mehreren Zeilen>
```
4. **`agent-prompt.md` aktualisieren:** Passe den Abschnitt "Aktueller Stand / Nächste Aufgabe" (ganz unten) so an, dass die nächste Session nahtlos starten kann.
5. **Git-Commit:** Führe über Bash (Linux-Sandbox oder Git Bash) einen Commit aus:
```bash
cd /pfad/zum/repo
git add -A
git commit -m "S<NN>: <Kurzbeschreibung>"
```
Push erfolgt nicht automatisch das macht Thomas bei Bedarf selbst.
Zeile 1: Session-Nummer (z.B. `S02`).
Zeile 2 und folgende: Zusammenfassung. Mehrere Zeilen werden von `checkpoint.ps1` zu einem Satz zusammengeführt (Leerzeichen getrennt). Keine Pipes (`|`) in der Zusammenfassung, sie kollidieren mit dem Changelog-Format.
4. Der Agent teilt Thomas mit: "Bitte `checkpoint.cmd` ausführen."
5. Thomas doppelklickt `checkpoint.cmd`. Das Skript:
- liest `.checkpoint-pending.txt`
- hängt die Zeile `YYYY-MM-DD HH:MM | S<NN> | <summary>` an `changelog.md` an (Timestamp vom lokalen PC)
- führt `git add -A && git commit -m "S<NN>: <summary>"` aus
- löscht `.checkpoint-pending.txt`
6. Thomas bestätigt im Chat, dass der Checkpoint gelaufen ist. Erst danach arbeitet der Agent weiter.
**Fehlerfall:** Scheitert `checkpoint.cmd` (z.B. git commit fehlgeschlagen), bleibt `.checkpoint-pending.txt` liegen. Thomas gibt das Problem an den Agenten zurück, der Diagnose und Korrektur vorschlägt.
## Erste Aufgaben (nur beim allerersten Start relevant)
Falls `marketing.md` noch leere Platzhalter enthält und `zentral-index.md` noch keine Teilgebiete listet:
1. **`marketing.md` interaktiv befüllen.** Stelle Thomas gezielte Fragen zu: Unternehmensdaten, Angebot, Zielgruppe(n), aktueller Positionierung, gewünschter Tonalität, vorhandenen Marketing-Aktivitäten, Zielen. Arbeite Abschnitt für Abschnitt.
2. **Teilgebiete gemeinsam definieren.** Schlage auf Basis von `marketing.md` eine Liste von Teilgebieten vor (z.B. Positionierung, Zielgruppenanalyse, Website, Content-Strategie, Social Media, Newsletter, SEO, Messen, …). Stimme Priorität und Abhängigkeiten mit Thomas ab und trage sie in `zentral-index.md` ein.
3. **Erste Teilgebiet-Datei anlegen** für das priorisierte Thema und einstieg in die Bearbeitung.
1. **`marketing.md` interaktiv befüllen.** Stelle Thomas gezielte Fragen zu: Unternehmensdaten, Angebot, Zielgruppe(n), aktueller Positionierung, gewünschter Tonalität, vorhandenen Marketing-Aktivitäten, Zielen. Arbeite Abschnitt für Abschnitt, nicht alles auf einmal.
2. **Teilgebiete gemeinsam definieren.** Schlage auf Basis von `marketing.md` eine Liste von Teilgebieten vor (z.B. Positionierung, Zielgruppenanalyse, Website, Content-Strategie, Social Media, Newsletter, SEO, Messen, …). Stimme Priorität und Abhängigkeiten mit Thomas ab und trage sie nach seiner Freigabe in `zentral-index.md` ein.
3. **Erste Teilgebiet-Datei anlegen** für das priorisierte Thema und Einstieg in die Bearbeitung.
Setze zwischen sinnvollen Zwischenständen Checkpoints (z.B. nach "Marketing.md Abschnitte 1-3 befüllt", nach "Teilgebiete-Liste festgelegt").
---
## Aktueller Stand / Nächste Aufgabe
**Letzte Session:** S01 (2026-04-13)
**Status:** Prozessumgebung erstellt. Alle Strukturdateien angelegt, aber inhaltlich noch leer (nur Platzhalter).
**Nächste Aufgabe:** In der nächsten Session mit dem interaktiven Befüllen von `marketing.md` beginnen. Thomas dazu gezielte Fragen stellen (Abschnitt für Abschnitt, nicht alles auf einmal). Anschließend gemeinsam die Teilgebiete definieren und in `zentral-index.md` eintragen.
**Was wurde gemacht:** Prozessumgebung und Dateistruktur erstellt. Checkpoint-Workflow (`checkpoint.cmd` + `checkpoint.ps1`) eingerichtet. Alle Strukturdateien angelegt, aber inhaltlich noch leer (nur Platzhalter).
**Nächste Aufgabe:** Mit dem interaktiven Befüllen von `marketing.md` beginnen. Thomas dazu gezielte Fragen stellen, Abschnitt für Abschnitt. Anschließend gemeinsam die Teilgebiete definieren und in `zentral-index.md` eintragen (nach explizitem OK).
**Offene Punkte:** Keine.