Skip to main content

Verwenden von Copilot zum Arbeiten an einem Issue

Hier erfährst du, wie GitHub Copilot Issues zugewiesen werden, wie der Fortschritt überwacht wird, während Copilot am Issue arbeitet, und wie anschließend Pull-Request-Review-Kommentare verwendet werden, um Copilot aufzufordern, die Arbeitsschritte zu wiederholen.

Wer kann dieses Feature verwenden?

Der Copilot-Programmier-Agent ist mit den GitHub Copilot Pro+- und GitHub Copilot Enterprise-Plänen verfügbar, die diesen aktiviert haben.
Sign up for Copilot

Hinweis

Copilot-Programmier-Agent is in public preview and subject to change.

Einführung

Du kannst Copilot einen GitHub-Issue wie einem menschlichen Softwareentwickler zuweisen. Copilot beginnt mit der Arbeit am Issue, löst einen Pull Request aus und fordert dich nach getaner Arbeit zur Überprüfung auf. Weitere Informationen finden Sie unter Informationen zum Zuweisen von Aufgaben zu Copilot.

Wenn du Copilot bisher noch nicht für die Arbeit an einem Issue verwendet hast, findest du unter Best practices for using Copilot to work on tasks einige nützliche Tipps, mit denen du gute Ergebnisse erzielst.

Zuweisen eines Issues zu Copilot

Du kannst Copilot auffordern, mit der Arbeit an einem Issue zu beginnen, indem du das Issue Copilot zuweist.

Du hast folgende Möglichkeiten, Copilot ein Issue zuzuweisen:

Zuweisen eines Issues zu Copilot auf GitHub.com

Du kannst Copilot auf GitHub.com wie jedem anderen Benutzer ein Issue zuweisen.

  1. Navigieren Sie auf GitHub zur Hauptseite des Repositorys.

  2. Klicke unter dem Namen deines Repositorys auf -Issues.

    Screenshot der Hauptseite eines Repositorys. In der horizontalen Navigationsleiste ist eine Registerkarte mit der Bezeichnung „Issues“ dunkelorange umrandet.

  3. Öffne das Issue, das du Copilot zuweisen möchtest.

  4. Klicke im Menü auf der rechten Seite auf Zugewiesene Personen.

    Screenshot der rechten Randleiste eines Issues. Eine Kopfzeile mit der Beschriftung „Zugewiesene Personen“ ist dunkelorange eingerahmt.

  5. Klicke in der Liste der zugewiesenen Personen auf Copilot.

    Screenshot: Fenster „Assignees“ für ein Issue. Copilot ist in der Liste verfügbar.

Tipp

Wenn du Copilot ein Issue zuweist, werden Titel, Beschreibung und aktuell vorhandene Kommentare an Copilot gesendet. Nach dem Zuweisen des Issues erkennt Copilot keine Kommentare, die dem Issue danach hinzugefügt werden, und reagiert daher auch nicht darauf. Wenn weitere Information vorliegen oder Änderungen an der ursprünglichen Anforderung vorgenommen werden müssen, füge diese als Kommentar im Pull Request hinzu, der von Copilot ausgelöst wird.

Du kannst Copilot auch von anderen Stellen auf GitHub.com aus Issues zuweisen:

  • Von der Liste mit Issues auf der Seite Issues eines Repositorys aus.
  • Beim Anzeigen eines Issues in GitHub Projekte.

Zuweisen eines Issues zu Copilot über die GitHub-API

Du kannst Copilot einen Issue zuweisen, indem du eine Anforderung an die GraphQL-API erstellst.

  1. Authentifiziere dich bei der API mit einem Benutzertoken, zum Beispiel mit einem personal access token oder mit einem GitHub App-Benutzer-zu-Server-Token.

  2. Vergewissere dich, dass Copilot-Programmier-Agent im Repository aktiviert ist, indem du prüfst, ob suggestedActors des Repositorys in der GraphQL-API Copilot enthält. Ersetze monalisa durch den Repositorybesitzer und octocat durch den Namen.

    GraphQL
    query {
      repository(owner: "monalisa", name: "octocat") {
        suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) {
          nodes {
            login
            __typename
    
            ... on Bot {
              id
            }
    
            ... on User {
              id
            }
          }
        }
      }
    }
    

    Wenn Copilot-Programmier-Agent für den Benutzer und im Repository aktiviert ist, enthält der erste Knoten, der von der Abfrage zurückgegeben wird, den login-Wert copilot-swe-agent.

  3. Rufe die globale GraphQL-ID des Issues ab, das du Copilot zuweisen möchtest, und ersetze dabei monalisa durch den Repositorybesitzer, octocat durch den Namen und 9000 durch die Issuenummer.

    GraphQL
    query {
      repository(owner: "monalisa", name: "octocat") {
        issue(number: 9000) {
          id
          title
        }
      }
    }
    
  4. Weise das Issue Copilot mithilfe der GraphQL-Mutation replaceActorsForAssignable zu. Ersetze ISSUE_ID durch die im vorherigen Schritt zurückgegebene ID und BOT_ID durch die im Schritt davor zurückgegebene ID.

    GraphQL
    mutation {
      replaceActorsForAssignable(input: {assignableId: "ISSUE_ID", assigneeIds: ["BOT_ID"]}) {
        assignable {
          ... on Issue {
            id
            title
            assignees(first: 10) {
              nodes {
                login
              }
            }
          }
        }
      }
    }
    

Nachverfolgen des Fortschritts von Copilot bei deinem Issue

Kurz nachdem du Copilot zugewiesen hast, hinterlässt Copilot eine 👀-Reaktion auf das Issue.

Screenshot: Ein Issue, das Copilot zugewiesen wurde. Copilot hat eine Augensymbolreaktion hinterlassen.

Einige Sekunden später öffnet Copilot einen Entwurf eines Pull Requests, der mit deinem ursprünglichen Issue verknüpft ist. Auf der Zeitachse des Issues wird ein Ereignis angezeigt, das mit dem Pull Request verknüpft ist.

Screenshot: Issue mit einer Zeitachse, auf der angezeigt wird, dass ein verknüpfter Pull Request geöffnet wurde.

Copilot startet eine Agent-Sitzung, um an dem Issue zu arbeiten. Auf der Zeitachse des Pull Requests wird das Ereignis „Copilot started work“ angezeigt, und während Copilot arbeitet, wird der Pull-Request-Text mit regelm��ßigen Statusaktualisierungen aktualisiert und es werden Commits an den Branch gepusht.

Screenshot: Pull Request mit verschiedenen Ereignissen auf der Zeitachse, darunter das Ereignis „Copilot started work“.

Wenn du überprüfen möchtest, was Copilot tut, klicke auf View session. In der Sitzungsprotokollanzeige wird ein Liveprotokoll angezeigt, während Copilot am Issue arbeitet. Wenn du möchtest, dass Copilot die Arbeit am Issue beendet, klicke auf Stop session. Weitere Informationen findest du unter Verwenden der Protokolle des Copilot-Programmier-Agents.

Wenn Copilot fertig ist, endet die Agent-Sitzung und Copilot fordert dich durch Auslösen einer Benachrichtigung zu einem Review auf. Zudem wird das Ereignis „Copilot finished work“ auf der Zeitachse des Pull Request angezeigt.

Screenshot: Zeitachse eines Pull Request mit den Ereignissen „Copilot requested review“ und „Copilot finished work“.

Arbeiten mit Copilot an einem Pull Request

Nachdem Copilot die Arbeit an einem Issue beendet hat, solltest du den Pull Request gründlich überprüfen und alles kommentieren, was geändert werden muss. Weitere Informationen findest du unter Überprüfen eines von Copilot erstellten Pull Requests.

Weiterführende Themen