Zurück zu Fähigkeiten

review-pull-request

pjt222
Aktualisiert Yesterday
2 Ansichten
17
2
17
Auf GitHub ansehen
Andereai

Über

Diese Fähigkeit führt umfassende GitHub-Pull-Request-Reviews mithilfe der GitHub CLI durch, analysiert Diffs, Commit-Verläufe und CI/CD-Prüfungen. Sie gibt schweregradbasiertes Feedback (blockierend/Hinweis/Kleinigkeit/Lob) und übermittelt Reviews via gh-pr-review. Nutzen Sie sie, wenn Sie zur Überprüfung eines PRs eingeteilt sind, für Selbstreviews vor dem Einholen von Feedback, für erneute Überprüfungen nach Änderungen oder zur Prüfung gemergter PRs.

Schnellinstallation

Claude Code

Empfohlen
Primär
npx skills add pjt222/agent-almanac -a claude-code
Plugin-BefehlAlternativ
/plugin add https://github.com/pjt222/agent-almanac
Git CloneAlternativ
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/review-pull-request

Kopieren Sie diesen Befehl und fügen Sie ihn in Claude Code ein, um diese Fähigkeit zu installieren

Dokumentation


name: review-pull-request description: > Reviewt einen Pull Request von Ende zu Ende mit der GitHub CLI. Umfasst Diff-Analyse, Commit-Verlaufs-Review, CI/CD-Pruefungsverifizierung, schweregradbasiertes Feedback (blocking/suggestion/nit/praise) und gh-pr-review-Einreichung. Verwenden wenn ein Pull Request zum Review zugewiesen ist, bei einem Selbst-Review vor der Einholung von Feedback anderer, bei einem zweiten Review nach bearbeitetem Feedback oder beim Audit eines zusammengefuehrten PRs. locale: de source_locale: en source_commit: 6f65f316 translator: claude-opus-4-6 translation_date: 2026-03-16 license: MIT allowed-tools: Read Grep Glob Bash WebFetch metadata: author: Philipp Thoss version: "1.0" domain: review complexity: intermediate language: multi tags: review, pull-request, github, code-review, gh-cli, feedback, pr

Pull Request reviewen

Einen GitHub-Pull-Request von Ende zu Ende reviewen — vom Verstaendnis der Aenderung bis zur Einreichung strukturierten Feedbacks. Verwendet gh CLI fuer alle GitHub-Interaktionen und erzeugt schweregradbasierte Review-Kommentare.

Wann verwenden

  • Ein Pull Request ist bereit zum Review und Ihnen zugewiesen
  • Zweites Review nach Bearbeitung des Autorensfeedbacks
  • Eigenen PR vor dem Einfordern von Reviews anderer reviewen (Selbst-Review)
  • Audit eines zusammengefuehrten PRs zur Qualitaetsbewertung nach dem Merge
  • Wenn ein strukturierter Review-Prozess statt ad-hoc-Scanning gewuenscht wird

Eingaben

  • Erforderlich: PR-Bezeichner (Nummer, URL oder owner/repo#number)
  • Optional: Review-Fokus (Sicherheit, Leistung, Korrektheit, Stil)
  • Optional: Vertrautheit mit der Codebasis (vertraut, etwas vertraut, unbekannt)
  • Optional: Zeitbudget fuer das Review (schneller Scan, Standard, ggruendlich)

Vorgehensweise

Schritt 1: Den Kontext verstehen

Die PR-Beschreibung lesen und verstehen, was die Aenderung bewirken soll.

  1. PR-Metadaten abrufen:
    gh pr view <number> --json title,body,author,baseRefName,headRefName,labels,additions,deletions,changedFiles,reviewDecision
    
  2. PR-Titel und -Beschreibung lesen:
    • Welches Problem loest dieser PR?
    • Welchen Ansatz hat der Autor gewaehlt?
    • Gibt es bestimmte Bereiche, die der Autor reviewt haben moechte?
  3. PR-Groesse pruefen und benoetigte Zeit einschaetzen:
PR-Groessen-Leitfaden:
+--------+-----------+---------+-------------------------------------+
| Groesse| Dateien   | Zeilen  | Review-Ansatz                       |
+--------+-----------+---------+-------------------------------------+
| Klein  | 1-5       | <100    | Jede Zeile lesen, schnelles Review  |
| Mittel | 5-15      | 100-500 | Logikaenderungen fokussieren, Config|
|        |           |         | ueberblicken                        |
| Gross  | 15-30     | 500-    | Per Commit reviewen, kritische      |
|        |           | 1000    | Dateien fokussieren, Aufteilung flag|
| XL     | 30+       | 1000+   | Aufteilung empfehlen. Nur kritische |
|        |           |         | Dateien reviewen.                   |
+--------+-----------+---------+-------------------------------------+
  1. Commit-Verlauf reviewen:
    gh pr view <number> --json commits --jq '.commits[].messageHeadline'
    
    • Sind Commits logisch und gut strukturiert?
    • Erzaehlt die Geschichte eine Geschichte (jeder Commit ein koh.aenter Schritt)?
  2. CI/CD-Status pruefen:
    gh pr checks <number>
    
    • Bestehen alle Pruefungen?
    • Wenn Pruefungen fehlschlagen, welche — das beeinflusst das Review

Erwartet: Klares Verstaendnis davon, was der PR tut, warum er existiert, wie gross er ist und ob CI gruen ist. Dieser Kontext praegt den Review-Ansatz.

Bei Fehler: Wenn die PR-Beschreibung leer oder unklar ist, dies als erstes Feedback vermerken. Ein PR ohne Kontext ist ein Review-Anti-Pattern. Wenn gh-Befehle fehlschlagen, Authentifizierung pruefen (gh auth status) und Zugriff auf das Repository sicherstellen.

Schritt 2: Den Diff analysieren

Die tatsaechlichen Codeaenderungen systematisch lesen.

  1. Vollstaendigen Diff abrufen:
    gh pr diff <number>
    
  2. Bei kleinen/mittleren PRs den gesamten Diff sequenziell lesen
  3. Bei grossen PRs per Commit reviewen:
    gh pr diff <number> --patch  # vollstaendiges Patch-Format
    
  4. Fuer jede geaenderte Datei bewerten:
    • Korrektheit: Tut der Code, was der PR vorgibt?
    • Grenzfaelle: Werden Randbedingungen behandelt?
    • Fehlerbehandlung: Werden Fehler sauber abgefangen und behandelt?
    • Sicherheit: Gibt es Injektions-, Auth- oder Datenoffenlegungs-Risiken?
    • Leistung: Offensichtliche O(n^2)-Schleifen, fehlende Indizes oder Speicherprobleme?
    • Benennung: Sind neue Variablen/Funktionen/Klassen klar benannt?
    • Tests: Werden neue Verhaltensweisen durch Tests abgedeckt?
  5. Beim Lesen Notizen machen und jede Beobachtung nach Schweregrad klassifizieren

Erwartet: Eine Reihe von Beobachtungen zu Korrektheit, Sicherheit, Leistung und Qualitaet fuer jede bedeutende Aenderung im Diff. Jede Beobachtung hat ein Schweregradniveau.

Bei Fehler: Wenn der Diff zu gross ist um effektiv reviewt zu werden, dies markieren: "Dieser PR aendert {N} Dateien und {M} Zeilen. Ich empfehle, ihn in kleinere PRs aufzuteilen fuer effektiveres Review." Trotzdem die risikoreichsten Dateien reviewen.

Schritt 3: Feedback klassifizieren

Beobachtungen nach Schweregradniveaus organisieren.

  1. Jede Beobachtung klassifizieren:
Feedback-Schweregradniveaus:
+-----------+------+----------------------------------------------------+
| Niveau    | Icon | Beschreibung                                       |
+-----------+------+----------------------------------------------------+
| Blocking  | [B]  | Vor Merge beheben. Bugs, Sicherheitsprobleme,      |
|           |      | Datenverlust-Risiken, beschaedigte Funktionalitaet.|
| Suggest   | [S]  | Sollte behoben werden, blockiert Merge nicht.      |
|           |      | Bessere Ansaetze, fehlende Grenzfaelle, Stilprob.  |
|           |      | die Wartbarkeit beeinflussen.                      |
| Nit       | [N]  | Optionale Verbesserung. Stilpraeferenzen, kleine   |
|           |      | Benennungsvorschlaege, Formatierung.               |
| Praise    | [P]  | Gute Arbeit, die erwaehnens-wert ist. Clevere      |
|           |      | Loesungen, gruendliche Tests, saubere Abstraktionen|
+-----------+------+----------------------------------------------------+
  1. Fuer jedes Blocking-Element erklaeren:
    • Was falsch ist (das spezifische Problem)
    • Warum es wichtig ist (die Auswirkung)
    • Wie es behoben werden kann (ein konkreter Vorschlag)
  2. Fuer jedes Suggest-Element die Alternative erklaeren und warum sie besser ist
  3. Nits kurz halten — ein Satz reicht
  4. Mindestens ein Praise einschliessen, wenn etwas Positives auffaellt

Erwartet: Eine sortierte Liste von Feedback-Punkten mit klaren Schweregradniveaus. Blocking-Punkte haben Loesung-Vorschlaege. Das Verhaeltnis sollte generell sein: wenige Blocking, einige Suggest, minimale Nit, mindestens ein Praise.

Bei Fehler: Wenn alles blocking erscheint, muss der PR moeglicherweise ueberarbeitet statt gepatcht werden. Erwaegen, Aenderungen auf PR-Ebene anzufordern statt zeilenbasierter Kommentare. Wenn nichts falsch erscheint, das auch sagen — "LGTM" ist gueltiges Feedback, wenn der Code gut ist.

Schritt 4: Review-Kommentare verfassen

Das Review mit strukturiertem, umsetzbarem Feedback zusammenstellen.

  1. Review-Zusammenfassung verfassen (Kommentar auf oberster Ebene):
    • Ein Satz: was der PR tut (Verstaendnis bestaetigen)
    • Gesamtbewertung: genehmigen, Aenderungen anfragen oder kommentieren
    • Wichtige Punkte: Blocking-Probleme (falls vorhanden) und die wichtigsten Suggest-Punkte auflisten
    • Lob: gute Arbeit hervorheben
  2. Inline-Kommentare fuer spezifische Codestellen verfassen:
    # Inline-Kommentare per gh API einreichen
    gh api repos/{owner}/{repo}/pulls/{number}/comments \
      -f body="[B] Diese SQL-Abfrage ist anfaellig fuer Injection. Stattdessen parametrisierte Abfragen verwenden.\n\n\`\`\`suggestion\ndb.query('SELECT * FROM users WHERE id = $1', [userId])\n\`\`\`" \
      -f commit_id="<sha>" \
      -f path="src/users.js" \
      -F line=42 \
      -f side="RIGHT"
    
  3. Feedback konsistent formatieren:
    • Jeden Kommentar mit dem Schweregradtag beginnen: [B], [S], [N] oder [P]
    • GitHub-Vorschlagsblocks fuer konkrete Fixes verwenden
    • Fuer Stil-/Muster-Vorschlaege zur Dokumentation verlinken
  4. Das Review einreichen:
    # Genehmigen
    gh pr review <number> --approve --body "Review-Zusammenfassung hier"
    
    # Aenderungen anfordern (wenn Blocking-Probleme vorhanden)
    gh pr review <number> --request-changes --body "Review-Zusammenfassung hier"
    
    # Nur kommentieren (wenn unsicher oder FYI-Feedback)
    gh pr review <number> --comment --body "Review-Zusammenfassung hier"
    

Erwartet: Ein eingereichten Review mit klarem, umsetzbarem Feedback. Der Autor weiss genau, was zu beheben ist (Blocking), was zu beruecksichtigen ist (Suggest) und was gut war (Praise).

Bei Fehler: Wenn gh pr review fehlschlaegt, Berechtigungen pruefen. Schreibzugriff auf das Repository oder Status als angefragter Reviewer wird benoetigt. Wenn Inline-Kommentare fehlschlagen, alles Feedback im Review-Body mit Datei:Zeile-Referenzen platzieren.

Schritt 5: Nachverfolgen

Die Review-Auflosung verfolgen.

  1. Nachdem der Autor reagiert oder Aktualisierungen gepusht hat:
    gh pr view <number> --json reviewDecision,reviews
    
  2. Nur die Aenderungen neu reviewen, die Ihr Feedback adressieren:
    gh pr diff <number>  # neue Commits pruefen
    
  3. Blocking-Punkte vor der Genehmigung als geloest verifizieren
  4. Kommentar-Threads aufloesen, wenn Probleme behoben wurden
  5. Genehmigen, wenn alle Blocking-Punkte geloest sind:
    gh pr review <number> --approve --body "Alle Blocking-Probleme geloest. LGTM."
    

Erwartet: Blocking-Probleme als geloest verifiziert. Review-Konversation aufgeloest. PR genehmigt oder weitere Aenderungen mit spezifisch verbleibenden Punkten angefordert.

Bei Fehler: Wenn der Autor Feedback ablehnt, im PR-Thread diskutieren. Auf Auswirkungen (warum es wichtig ist) konzentrieren statt auf Autoritaet. Wenn bei nicht-blocking Punkten keine Einigung erzielt wird, elegant nachgeben — der Autor besitzt den Code.

Validierung

  • PR-Kontext verstanden (Zweck, Groesse, CI-Status)
  • Alle geaenderten Dateien reviewt (oder risikoreichste Dateien fuer XL-PRs)
  • Feedback nach Schweregrad klassifiziert (Blocking/Suggest/Nit/Praise)
  • Blocking-Punkte haben spezifische Loesung-Vorschlaege
  • Mindestens ein Praise fuer positive Aspekte eingeschlossen
  • Review-Entscheidung stimmt mit Feedback ueberein (genehmigen nur wenn keine Blocking-Punkte)
  • Inline-Kommentare referenzieren spezifische Zeilen mit Schweregradtags
  • CI/CD-Pruefungen verifiziert (gruen vor Genehmigung)
  • Nachverfolgung nach Autorenrevisionen abgeschlossen

Haeufige Stolperfallen

  • Blind genehmigen: Genehmigen ohne den Diff tatsaechlich zu lesen. Jede Genehmigung ist eine Qualitaetsbestaetigung
  • Nit-Flut: Den Autor in Stilpraeferenzen ertraenken. Nits fuer Mentoring-Situationen aufsparen; bei zeitkritischen Reviews weglassen
  • Den Wald vor Baeumen nicht sehen: Zeile fuer Zeile reviewen ohne das Gesamtdesign zu verstehen. Zuerst die PR-Beschreibung und den Commit-Verlauf lesen
  • Stil als Blocking: Formatierung und Benennung sind fast nie blocking. Blocking fuer Bugs, Sicherheit und Datenintegritaet reservieren
  • Kein Lob: Nur auf Probleme hinzuweisen ist demotivierend. Guter Code verdient Anerkennung
  • Review-Scope-Creep: Code kommentieren, der nicht im PR geaendert wurde. Wenn vorhandene Probleme stoeren, ein separates Issue erstellen

Verwandte Skills

  • review-software-architecture — systemweites Architektur-Review (ergaenzend zum PR-Review)
  • security-audit-codebase — eingehende Sicherheitsanalyse fuer PRs mit sicherheitsrelevanten Aenderungen
  • create-pull-request — die andere Seite des Prozesses: PRs erstellen, die leicht zu reviewen sind
  • commit-changes — saubere Commit-Geschichte erleichtert das PR-Review erheblich

GitHub Repository

pjt222/agent-almanac
Pfad: i18n/de/skills/review-pull-request
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Verwandte Skills

llamaguard

Andere

LlamaGuard ist Metas 7-8B-Parameter-Modell zur Moderation von LLM-Eingaben und -Ausgaben in sechs Sicherheitskategorien wie Gewalt und Hassrede. Es bietet eine Genauigkeit von 94-95 % und kann mit vLLM, Hugging Face oder Amazon SageMaker eingesetzt werden. Nutzen Sie diese Skill, um Inhaltsfilterung und Sicherheitsguardrails einfach in Ihre KI-Anwendungen zu integrieren.

Skill ansehen

cost-optimization

Andere

Diese Claude Skill unterstützt Entwickler bei der Optimierung von Cloud-Kosten durch Ressourcen-Dimensionierung, Tagging-Strategien und Ausgabenanalysen. Sie bietet einen Rahmen zur Senkung von Cloud-Ausgaben und zur Implementierung von Kosten-Governance für AWS, Azure und GCP. Nutzen Sie sie, wenn Sie Infrastrukturkosten analysieren, Ressourcen richtig dimensionieren oder Budgetvorgaben einhalten müssen.

Skill ansehen

quantizing-models-bitsandbytes

Andere

Diese Fähigkeit quantisiert LLMs auf 8-Bit- oder 4-Bit-Präzision mittels bitsandbytes und erreicht dabei eine Speicherreduzierung von 50–75 % bei minimalem Genauigkeitsverlust. Sie ist ideal für den Betrieb größerer Modelle mit begrenztem GPU-Speicher oder zur Beschleunigung von Inferenzvorgängen und unterstützt Formate wie INT8, NF4 und FP4. Die Fähigkeit integriert sich in HuggingFace Transformers und ermöglicht QLoRA-Training sowie 8-Bit-Optimierer.

Skill ansehen

dispatching-parallel-agents

Andere

Diese Claude-Fähigkeit verteilt mehrere Agenten, um drei oder mehr unabhängige Probleme gleichzeitig zu untersuchen und zu beheben. Sie ist für Szenarien konzipiert, die unabhängige Fehler umfassen, die ohne gemeinsamen Zustand oder Abhängigkeiten gelöst werden können. Die Kernfähigkeit ist die parallele Problemlösung, bei der pro unabhängigem Problembereich ein Agent zugewiesen wird, um die Effizienz zu maximieren.

Skill ansehen