Vom GitHub-Issue zum Pull Request mit einem Agenten
Ein gutes Issue ist im Grunde ein Prompt – mit Kontext und Akzeptanzkriterien wird daraus ein sauberer, überprüfbarer Pull Request.
Der Grundablauf
Ein typischer Agenten-Workflow läuft so: Ein GitHub-Issue beschreibt eine Aufgabe, ein Agent (z. B. über @claude in einem Kommentar oder eine CI-Pipeline) liest das Issue, arbeitet auf einem eigenen Branch, erzeugt Code-Änderungen und öffnet am Ende einen Pull Request – zur menschlichen Prüfung, nicht zum automatischen Mergen.
Ein gutes Issue ist ein guter Prompt
Dieselben Regeln, die für einen guten Prompt gelten, gelten für ein gutes Issue: klarer Kontext (welche Datei, welches Verhalten, warum), konkrete Akzeptanzkriterien und, wo möglich, ein Beispiel für erwartetes Verhalten. Ein vages Issue führt zu einem vagen, oft unbrauchbaren PR – unabhängig davon, ob Mensch oder Agent es umsetzt.
Warum ein eigener Branch wichtig ist
Der Agent arbeitet nie direkt auf dem Hauptbranch, sondern auf einem eigenen Feature-Branch. Das hält Änderungen isoliert, überprüfbar und – falls etwas schiefgeht – folgenlos rückgängig machbar, ohne den Hauptbranch zu berühren.
Menschliches Review bleibt das Tor
Der Pull Request ist der entscheidende Kontrollpunkt: Ein Mensch prüft Diff, Beschreibung und CI-Ergebnisse, bevor gemerged wird. CI-Checks (Tests, Linting, Build) laufen automatisch als zusätzliches Sicherheitsnetz mit, ersetzen aber kein menschliches Urteil über die Sinnhaftigkeit der Änderung.
BEISPIEL
Issue: "Bug: /api/users gibt bei leerem Suchfeld 500 statt leerer Liste zurück. Kontext: routes/users.js, Zeile 42. Akzeptanzkriterium: GET /api/users?q= liefert [] mit Status 200, bestehender Test tests/users.test.js bleibt grün." Kommentar im Issue: @claude bitte umsetzen → Agent arbeitet auf branch fix/empty-search, öffnet PR "Fix: empty search returns [] instead of 500 (Closes #123)"
🛠️ ÜBUNG — MACH DAS BEI DIR
Schreibe ein vollständiges, agenten-taugliches GitHub-Issue für einen kleinen Bugfix und lass es umsetzen.
- Wähle einen kleinen, klar abgrenzbaren Bug oder eine Kleinigkeit in einem eigenen Repository.
- Schreibe ein Issue mit betroffener Datei/Funktion, aktuellem Fehlverhalten, Zielverhalten und mindestens einem konkreten Akzeptanzkriterium.
- Lass einen Agenten (z. B. Claude Code oder die GitHub-Integration) auf einem eigenen Branch die Umsetzung vorschlagen und einen Pull Request öffnen.
- Prüfe den PR wie ein Reviewer: Titel, Beschreibung, Diff, Bezug zum Issue.
✅ SELBST-CHECK
- ☐ Enthielt dein Issue alle vier Bestandteile (Kontext, Fehlverhalten, Zielverhalten, Akzeptanzkriterium)?
- ☐ Konnte der Agent die Aufgabe ohne Rückfrage umsetzen, oder fehlten Informationen?
KURZ-QUIZ
Was macht ein GitHub-Issue zu einem „guten Prompt" für einen Coding-Agenten?
QUELLEN
- Claude Code Doku: GitHub Actions ↗ code.claude.com
- GitHub Docs: About GitHub Copilot Cloud Agent ↗ docs.github.com
- GitHub Docs: About pull request reviews ↗ docs.github.com