GitHub Hygiene

Erzwingt GitHub-Contributor-Beschränkungen und standardisierte [XX]-Commit-Nachrichten-Konventionen. Verwende diese Regel immer, wenn die Aufgabe GitHub- oder Git-Operationen umfasst – Commits, Amendments, Pushs, Pull-Requests, Branches, Collaborators, Repository-Einstellungen oder Workflows.

Was ist GitHub Hygiene?

Dieser Skill, „GitHub Hygiene“, ist eine umfassende Regeldatei für KI-Code-Agenten (wie Claude Code, Cursor, Codex, ChatGPT), die festlegt, wie Git- und GitHub-Operationen ausgeführt werden sollen. Er verhindert, dass der Code-Agent als Contributor oder Collaborator zu einem Repository hinzugefügt wird, und untersagt jegliche KI-Attribution in Commit-Nachrichten (weder als Autor, Co-Autor noch als Generator). Stattdessen wird die bestehende menschliche Identität des Benutzers verwendet. Zudem schreibt der Skill ein standardisiertes Commit-Nachrichten-Format mit vordefinierten zweistelligen Großbuchstaben-Präfixen (z. B. [FT] für Feature, [FX] für Fix) vor, die den Änderungstyp kennzeichnen. Der Skill gilt für alle gängigen KI-Code-Agent-Plattformen und stellt sicher, dass vor dem Pushen, Erstellen von Pull Requests oder Ändern von Repository-Berechtigungen eine Reihe von Prüfungen durchgeführt werden. Er ist als deterministisches Regelwerk konzipiert, um Sicherheit, Reproduzierbarkeit und die Einhaltung von Open-Source-Best-Practices zu gewährleisten, und enthält eine abschließende Checkliste zur Überprüfung aller Anforderungen.

Funktioniert mit~Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/BranchCrypto/agent-skills/tree/HEAD/skills/engineering/github-hygiene

Installed? Explore more Produktivität & Zusammenarbeit skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht GitHub Hygiene?

Wende diese Regeln bei jeder GitHub- oder Git-Operation an, unabhängig von Repository, Branch oder Aufgabenkontext.

Verwendung

Wende die Regel an, wenn die Aufgabe eine der folgenden Tätigkeiten umfasst:

  • Erstellen oder Ändern von GitHub-Repositories
  • Klonen oder Arbeiten mit Git-Repositories
  • Erstellen, Ändern oder Pushen von Commits
  • Erstellen oder Aktualisieren von Pull Requests
  • Verwalten von Branches, Workflows, Collaborators oder Repository-Einstellungen
  • Jede andere Operation, die ein GitHub-Repository ändert oder mit ihm interagiert

1. Code-Agent-Contributor-Beschränkungen

Füge den Code-Agenten niemals als GitHub-Contributor oder -Collaborator hinzu.

Nicht erlaubt:

  • Ein KI-/Code-Agent-Konto als Repository-Collaborator einladen
  • Ein KI-/Code-Agent-Konto zu einer GitHub-Organisation oder einem Repository hinzufügen
  • Repository-Berechtigungen für ein KI-/Code-Agent-Konto gewähren
  • Repository-Berechtigungen ändern, um ein KI-/Code-Agent-Konto zum Contributor zu machen
  • Ein dediziertes KI-Agent-GitHub-Konto als Contributor-Identität erstellen oder verwenden

Dies gilt für alle KI-/Code-Agent-Identitäten, einschließlich Cursor, Codex, ChatGPT, andere KI-Code-Agenten, automatisierte Code-Bots und jedes Konto, dessen Zweck es ist, den Code-Agenten zu repräsentieren.

Arbeite mit der bestehenden Git/GitHub-Identität des Benutzers, es sei denn, der Benutzer fordert ausdrücklich eine andere menschliche Identität an.

2. Commit-Autor- und Identitätsbeschränkungen

Commits dürfen den Code-Agenten nicht als Autor, Co-Autor oder Generator ausweisen.

Füge keine KI-Agenten-Zuschreibung im Commit-Betreff, -Text, in den Trailern, in den Git-Autor-Metadaten oder in den Git-Committer-Metadaten hinzu.

Verboten, sofern nicht explizit durch die bestehende Repository-Konfiguration des Benutzers erforderlich und sicher änderbar:

Co-authored-by: Cursor
Co-authored-by: Codex
Co-authored-by: ChatGPT
Generated-by: AI
Generated-by: Codex
Generated-by: Cursor
AI-generated
Generated with Cursor
Generated with Codex
Generated with ChatGPT

Konfiguriere die Git-Identität nicht absichtlich so, dass sie den Code-Agenten repräsentiert.

3. Commit-Nachrichten-Format

Sofern der Benutzer nicht explizit ein anderes Format angibt, muss jede Commit-Nachricht dem folgenden Format folgen:

[xx]xxxxx

Wobei:

  • xx ein vordefiniertes zweistelliges Großbuchstaben-Präfix ist
  • Das Präfix in eckigen Klammern steht
  • Auf das Präfix unmittelbar eine prägnante Commit-Beschreibung folgt
  • Die Beschreibung den primären Zweck der Änderung erklärt
  • Kein KI-Agenten-Name, keine Zuschreibung oder nicht zusammenhängende Metadaten hinzugefügt werden

Erlaubt

[FT]add user authentication
[FX]fix token expiration
[FE]update login page
[BE]add user service
[AP]add auth endpoint
[DB]add user table
[TS]add authentication tests
[RF]simplify auth middleware
[CI]update github workflow
[DC]update api documentation

Verboten

update login page
AI: update login page
[AI]add authentication
[Cursor]fix login bug
[Codex]add api endpoint
[FT] Generated with Codex
Co-authored-by: Codex

4. Vordefinierte Commit-Präfixe

Maßgebliche Standard-Präfix-Liste:

[FE] Frontend
[BE] Backend
[AP] API
[DB] Database
[UI] UI
[CF] Config
[CI] CI/CD
[TS] Test
[DC] Docs
[RF] Refactor
[FX] Fix
[FT] Feature
[OP] Optimize
[SC] Security
[DP] Dependency
[CH] Chore

Auswahlregeln

Sofern der Benutzer nicht explizit ein anderes Präfix angibt:

  1. Verwende wann immer möglich ein vordefiniertes Präfix
  2. Erfinde niemals ein neues Präfix
  3. Ändere niemals die Schreibweise oder Groß-/Kleinschreibung eines vordefinierten Präfixes
  4. Verwende genau zwei Großbuchstaben innerhalb der Klammern
  5. Wähle das Präfix basierend auf dem primären Zweck der Änderung
  6. Wenn mehrere Präfixe in Frage kommen, wähle dasjenige, das den primären Zweck am besten repräsentiert
ÄnderungstypPräfix
Neue Funktionalität[FT]
Fehlerbehebung[FX]
Frontend-Implementierung[FE]
Backend-Implementierung[BE]
API-Änderungen[AP]
Datenbankänderungen[DB]
Nur UI-Änderungen[UI]
Konfigurationsänderungen[CF]
CI/CD-Änderungen[CI]
Tests[TS]
Dokumentation[DC]
Refactoring ohne Verhaltensänderung[RF]
Leistungsoptimierung[OP]
Sicherheitsrelevante Änderungen[SC]
Abhängigkeitsänderungen[DP]
Allgemeine Wartung[CH]

5. Vom Benutzer angegebenes Präfix hat Vorrang

Die vordefinierte Präfix-Liste ist der Standard, keine absolute Einschränkung.

Wenn der Benutzer explizit ein anderes Commit-Präfix oder Commit-Format angibt, folge der expliziten Anweisung des Benutzers.

Beispiel: Benutzer sagt „Verwende [HOT] für diesen Commit.“ → verwende [HOT]fix production issue.

  • Ersetze das vom Benutzer explizit angeforderte Präfix nicht durch ein vordefiniertes Präfix
  • Wenn der Benutzer kein Präfix angibt, verwende die vordefinierte Liste
  • Wenn der Benutzer nur die Beschreibung angibt, wähle das passende vordefinierte Präfix

6. Commit-Beschreibung

Die Beschreibung nach dem Präfix sollte:

  • Prägnant und spezifisch sein
  • Auf Englisch verfasst sein, es sei denn, der Benutzer fordert explizit eine andere Sprache
  • Die tatsächliche Änderung beschreiben
  • Frei von KI-Agenten-Zuschreibung sein

Bevorzugt:

[FX]fix expired access token handling
[FT]add password reset endpoint
[FE]update account settings page
[RF]simplify request validation

Vermeiden:

[FX]fix stuff
[FT]changes
[RF]update code
[BE]AI generated backend changes

7. Commit-Bereich (Scope)

Bevorzuge nach Möglichkeit eine logische Änderung pro Commit.

Wenn eine Aufgabe mehrere unzusammenhängende Änderungen enthält:

  • Erfinde keine einzige irreführende Commit-Beschreibung
  • Bevorzuge nach Möglichkeit separate Commits
  • Wähle das Präfix für jeden Commit unabhängig aus
  • Halte jede Commit-Nachricht repräsentativ für ihren tatsächlichen Inhalt

Wenn der Benutzer explizit einen einzelnen Commit anfordert, folge dieser Anweisung und wähle das Präfix, das den primären Zweck der kombinierten Änderung am besten repräsentiert.

8. Vor-Commit-Prüfung

Vor dem Erstellen eines Commits überprüfen:

Identität

  • Git-Autor ist die konfigurierte Identität des Benutzers
  • Git-Committer ist keine KI-/Code-Agenten-Identität
  • Es wird keine KI-Agenten-Zuschreibung hinzugefügt

Nachricht

  1. Beginnt mit einem gültigen Präfix
  2. Verwendet ein vordefiniertes Präfix, es sei denn, der Benutzer hat explizit ein anderes angegeben
  3. Verwendet für ein Standard-Präfix genau zwei Großbuchstaben
  4. Präfix ist in [] eingeschlossen
  5. Enthält eine prägnante Beschreibung nach dem Präfix
  6. Enthält keine Erwähnung von Cursor, Codex, ChatGPT, KI-Agent oder einer ähnlichen Agentenidentität
  7. Enthält keine verbotenen Zuschreibungs-Trailer

GitHub-Berechtigungen

Vor dem Ändern von Repository-Berechtigungen oder Collaborators:

  • Überprüfen, ob das Ziel keine KI-/Code-Agenten-Identität ist
  • Dem Code-Agenten niemals Contributor- oder Collaborator-Zugriff gewähren

9. Push- und GitHub-Operationen

Vor dem Pushen von Commits:

  • Sicherstellen, dass Commit-Nachrichten dieser Regel entsprechen
  • Sicherstellen, dass Commits keine verbotene KI-Zuschreibung enthalten
  • Sicherstellen, dass der Code-Agent nicht als GitHub-Contributor hinzugefügt wurde
  • GitHub-Berechtigungen nicht nur ändern, um den Agentenbetrieb zu ermöglichen

Wenn ein vorhandener Commit gegen diese Regeln verstößt und der Benutzer darum bittet, ihn zu pushen, behebe den Verstoß vor dem Pushen, wenn dies sicher und mit dem vom Benutzer gewünschten Workflow vereinbar ist.

Bei bereits in einen gemeinsamen/öffentlichen Branch gepushten Commits nicht automatisch die Geschichte umschreiben. Frage den Benutzer vor:

git commit --amend
git rebase
git reset --hard
git push --force
git push --force-with-lease

10. Pull Requests

Beim Erstellen oder Aktualisieren eines Pull Requests:

  • Den Code-Agenten nicht als Contributor identifizieren
  • Keine KI-Agenten-Zuschreibung hinzufügen, es sei denn, der Benutzer fordert dies explizit an
  • PR-Titel und -Beschreibung auf die tatsächlichen Änderungen konzentrieren
  • Der PR-Vorlage des Repositories folgen, falls eine vorhanden ist
  • Repository-Berechtigungen nicht ändern, um einen PR zu erstellen oder zu aktualisieren

11. Konfliktlösung

Wenn eine andere Anweisung auf Repository-Ebene, eine Projektregel oder eine Benutzeranweisung mit dieser Regel in Konflikt steht:

  1. Der Anweisung mit höherer Priorität folgen
  2. Wenn der Benutzer explizit ein Commit-Präfix oder Commit-Format angibt, der expliziten Anfrage des Benutzers folgen
  3. Ansonsten die vordefinierte Präfix-Liste und das Commit-Format dieser Regel verwenden
  4. Den Code-Agenten niemals als GitHub-Contributor hinzufügen

Keine alternative Regel im Stillen erfinden.

12. Abschließende Durchsetzungs-Checkliste

Vor Abschluss einer GitHub-bezogenen Aufgabe:

[ ] Code-Agent wurde nicht als GitHub-Contributor hinzugefügt.
[ ] Code-Agent wurde nicht als GitHub-Collaborator hinzugefügt.
[ ] Git-Autor ist keine KI-Agenten-Identität.
[ ] Git-Committer ist keine KI-Agenten-Identität.
[ ] Commit-Nachricht folgt standardmäßig [xx]xxxxx.
[ ] Standard-Präfix stammt aus der vordefinierten Liste.
[ ] Vom Benutzer angegebenes Präfix hat Vorrang vor der vordefinierten Liste.
[ ] Commit-Nachricht enthält keine KI-Agenten-Zuschreibung.
[ ] Commit-Trailer enthalten keine KI-Agenten-Zuschreibung.
[ ] GitHub-Operationen ändern nicht unnötig Repository-Berechtigungen.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Verwandte Skills