heydeer
Anmelden
Prüfungen auf GitHub

Autopilot

Übergib einen Pull Request an HeyDeer. Autopilot behebt, was offen ist, pusht in den Branch des PR und prüft jede Änderung, bis der PR gemergt werden kann oder dich braucht.

HeyDeer behebt, was offen istBefunde, Anfragen, fehlgeschlagene Checks und Merge-Konflikte.
Es pusht in den Branch des PRUnd antwortet in den Unterhaltungen, die es bearbeitet hat.
Es prüft den neuen CommitOhne die Prüfung schon zu veröffentlichen.
Autopilot stopptHeyDeer veröffentlicht seine Prüfung und listet auf, was noch offen ist.
HeyDeer wiederholt die ersten drei Schritte für bis zu 5 Runden, bis nichts mehr zu beheben ist oder es deine Antwort braucht.

Voraussetzungen

  • Der Pull Request ist offen, und sein Branch liegt im selben Repository, nicht in einem Fork.
  • Du hast Schreibzugriff auf das Repository, und die Einstellung Wer Prüfungen anfordern kann schließt dich ein.
  • Der Arbeitsbereich hat einen kostenpflichtigen Tarif. Siehe Tarife.
  • HeyDeer hat Lese- und Schreibzugriff auf Contents und Pull requests. Siehe GitHub App und Berechtigungen.

Autopilot starten und stoppen

Du kannst Autopilot auf einem dieser Wege starten:

  • Wähle auf der Prüfungsseite in HeyDeer Autopilot und dann Autopilot starten.
  • Wähle in HeyDeers Prüfkommentar auf GitHub die Schaltfläche Autopilot und dann in HeyDeer Autopilot starten.
  • Kommentiere @heydeer autopilot im PR.

Zum Stoppen wählst du auf seiner Seite in HeyDeer Autopilot stoppen oder kommentierst @heydeer autopilot stop. Ein erneuter Start setzt die Rundenzahl zurück und berücksichtigt neue Antworten und Kommentare.

Solange Autopilot läuft, kannst du für den PR keine Behebung starten und keine Prüfung anfordern; stoppe Autopilot zuerst. Während eine Behebung läuft, kann Autopilot nicht starten.

Was Autopilot behebt

PunktWas dazu zählt
BefundeBefunde innerhalb des Feedback-Umfangs des Repositorys und noch offene frühere Bedenken von HeyDeer, so wie der Check HeyDeer Review sie zählt.
AnfragenOffene Unterhaltungen, die eine Person begonnen hat und in denen zuletzt jemand mit Schreibzugriff geschrieben hat, sowie Kommentare und Texte von Prüfungen, die solche Personen nach der Prüfung, mit der Autopilot begonnen hat, im PR veröffentlicht haben. Während Autopilot läuft, geht eine Erwähnung von @heydeer im PR, auch in HeyDeers eigenen Prüfungsunterhaltungen, an Autopilot, statt eine eigene Anfrage zu starten.
Fehlgeschlagene ChecksErforderliche Checks, wenn deine Branch-Regeln welche festlegen; sonst alle Checks außer HeyDeer Review.
Merge-KonflikteHeyDeer mergt den Basis-Branch und löst die Konflikte. Es führt nie ein Rebase oder einen Force-Push durch und aktualisiert einen Branch nicht nur deshalb, weil er zurückliegt.

Autopilot ignoriert Kommentare von Bots und von Personen ohne Schreibzugriff. HeyDeer antwortet in jeder Unterhaltung, die es bearbeitet hat, und fragt dort nach, wenn eine Anfrage die Entscheidung eines Menschen braucht.

HeyDeer liest Titel, Zusammenfassung und Anmerkungen jedes fehlgeschlagenen Checks und bei einem GitHub-Actions-Job das Log des fehlgeschlagenen Schritts. Es reproduziert den Fehler in einer isolierten Sandbox, in der es Code bearbeitet und deine Tests ausführt. Fehler, die es nicht reproduzieren kann, bleiben auf der Liste dessen, was noch offen ist. Zum Lesen von Logs ist die Actions-Berechtigung nötig; ohne sie arbeitet HeyDeer mit dem Rest. Wie die Codeausführung isoliert ist, erfährst du unter Sicherheit.

Commits von Autopilot können keine Dateien in .github/workflows/ ändern. Ein geänderter Workflow würde mit den Secrets deines Repositorys laufen, bevor jemand ihn gelesen hat.

Wann Autopilot stoppt

GrundWas passiert ist
BereitEs gibt nichts mehr zu beheben.
Braucht deine AntwortHeyDeer hat in einer Unterhaltung oder in seiner Prüfung eine Frage gestellt oder braucht deine Bestätigung, ob ein früheres Bedenken behoben ist, und hat alles andere behoben. Antworte dort und starte Autopilot dann erneut.
Jemand anderes hat gepushtJeder Push, der nicht von HeyDeer stammt, auch über die GitHub-Schaltfläche Update branch. HeyDeer verwirft die laufende Runde und die zurückgehaltenen Prüfungen.
RundenlimitAutopilot hat 5 Runden durchlaufen.
Kein FortschrittEine Runde hat nichts geändert und dieselben Punkte sind noch offen, zwei Runden hintereinander haben nichts erledigt, oder alles Offene ist etwas, wofür eine Runde einen Menschen braucht. Der Kommentar sagt, was eine Person bei jedem Punkt tun muss, etwa ein Secret hinzufügen oder einen Workflow ändern.
Checks nicht abgeschlossenDie Checks liefen nach einer Stunde noch.
Merge-QueueDer PR ist in der Merge-Queue, und ein Push würde ihn daraus entfernen.
Push abgelehntGitHub hat den Push von HeyDeer abgelehnt, zum Beispiel weil eine Branch-Regel einschränkt, wer auf den Branch pushen darf.
Credits oder TarifDer Arbeitsbereich hat keine Credits oder keinen kostenpflichtigen Tarif mehr.
Von jemandem gestopptAlle mit Schreibzugriff auf das Repository können ihn stoppen.
Zugriff entzogenDie Person, die Autopilot gestartet hat, kann im Repository keine Prüfungen mehr anfordern.
GitHub hat den Zugriff verweigertGitHub hat HeyDeer daran gehindert, den PR zu lesen oder zu aktualisieren, etwa nachdem HeyDeer den Zugriff auf das Repository verloren hat.
PR geändertDer PR wurde geschlossen oder gemergt, oder sein Basis-Branch hat sich geändert.
UnvollständigHeyDeer konnte eine Runde oder die Prüfung des neuesten Commits nicht abschließen.

Was HeyDeer auf GitHub veröffentlicht

  • Ein Autopilot-Kommentar im PR, der während der Arbeit aktualisiert wird: was Autopilot gerade tut und was er behebt, mit den Commits jeder abgeschlossenen Runde und ihren Punkten unter Verlauf. HeyDeer blendet ältere Autopilot-Kommentare als veraltet aus.
  • Commits im Branch des PR und Antworten in den Unterhaltungen, die es bearbeitet hat.
  • Der Check HeyDeer Review, der in Bearbeitung bleibt, solange Autopilot läuft.
  • Wenn Autopilot stoppt, seine Prüfung des neuesten Commits, außer jemand anderes hat gepusht oder der PR hat sich geändert, und das Ergebnis in seinem Kommentar: warum er gestoppt hat und wofür er dich noch braucht. Wenn er dich braucht, für eine Antwort oder ein Problem, das er nicht lösen konnte, postet er einen neuen Kommentar, der die Person erwähnt, die Autopilot gestartet hat.

Pushes von Autopilot starten keine automatischen Prüfungen, und HeyDeer fordert bei niemandem Prüfungen an. Während Autopilot läuft, zeigen die Prüfkommentare von HeyDeer die Schaltflächen Mit HeyDeer beheben und Autopilot nicht an.

Die automatische Genehmigung funktioniert bei der Prüfung, die HeyDeer veröffentlicht, wie gewohnt. Um nach Pushes von HeyDeer die Genehmigung eines Menschen zu verlangen, aktiviere in deinen Branch-Regeln Require approval of the most recent reviewable push. Siehe Automatische Genehmigung.

Autopilot in HeyDeer listet alle Läufe in den Repositorys auf, die du sehen kannst. Die Seite eines Laufs zeigt seinen Status, was noch offen ist und die verbrauchten Credits sowie jede Runde mit dem, was sie bearbeitet hat, ihren Commits und Antworten und der Zusammenfassung des Agenten.

Credits

Behebung und Prüfung jeder Runde verbrauchen Credits des Arbeitsbereichs wie jede andere Behebung und Prüfung. Für Autopilot selbst fallen keine zusätzlichen Kosten an. Siehe So funktionieren Credits.