Skip to content

Einstieg

Wegweiser durch die Doku zum Schreiben eigener CodeCharter-Regeln.

Eigene Regeln sind das, was CodeCharter vom statischen Checker zum Team-Tool macht. Wo Sie anfangen, hängt davon ab, wie tief Sie schon im Thema sind.

Erstes Mal eine eigene Regel schreiben

Erste eigene Regel im Quick-Start führt Sie durch den kompletten Workflow: Datei anlegen, validieren, in ./rules/ legen, laufen lassen. Wenn Sie einfach eine lauffähige Ausgangsbasis zum Ausprobieren möchten, legt codecharter init das rules/-Verzeichnis mit zwei Beispiel-.ccr-Dateien für Sie an. Ältere .cgr-Dateien von vor der Umbenennung zu CodeCharter werden weiterhin aus Kompatibilitätsgründen gelesen.

Die DSL kennenlernen

Hello-World-DSL ist die kleinstmögliche sinnvolle Regel, Zeile für Zeile erklärt. Danach lohnt sich Datei-Struktur zum Aufbau des rules/-Verzeichnisses und Syntax-Übersicht als kompakte Sprach-Referenz.

Regeln testen

codecharter test führt .spec.md-Spec-Dateien mit erwarteten Treffern und Nicht-Treffern gegen eine Regel aus, mit CI-tauglichen Exit-Codes. codecharter test <regel>.ccr --scaffold erzeugt eine Starter-Spec neben der Regel-Datei.

Tiefer einsteigen

Wenn Sie schon mit der DSL vertraut sind, sind die nächsten vier Seiten interessant:

  • DSL-Grammatik: Grammatik-Referenz in EBNF-naher Notation, wenn Sie genau wissen wollen, was der Parser akzeptiert.
  • Prädikat-Katalog: vollständige Liste aller Properties pro Code-Modell-Entität.
  • Regel-Beispiele: Galerie fertig komponierter Regeln, nach Use-Case sortiert.
  • KI-gestütztes Regel-Authoring: wie der KI-Assistent im Editor Regeln und Specs schreibt und gegen Spec-Läufe härtet.

Offline-Zugriff auf diese Dokumentation

Die Referenz zum Regelschreiben steckt auch direkt in der CLI, Sie können sie also im Terminal lesen, ohne einen Browser zu öffnen. codecharter docs listet die vier verfügbaren Themen auf (getting-started, dsl-grammar, predicates, rule-examples), codecharter docs <thema> gibt das Thema aus. Themennamen werden tolerant aufgelöst, ein eindeutiger Präfix oder ein kleiner Tippfehler reicht aus:

codecharter docs predicates
codecharter docs dsl --format plain

--format steuert die Ausgabe: md (Standard, rohes Markdown), plain (Markdown-Formatierung entfernt) oder json (Thema und Inhalt als JSON-Objekt, praktisch für Tooling).

Editor- und KI-Unterstützung

Die VS-Code-Extension bringt Syntax-Highlighting und Auto-Vervollständigung für .ccr-Dateien mit. Wenn Sie Regeln mit einem KI-Assistenten schreiben, beschreibt MCP-Regel-Authoring den MCP-Server und seine Authoring-Tools (validate_rule, scaffold_rule, dry_run_rule, test_rule_spec).

Regeln mit dem Team teilen

Fertige Regeln verteilen Sie über Plattform-Profile. Lokale Regeln importieren zeigt, wie Sie Ihre .ccr-Dateien mit codecharter push hochladen.

Konventionen für gute Regeln

Best Practices behandelt, was gute eigene Regeln von schlechten unterscheidet.