# Testbericht — Klotzkette German Legal Skills **Erstellt:** 2026-05-20 **Stand des Repos:** Commit `7f7bdf5` (v2.0.3) **Plugins gesamt:** 52 **Skills gesamt:** 361 **Validatoren:** `validate-plugin-structure` OK, `validate-release-zips` OK (52 Plugin-ZIPs) ## Macro-Zustand | Kennzahl | Wert | |---|---| | Plugin-Manifests gültig (JSON, Semver, ≤ 300 Zeichen Description) | 52 / 52 | | SKILL.md-Frontmatter gültig (nur `name` + `description`) | 361 / 361 | | Description ≤ 1024 Zeichen | 361 / 361 | | Keine Zahl-Komma-Zahl-Sequenz in Description | 361 / 361 | | Keine XML-Klammern in Description | 361 / 361 | | `name` matched Verzeichnis | 361 / 361 | | Code-Blöcke alle geschlossen | 361 / 361 | | README erwähnt alle Plugins | 52 / 52 | | ZIP-Größen unter 10-MB-Limit | 52 / 52 (Max 1016 KB) | | Intra-Plugin-Skill-Refs aufgelöst | 133 / 133 | | Skill-Body-Median | 6140 Bytes | | Skill-Body-Streuung | 1488 – 24933 Bytes (Faktor 17) | | Unique Keywords | 483 | | Unique EuGH-Aktenzeichen | 20+ in Skills | **Macro-Befund:** Alle Validatoren grün, keine Upload-Blocker. Beanstandungen unten sind **inhaltlich/qualitativ**, keine Cowork-Blocker. --- ## Die 20 schlimmsten Befunde ### Rang 1 — 32 Verweise auf nicht-mitgelieferte Reference-Dateien `references/zitierweise.md` wird aus **30+ Skills** in 10+ Plugins referenziert (`vertragsrecht`, `datenschutzrecht`, `gewerblicher-rechtsschutz`, `regulatorisches-recht`, `kanzlei-builder-hub`, weitere). Die Datei existiert **nur im Repo-Root**, nicht in den einzelnen Plugin-ZIPs. Bei Solo-Installation eines Plugins in Cowork ist der Verweis **broken**. Workaround durch User: zusätzlich `zitierweise-deutsches-recht` installieren — aber das ist nicht dokumentiert. ### Rang 2 — 12 Plugins ohne `license`-Feld Inkonsistente Lizenzierung. 40 Plugins haben `"license": "Apache-2.0 OR MIT"`, **12 haben kein license-Feld**: - `kanzlei-builder-hub`, `regulatorisches-recht`, `rechtsberatungsstelle`, `datenschutzrecht`, `jurastudium`, `gewerblicher-rechtsschutz`, `arbeitsrecht`, `produktrecht`, `gesellschaftsrecht`, `ki-governance`, `vertragsrecht`, `prozessrecht`. Für Drittnutzer rechtsunsicher (keine explizite Lizenzgewährung). ### Rang 3 — 9 Skills referenzieren Output-Dateien mit Umlauten (beA-Konflikt) Das Plugin `anlagen-zu-schriftsaetzen` fordert explizit „**Datei-Benennung beA-tauglich: keine Umlaute**". Mehrere Skills produzieren aber Output-Dateinamen mit Umlauten: - `kanzlei-cowork/skills/mandantenakte-anlegen/SKILL.md`: Standardordner `03_schriftsätze/` - `kanzlei-cowork/skills/versand-vor-check/SKILL.md`, `bea-versand-pruefen`, `posteingang-ausgang`: Pfad `mandate//03_schriftsätze/` - `fluggastrechte/skills/ticket-und-fluginformationen-erfassen/SKILL.md`: `nächste-schritte.md` - `fluggastrechte/skills/ausnahmen-aussergewoehnliche-umstaende-pruefen/SKILL.md`: `außergewöhnlich-prüfung.md` - `fortbestehensprognose/skills/ausloesendes-ereignis-erfassen/SKILL.md`: `auslösendes-ereignis.yaml` - `fortbestehensprognose/skills/patronatserklaerung-extern-hart-erzeugen/SKILL.md`: `patronatserklärung-extern-hart.docx` - `fortbestehensprognose/skills/stundungsanfrage-glaeubiger/SKILL.md`: `stundungsanfrage-.docx` - `liquiditaetsplanung/skills/liquiditaetsvorschau-3-6-12-monate/SKILL.md`: `liquiditäts-artefakt--KW.md` - `liquiditaetsplanung/skills/liquiditaetsvorschau-3wochen/SKILL.md`: gleiches Template - `kanzlei-cowork/skills/fristenbuch-fuehren/SKILL.md`: `fristen-übersicht.md` - `kanzlei-builder-hub/skills/playbook-aus-eigenen-daten/SKILL.md`: `kündigungsschutz-arbeitnehmer.playbook.md` / `.fristen.yaml` - `immobilienrechtspraxis/skills/vertragserstellung-musterbasiert/SKILL.md`: `Manuelle_Prüfung.md` ### Rang 4 — Cross-Plugin-Abhängigkeiten nicht dokumentiert `sozialrecht-kanzlei` referenziert `kanzlei-cowork/versand-vor-check`. `fortbestehensprognose` referenziert `liquiditaetsplanung/liquiditaetsvorschau-3-6-12-monate`. **Plugin-Manifests** enthalten kein `dependencies`-Feld. User installiert Solo-Plugin und wundert sich, dass Skill-Verweis ins Leere geht. ### Rang 5 — `fundstellenglattzieher` (kanzlei-builder-hub) hat 6× Verweis auf nicht existente `references/zitierweise.md` Der Skill validiert Zitierweise gegen ein Reference-Dokument, das im Plugin-ZIP nicht enthalten ist. Lauffähig nur wenn `zitierweise-deutsches-recht` parallel installiert ist. Ohne dies nutzt der Skill ein imaginäres Dokument als Grundlage. ### Rang 6 — Skill-Längen-Streuung Faktor 17 Median 6140 Bytes. Kürzester Skill 1488 Bytes (`mietrecht/mietspiegel-quellen` — nur Trampolin zur Referenz), längster 24933 Bytes (`arbeitsrecht/interne-untersuchung`). Bei stark schwankender Qualität: kurze Skills fehlen oft an Konkretheit (z. B. die 17 `fachanwalt-*`-Light-Touch-Skills mit je ~2000 Bytes). ### Rang 7 — Inkonsistente Versionsnummern in plugin.json vs Repo-Tag Repo-Tag ist v2.0.x. Plugin-Manifests stehen aber bei 0.1.0 für die meisten neuen Plugins, 0.2.1 für `liquiditaetsplanung`. Keine erkennbare Strategie. Bei Update über `release-plugin-zips.yml` springt der Repo-Tag, die einzelnen Plugin-Versionen bleiben rückständig. ### Rang 8 — 17 nahezu identische `fachanwalt-*`-Light-Touch-Plugins Familienrecht, Strafrecht, Verkehrsrecht, Versicherungsrecht, Verwaltungsrecht, Bau-Architektenrecht, Erbrecht, Medizinrecht, Urheber-Medienrecht, IT-Recht, Bank-Kapitalmarktrecht, Internationales Wirtschaftsrecht, Migrationsrecht, Vergaberecht, Transport-Speditionsrecht, Agrarrecht, Sportrecht — alle mit einem einzigen Skill `fachanwalt-orientierung` (~2000 Bytes). 17 Marketplace-Einträge für wenig differenzierten Inhalt. Marketplace-Rauschen. ### Rang 9 — `liquiditaetsplanung` Plugin-Description nur 112 Zeichen Andere Plugin-Descriptions sind 270–300 Zeichen. `liquiditaetsplanung` ist das größte Power-Plugin (1 MB ZIP, 5 Pflichtassets, 3 Skills) — die kurze Description liefert nicht genug Trigger-Worte. ### Rang 10 — Reference-Sync-Risiko (mehrere identische Kopien) `references/zitierweise.md` existiert in **drei** Versionen: - `references/zitierweise.md` (Repo-Root) - `zitierweise-deutsches-recht/references/zitierweise.md` - (Plus impliziert in `methodenlehre-buergerliches-recht/references/methodik-buergerliches-recht.md` mit Kreuzverweisen) Ohne automatischen Sync-Hook (es gibt `scripts/sync-references.py`, aber kein CI-Pre-Commit) divergieren die Versionen schleichend. ### Rang 11 — Mietspiegel-Skill ist reines Trampolin (1488 Bytes) `mietrecht/skills/mietspiegel-quellen/SKILL.md` ist der **kürzeste Skill im Repo**. Er sagt im Wesentlichen "siehe references/mietspiegel-quellen.md". Aber die Reference selbst ist 828 Zeilen — der Skill könnte intelligenter sein (z. B. konkretes Heraussuchen für eine Adresse). ### Rang 12 — Inkonsistente Slash-Command-Verweise Manche Skills sagen `/:kaltstart-interview`, andere `Skill \`kaltstart-interview\``, andere `den Skill kaltstart-interview`. Cowork-Slash-Resolution funktioniert nur mit `/:` Schreibweise. Cross-Plugin-Verweise im Backtick-Format fühlen sich kaputt an. ### Rang 13 — Plugin-Manifest ohne `homepage` bei einigen Plugins Stichprobe zeigt 49/52 mit `https://github.com/Klotzkette/claude-fuer-deutsches-recht`, einige ohne — bei Marketplace-Anzeige fehlt der Klick-Link. ### Rang 14 — 29 Plugins ohne `kaltstart-interview` Bei 17 Light-Touch-`fachanwalt-*` macht das Sinn (nur 1 Orientierungs-Skill). Aber **12 weitere Plugins** mit mehreren Skills haben keinen Kaltstart-Interview-Setup-Skill: - `liquiditaetsplanung` (3 Skills) - `fortbestehensprognose` (15 Skills) — **hat tatsaechlich einen**, aber `kanzlei-cowork`, `mietrecht`, `verfassungsrecht`, `immobilienrechtspraxis`, `tabellenreview-3d`... — Inkonsistenz. ### Rang 15 — `prozessrecht/skills/anpassen/SKILL.md` mit 1794 Bytes verdächtig kurz Erscheint im "kürzeste Skills"-Set. Möglicherweise Stub, der nie vervollständigt wurde. ### Rang 16 — Plugin-Description Trigger-Worte nicht systematisch Manche Plugin-Descriptions sind Liste von Hauptgesetzen ("BGB §§ 558d ff."), andere Marketing-Stil ("Vollassistenz fuer ..."). Trigger-Suche durch Claude ist daher inkonsistent. ### Rang 17 — Konvention "Pflichtanlage zur Mandatsuebergabe" nicht standardisiert Mehrere Skills erzeugen "Beleganhang" / "Audit-Trail" / "Pruefer-Paket" — aber jeder mit eigenem Schema. Plugin-übergreifende Standardisierung wäre Mehrwert. ### Rang 18 — `Praeambel` (5 Mal in fortbestehensprognose-Mustervorlagen) statt `Präambel` Inkonsistenz mit dem Umlaut-Restoration-Sweep — die Mustervorlagen für Patronatserklärung, Forderungsverzicht, Rangrücktritt haben "Praeambel" als ASCII. ### Rang 19 — Anrede-Inkonsistenz Sie/Du innerhalb von Skills Manche Skills mischen "Sie" (formell zum Mandanten) und "Du" (direkt zu Claude) im selben Body — verwirrend. ### Rang 20 — Keine README-Pflege je Plugin Manche Plugins (`liquiditaetsplanung`, `forderungsmanagement-klagewerkstatt`) haben ein eigenes README.md, die meisten nicht. Inkonsistent. --- ## Die 20 besten Verbesserungsvorschläge ### 1. License-Feld nachziehen (Aufwand: 5 min) 12 Plugin-Manifests um `"license": "Apache-2.0 OR MIT"` ergänzen. ### 2. Output-Dateinamen konsequent ASCII (Aufwand: 30 min) Ein einmaliger Sweep über Skills mit Umlauten in Backtick-Filenamen: `03_schriftsätze/` → `03_schriftsaetze/`, `nächste-schritte.md` → `naechste-schritte.md`, `auslösendes-ereignis.yaml` → `ausloesendes-ereignis.yaml`. Damit ist die im `anlagen-zu-schriftsaetzen`-Plugin selbst proklamierte beA-Konvention konsequent. ### 3. Repo-Root-Reference-Verweise durch Plugin-Hinweis ersetzen (Aufwand: 1 h) In Skills die `references/zitierweise.md` aufrufen: ersetzen durch "Hauszitierweise: nach den Vorgaben des Plugins `zitierweise-deutsches-recht` (gesondert empfohlen)" — dann ist der Skill auch in Solo-Installation kohärent. ### 4. `dependencies`-Liste in Plugin-Manifests einführen (Aufwand: 2 h) Erweitern um Feld `recommended_companions: ["kanzlei-cowork", "zitierweise-deutsches-recht"]`. Cowork ignoriert das Feld, aber Mensch-Reader sieht die Abhängigkeiten. ### 5. CI-Hook gegen broken Pfad-Verweise (Aufwand: 1 h) `scripts/validate-plugin-structure.mjs` um Check erweitern, der jeden Backtick-Pfad gegen tatsächlich existierende Dateien prüft. Verhindert Wiederkehr der bisher gefixten Bugs. ### 6. `liquiditaetsplanung` Plugin-Description erweitern (Aufwand: 10 min) Von 112 auf ~280 Zeichen ausbauen — BGH-Schema, Padlet, Excel-Export erwähnen. ### 7. CI-Sync für identische Reference-Dateien (Aufwand: 30 min) `scripts/sync-references.py` als Pre-Commit-Hook konfigurieren, damit Divergenzen zwischen `references/zitierweise.md` (Root) und `zitierweise-deutsches-recht/references/zitierweise.md` (Plugin-Kopie) immer aufgelöst werden. ### 8. Plugin-Versionen synchron zum Repo-Tag (Aufwand: 30 min) Bei jedem Release-Tag (z. B. v2.1.0) alle 52 `plugin.json` automatisch auf dieselbe Version setzen. Konsistenz für Marketplace-Anzeige. ### 9. 17 `fachanwalt-*`-Plugins zu einem konsolidieren (Aufwand: 4 h) Ein einziges `fachanwaltschaften-orientierung`-Plugin mit 17 Sub-Skills (`fachanwalt-orientierung-familienrecht`, …). Marketplace-Last drastisch reduziert, Maintenance einfacher. ### 10. Kaltstart-Interview-Skill für Mehr-Skill-Plugins nachziehen (Aufwand: 2 h) `kanzlei-cowork`, `mietrecht`, `verfassungsrecht`, `tabellenreview-3d`, `immobilienrechtspraxis` haben mehrere Skills, aber keinen Setup-Skill. Standardvorlage existiert (z. B. aus `sozialrecht-kanzlei`). ### 11. Plugin-Bundles im Marketplace einführen (Aufwand: 1 h) Marketplace-Eintrag pro thematisches Bundle: "Sozialrechtskanzlei-Komplett" = `sozialrecht-kanzlei + kanzlei-cowork + zitierweise-deutsches-recht + methodenlehre-buergerliches-recht`. Solo-Installation eines Bundles statt vier einzelner Plugins. ### 12. Mietspiegel-Skill konkret aufwerten (Aufwand: 2 h) Statt nur Verweis-Trampolin: konkrete Schritt-für-Schritt-Anleitung "Adresse eingeben → richtigen Mietspiegel finden → Spanne ablesen → ortsuebliche Vergleichsmiete bestimmen". Der Reference-Inhalt liegt schon vor. ### 13. Plugin-Description-Stil standardisieren (Aufwand: 3 h) Drei-Teile-Schema: (1) Was tut das Plugin, (2) Hauptgesetze/Standards, (3) Trigger-Worte. Pro Plugin ~280 Zeichen. Verbessert sowohl Marketplace-Anzeige als auch Claude-Trigger-Treffsicherheit. ### 14. Slash-Command-Konvention durchgängig nutzen (Aufwand: 1 h) Cross-Plugin-Verweise nur als `/:` schreiben. Intra-Plugin-Verweise nur als `\`skill-name\``. Damit ist die Resolution maschinell prüfbar. ### 15. Testakten verlinken in Skill-Bodies (Aufwand: 1 h) `testakten/sozialrecht-rollstuhl-tannenberg/`, `testakten/fluggastrechte-familie-braeutigam/` etc. Skills könnten in einer „Beispiel"-Sektion auf die jeweilige Testakte verweisen — sofortige Anschauung. ### 16. CHANGELOG je Plugin (Aufwand: 2 h einmal, dann Pflege) Statt Repo-CHANGELOG: ein kurzer Eintrag in jedem Plugin-Verzeichnis als `CHANGELOG.md` mit Datum + was sich geändert hat. Wichtiger Audit-Beleg bei Mandantsplanung. ### 17. Reference-Datum-Header in allen Referenzen (Aufwand: 30 min) Jede `references/*.md` bekommt Header: "Stand: 2026-05, naechste Pruefung: 2026-08". Bei rollenden Gesetzesaenderungen prüfbarer Audit-Trigger. ### 18. `homepage`-Feld in allen Manifests einheitlich setzen (Aufwand: 10 min) GitHub-URL bei jedem Plugin-Manifest gleich. Marketplace-Anzeige mit Klick-Link auf Repo. ### 19. Inkonsistenz „Praeambel/Präambel" und vergleichbare Restwoerter bereinigen (Aufwand: 30 min) Letzter feiner Sweep nach dem Umlaut-Sweep — die fünf "Praeambel"-Vorkommen in fortbestehensprognose-Vertragstemplates zu "Präambel" konvertieren. Hauptanwendung ist Fließtext. ### 20. Skill-Längen-Korridor (Aufwand: kontinuierlich) Soft-Konvention: kein Skill kürzer als 3000 Bytes, keiner länger als 15000 Bytes. Zu kurze Skills (Stubs) vertiefen, zu lange (Monolithen) splitten. Konsistenz für User-Erwartung. --- ## Zusammenfassung **Hartes Befundbild:** 52 Plugins, 361 Skills, alle Validatoren grün — **kein Upload-Blocker**. **Weiches Befundbild:** Die Plugin-Sammlung ist breit aufgestellt, mit klarer Plugin-Granularität (außer den 17 `fachanwalt-*`-Light-Touch-Klonen, die konsolidierungsreif sind). Die größten Qualitätshebel liegen in Konsistenz (License-Felder, Slash-Command-Schreibweise, Output-Dateinamen-Konvention) und in der Sichtbarmachung von Cross-Plugin-Abhängigkeiten. **Top-3-Priorität für die nächste Iteration:** 1. License-Feld nachziehen (Rang 2 → Vorschlag 1) 2. Output-Dateinamen ASCII (Rang 3 → Vorschlag 2) 3. Repo-Root-Reference-Verweise abkoppeln (Rang 1 + 5 → Vorschlag 3)