Guard ist eine GitHub-App. Bei jedem Pull Request liest sie die geänderten Dateien, hinterlässt einen Kommentar und eine Prüfung, die fehlschlägt, wenn etwas jetzt behoben werden muss.
Du öffnest einen Pull RequestGuard liest nur die geänderten Dateien.Die Regeln laufenGeleakte Schlüssel, erfundene Pakete, nachgeahmte Namen und bekannte Schwachstellen.Ein Kommentar, eine PrüfungDie Prüfung schlägt nur fehl, wenn etwas jetzt behoben werden muss.Du pushst den FixGuard pusht, mergt und löscht nie etwas. Die Änderung ist deine.Der Kommentar aktualisiert sichDerselbe Kommentar, jetzt ohne Funde, und die Prüfung ist bestanden.
Pull request 57: orders exportfeat/orders-export → main
package.json · src/config.ts+3
keys: Stripe live secret key sk_live_FwIw•••••••• fix now
packages: reqeusts-helper is not on npm fix now
packages: expres looks like express fix this week
yof Guard commented: 2 to fix now, 1 to fix this week✗ check failed
yof Guard commented · edited: nothing to fix in the changed files✓ check passed
03 Schützen · Folgt deinen Regeln
Ein Wächter, der deinen Regeln folgt
Guard ist eine GitHub-App mit einer Regeldatei. Bei jedem Pull Request hinterlässt sie einen Kommentar und eine Prüfung, die fehlschlägt, wenn etwas behoben werden muss. Sie pusht, merged und löscht nie etwas.
So arbeitet yof, mit Beispieldaten
Guardshop-example/shop-web · delete-account → main
Account: delete account endpoint
yof-Guard-Prüfung fehlgeschlagen
Funde2
Jetzt behebenapp/api/account/route.ts:20
Mit dieser Änderung kann jeder Konten löschen.
Vorgeschlagene Änderung. yof übernimmt sie nie für dich.
const { id } = await req.json();+ const user = await currentUser(req);+ if (user?.role !== "admin") return forbidden(); await db.account.delete({ where: { id } });
Diese Woche behebenrequirements.txt · example-http-kit 0.52.1
Ein Paket auf die sichere Version bringen
.yof.yml
Deine RegelnAusgewogen
Code6
Pakete3
ignoredocs/**
Deine Regeldatei.yof.yml legt das Profil fest und was übersprungen wird. CLI und Guard lesen beide diese Datei.
Drei ProfileLocker, ausgewogen oder streng. Ausgewogen ist voreingestellt.
Vor jedem CommitEin Hook prüft, was du committen willst, bevor der Code deinen Computer verlässt.
Bei jedem Pull RequestEin Kommentar, der an Ort und Stelle aktualisiert wird, und eine Prüfung, die fehlschlägt, wenn etwas behoben werden muss.
Nie von selbstKein Push, kein Merge, kein Löschen. Du entscheidest.