Plenty Dojo — Lerne aus dem aktuellen Kontext und pflege die Plentymarkets-Wissensbasis. Das Dojo liegt im Verzeichnis, in dem diese Skill-Datei verlinkt ist: `~/.claude/plenty-dojo/`. Ermittle den tatsächlichen Pfad dynamisch über den Symlink dieser Datei: ``` DOJO_DIR = Verzeichnis in dem DOJO.md liegt (Eltern-Verzeichnis von commands/) ``` Die Struktur: - **DOJO.md** — Allgemeine Plentymarkets-Lektionen (geteilt via Git) - **ANTI-PATTERNS.md** — Was man NICHT tun soll (geteilt via Git) - **instances/*.md** — Shop-spezifische Lektionen pro Plenty-ID, z.B. `instances/7843.md` (lokal) ## Wenn $ARGUMENTS "lernen" enthält oder leer ist: 1. **Kontext analysieren:** Durchsuche die aktuelle Konversation nach Erkenntnissen über die Plentymarkets API. Suche nach: - Bugs die durch API-Verhalten verursacht wurden - Workarounds die nötig waren - Timing-/Race-Condition-Probleme - Datenformat-Überraschungen - Statuswechsel-Eigenheiten - Sync-Probleme 2. **Bestehende Einträge lesen:** Lies DOJO.md, ANTI-PATTERNS.md und alle vorhandenen `instances/*.md` Dateien. Prüfe, ob das Learning schon dokumentiert ist. 3. **Klassifizieren:** Entscheide für jedes neue Learning: - **Allgemein** (DOJO.md + ANTI-PATTERNS.md) — betrifft jeden Plenty-Entwickler - **Shop-spezifisch** (instances/.md) — betrifft nur die eigene Konfiguration, Stati, IDs 4. **Eintrag formulieren:** Jeder Eintrag MUSS enthalten: - **Überschrift** mit fortlaufender Nummer - **Lektion** — ein Satz, der das Learning zusammenfasst - **Warum** — was genau passiert ist und warum es ein Problem war - **Pattern** — Codebeispiel wie man es richtig macht - **Anti-Pattern** — Codebeispiel wie man es NICHT macht (wenn sinnvoll) - **Entdeckt** — Datum und kurzer Kontext **WICHTIG:** In geteilten Dateien (DOJO.md, ANTI-PATTERNS.md) niemals konkrete Order-IDs, Kundendaten, Auftragszahlen, Projektnamen oder shop-spezifische Mengen nennen. Stattdessen generische Beschreibungen verwenden. 5. **Dem User zeigen:** Zeige den formulierten Eintrag und frage: - "Soll ich das ins Dojo aufnehmen?" - "Ist das allgemein (DOJO.md) oder shop-spezifisch (instances/.md)?" 6. **Eintragen:** Nach Bestätigung den Eintrag in die richtige Datei schreiben. Bei allgemeinen Lektionen auch einen Kurzeintrag in ANTI-PATTERNS.md anlegen. ## Wenn $ARGUMENTS "zeigen" oder "status" enthält: Lies und zeige alle Dojo-Dateien mit einer Zusammenfassung: - Anzahl Einträge pro Datei - Letzte Ergänzung - Kategorien der Einträge ## Wenn $ARGUMENTS "suchen " enthält: Durchsuche alle Dojo-Dateien nach dem Begriff und zeige relevante Einträge. ## Wenn $ARGUMENTS "sync" enthält: Synchronisiere das Dojo-Repo mit dem Remote: ```bash cd git pull --rebase git add DOJO.md ANTI-PATTERNS.md git diff --cached --quiet || git commit -m "dojo: neue Einträge" git push ``` Zeige danach eine kurze Zusammenfassung: neue Einträge von anderen, eigene gepushte Änderungen.