dependency-cruiser · Zyklen · JSON · OpenClaw · Remote Mac · 2026

2026 OpenClaw Frontend-Praxis:
dependency-cruiser-JSON auf Remote Mac parsen, Zyklen-Gate-Summary erzeugen und in den Pull Request mergen

30. April 2026 Frontend / Architektur-Gates ca. 8 Min.

Zielgruppe: Teams, die im Monorepo gerichtete Importe erzwingen und trotzdem einen lesbaren PR-Digest brauchen. Dieser HowTo-Artikel liefert einen festen JSON-Vertragspfad, eine Schwellen-Tabelle für Verletzungsgrade und Modul-Obergrenzen, sechs reproduzierbare Schritte sowie zwei Auslöser: OpenClaw-Gateway oder signiertes Skript. Vertiefung: ESLint- und Stylelint-JSON am Gateway mergen, knip-Cleanup-Summary, Token-scoped Automation. Öffentlich ohne Login: Preise, Hilfe, Kaufen.

00 Einleitung: Warum Roh-JSON nicht in den Pull Request gehört

Wenn dependency-cruiser nur als farbige Konsole läuft, verlieren Reviewerinnen den Kontext zwischen Branches. Schreiben Sie stattdessen immer dieselbe Datei relativ zum Repo-Wurzelverzeichnis und parsen Sie nur diese — dann stimmen Laptop, CI und gemieteter Remote Mac. OpenClaw oder ein schmales Gateway erhält lediglich Pfad, Git-SHA und eine Versionsnummer Ihrer Schwellen-Tabelle, nie das komplette Geheimnisdepot.

Drei wiederkehrende Schmerzpunkte:

  1. Unsteter cwd: unterschiedliche Auflösung von Aliassen und tsconfig-Pfaden erzeugen falsche Zyklen oder blenden echte aus.
  2. Überlange PR-Kommentare: voller Graph-JSON sprengt API-Limits und verwässert neben ESLint- oder Bundle-Hinweisen die Aufmerksamkeit.
  3. Doppelte Bots: parallele Nachtjobs und Pull-Request-Events feuern zweimal — ohne Marker und Idempotency entsteht Spam statt Governance.

01 Entscheidungsmatrix: zentrales Gateway oder direktes Skript

Die folgende Matrix hilft bei der Auswahl; beide Varianten können dieselbe Markdown-Vorlage füllen, wenn Eingaben normalisiert sind.

Kriterium OpenClaw-Gateway Skript plus gh pr comment
Geheimnisverwaltung Token bleibt im Dienst; CI sendet nur Pfad und Tabellen-Version. OIDC oder Kurzlebigkeit am Runner nötig; keine Tokens im Markdown-Body.
Merge mehrerer Digest-Blöcke Reihenfolge fixieren und mit Lint-Summary verketten. Clientseitig zusammenbauen oder Marker pro Tool pflegen.
Auditierbarkeit Zentrale Logs und Rate-Limits. Repository-Skripte versionieren; Änderungen über normale Reviews.
Latenz Zusätzlicher Netzwerk-Hop akzeptabel für nächtliche Gates. Geringe Latenz direkt nach depcruise auf demselben Runner.

02 Schwellen: Verletzungsgrade, Zyklenlängen und Modul-Obergrenzen

Übernehmen Sie die Zahlen als Startwerte und dokumentieren Sie jede Änderung mit einer Tabellen-Version im Kommentar-Kopf. So bleibt nachvollziehbar, warum ein früher grüner Branch plötzlich rot wird.

Grad Beispielbedingung Exit-Code
info Keine Zyklen oder ausschließlich Einträge auf der Team-Allowlist. 0
warn Ein bis zwei Zyklen, jeder Zyklus höchstens sechs Module, höchstens acht Tabellenzeilen im PR-Text. 0 mit sichtbarem WARN-Badge im Markdown
error Drei oder mehr Zyklen, ein Zyklus länger als sechs Module, oder mehr als achthundert analysierte Module ohne angepasste Architektur-Regeln. 1 — Merge nach Team-Policy blockieren

Zusätzlich als zitierfähige Leitplanken: höchstens drei Zyklen vollständig im Kommentar tabellieren, pro Kante höchstens drei Pfadsegmente ausgeben, den Rest als Zähler melden. Vollständiges JSON bleibt unter dem Artefakt-Link des Laufs.

03 Sechs reproduzierbare Schritte vom Graph zum mergfertigen Kommentar

  1. Regeln fixieren: no-circular und weitere dependency-cruiser-Regeln in .dependency-cruiser.js versionieren und im README benennen.
  2. JSON schreiben: identischen Befehl in CI und auf dem Remote Mac verwenden, Ausgabe nur in die vereinbarte Datei legen.
  3. Metriken extrahieren: Zyklenanzahl, maximale Ringlänge und Modulzahl des Graphen per jq oder kleinem Node-Programm auslesen.
  4. Markdown bauen: Kurzüberschrift, Schwellen-Version, Tabelle mit den Top-Zyklen, Link zum Artefakt.
  5. Exit-Code setzen: warn lässt die Pipeline grün, error bricht bewusst ab, damit Required-Checks greifen.
  6. Kommentar upserten: HTML-Marker <!-- openclaw-depcruise:SHA --> nutzen und bestehende OpenClaw-Blöcke anhängen statt zu duplizieren.
npx depcruise src --config .dependency-cruiser.js --output-type json --output artifacts/depcruise/graph.json

04 Auslösen: Gateway-Webhook oder Repository-Skript nach dem Artefakt

Gateway: Nach erfolgreichem Schreiben des JSON sendet die Pipeline einen signierten POST mit relativem Pfad, Pull-Request-Identifikator und Schwellen-Version. Der Dienst antwortet mit fertigem Markdown; Hosting-APIs erhalten niemals Roh-JSON. Kombinieren Sie die Ausgabe mit anderen OpenClaw-Digesten, indem Sie die Blockreihenfolge im Gateway festlegen.

Skript: node scripts/depcruise-pr-summary.mjs liest dieselbe Datei und druckt Markdown auf stdout, das Sie an gh pr comment weiterleiten. Triggern Sie nur, wenn die Artefakt-Datei frischer ist als der letzte Marker, und setzen Sie einen Idempotency-Key aus Branch-SHA und Job-Attempt, um Race-Conditions zwischen zwei Runnern zu entschärfen.

05 Kurzfragen im Betrieb

Zeigt das JSON keine Zyklen, scheitert aber dennoch die Policy? Prüfen Sie zweite Ausgabenkanäle wie summary und vergleichen Sie cwd zwischen lokalem Laptop und Remote Mac.

Wird der Kommentar zu lang für Git-Anbieter? Kürzen Sie auf drei Zyklen plus Restmenge; vollständige Daten bleiben im Speicher des CI-Laufs.

Öffentliche Einstiege ohne Anmeldung: Startseite, Preise und Pakete, Hilfe-Center, Mieten und Kaufen, alle Technik-Einblicke.

Remote Mac · Apple Silicon · reproduzierbare Pfade

Zyklen-Gates auf derselben Hardware wie im Team fahren

Mieten Sie einen Remote Mac, spiegeln Sie Repo-Pfade und führen Sie depcruise mit identischer Node-Version wie in CI aus. Preise, Hilfe (SSH/VNC), Kaufen / Mieten — alles öffentlich lesbar.

JSON-Vertrag und Schwellen Ein Kommentar pro SHA Apple Silicon

Für dauerhafte Gate-Last lohnt sich ein gemieteter Remote Mac statt überbuchter Laptops: dieselbe Shell-Historie, identische Artefakt-Pfade und schnelle Iteration an Schwellen — starten Sie über die Preise, wählen Sie Laufzeit und schließen Sie den Vertrag über Kaufen / Mieten ab, bevor Sie die Marker in Produktions-Workflows härten.

Remote Mac für depcruise-Gates