Overview
Mit automations, können Sie so einrichten Copilot-Cloud-Agent , dass sie automatisch ausgeführt wird, entweder in einem Zeitplan oder als Reaktion auf ein Ereignis in einem Repository. Automations kann aktionen innerhalb des Repositorys ausführen, in dem sie konfiguriert sind, z. B. Öffnen einer Pullanforderung oder Beschriftung eines Problems.
Bei einer manuell gestarteten Copilot-Cloud-Agent Sitzung geben Copilot Sie eine Aufgabe jedes Mal an, wenn Sie die Arbeit erledigen möchten. Mit automations definieren Sie eine Aufgabe einmal, und Copilot führt sie automatisch aus, sobald der Trigger von Automatisierung ausgelöst wird.
Sie können z. B. folgendes verwenden automations :
- Triage eingehender Probleme: Automatisches Bezeichnen neuer Probleme als Fehler, eine Verbesserung oder eine andere, basierend auf ihren Inhalten.
- Fehlgeschlagene Tests nachts beheben: Überprüfen Sie jede Nacht, ob auf dem
main-Branch Tests fehlschlagen, versuchen Sie, sie zu beheben, und öffnen Sie einen Entwurfs-Pull-Request. - Vorbereiten der wöchentlichen Versionshinweise: Entwurf von Versionshinweisen und Öffnen einer Pull-Anforderung nach einem Zeitplan.
Wenn Sie ein AutomatisierungObjekt erstellen, definieren Sie Folgendes:
- Ein Name zum Identifizieren des Automatisierung.
- Eine Eingabeaufforderung , die die auszuführende Copilot Aufgabe beschreibt.
- Ein oder mehrere Trigger, die bestimmen, wann die Automatisierung ausgeführt wird.
- Das ModellCopilot wird verwendet.
- Die ToolsCopilot, die verwendet werden können, steuern, welche Aktionen sie in Ihrem Repository ausführen können.
Anweisungen zum Erstellen und Verwalten automationsfinden Sie unter Erstellen von Automatisierungen mit Copilot Cloud-Agent.
Verfügbarkeit und Berechtigungen
Damit automations in einem Repository verfügbar ist, müssen alle folgenden Bedingungen erfüllt sein:
- Das Repository muss privat oder intern sein. Automations sind in öffentlichen Repositorys nicht verfügbar.
- Copilot-Cloud-Agent muss für das Repository aktiviert sein. Wenn Sie über Copilot Business oder Copilot Enterprise verfügen, muss ein Administrator die Copilot-Cloud-Agent-Richtlinie aktivieren. Siehe Verwalten des Zugriffs auf GitHub Copilot Cloud-Agent.
- Die Organisation muss im Repository sowohl Copilot-Cloud-Agent als auch automations zulassen (beide sind standardmäßig aktiviert). Siehe Hinzufügen von GitHub Copilot-Cloud-Agent zu Ihrer Organisation.
Automations sind mit den GitHub-Copilot Pro-, GitHub-Copilot Pro+-, GitHub Copilot Max-, GitHub Copilot Business- und GitHub Copilot Enterprise-Plänen verfügbar.
Jeder Benutzer, der Schreibzugriff auf ein Repository hat, kann automations in diesem Repository erstellen.
Sie können automations erstellen und verwalten von:
- Die Registerkarte Agents in einem Repository auf GitHub, im Bereich Automations.
- Die Automations Registerkarte in der GitHub Copilot App.
Auslöser
Ein Automatisierung wird ausgeführt, wenn einer seiner Trigger ausgelöst wird. Die folgenden Trigger sind verfügbar:
- Nach Zeitplan: Die Automatisierung wird in einem wiederkehrenden Intervall ausgeführt – stündlich, täglich oder wöchentlich.
- Wenn ein Issue erstellt wird: das Automatisierung wird jedes Mal ausgeführt, wenn ein Issue in dem Repository erstellt wird.
- Wenn eine Pull-Anforderung geöffnet wird: Die Automatisierung Wird jedes Mal ausgeführt, wenn eine Pullanforderung im Repository geöffnet wird.
- Wenn eine Pullanforderung synchronisiert wird: Die Automatisierung Ausführung erfolgt jedes Mal, wenn neue Commits an eine Pullanforderung im Repository übertragen werden.
Optional können Sie Filter für ereignisbasierte Trigger konfigurieren:
- Wenn ein Problem erstellt wird, fügen Sie einen Suchabfragefilter hinzu.
- Wenn eine Pullanforderung geöffnet wird und eine Pullanforderung synchronisiert wird, fügen Sie einen Suchabfragefilter und einen Filter für Dateien hinzu, die in der Pullanforderung geändert wurden.
Um das Risiko der Einfügung von Eingabeaufforderungen zu verringern, ignorieren Sie Ereignisse, automations die von Benutzern ausgelöst werden, die standardmäßig keinen Schreibzugriff auf das Repository haben. Dadurch wird verhindert, dass nicht vertrauenswürdige Benutzer – zum Beispiel ein externer Beitragender, der ein Issue erstellt – bewirken, dass Copilot aktiv wird. Sie können sich dafür entscheiden, diese Ereignisse zuzulassen, falls erforderlich. Weitere Informationen finden Sie unter Sicherheit und Sicherheit.
Tools und Aktionen
Die Werkzeuge, die Sie beim Erstellen eines Automatisierung auswählen, bestimmen, was Copilot tun kann, wenn Automatisierung ausgeführt wird.
Sie können beispielsweise Copilot erlauben, Änderungen zu übertragen, Issue-Labels zu aktualisieren oder einen Pull-Request zu erstellen.
Die Auswahl von Tools ist die wichtigste Methode, mit der Sie den Umfang eines Automatisierung steuern. Gewähren Sie nur die Berechtigungen, die für die Aufgabe erforderlich sind, damit Copilot keine Aktionen ausführen kann, die Sie nicht vorgesehen haben.
Sie können manuell die Tools auswählen, die Sie aktivieren möchten, oder Sie können die Schaltfläche " Tools vorschlagen " verwenden, um basierend auf Ihrer Eingabeaufforderung Vorschlägetools zu erhalten Copilot .
Eine Automatisierung Aktion kann nur im einzelnen Repository ausgeführt werden, auf das sie sich bezieht.
Vom Repository geerbte Konfiguration
Automations verwenden Sie die Copilot-Cloud-Agent Konfiguration für das Repository, auf das sie ausgerichtet sind, einschließlich:
- Benutzerdefinierte Anweisungen. Siehe Hinzufügen von benutzerdefinierten Repositoryanweisungen für GitHub Copilot.
- Agent-Fähigkeiten. Siehe Hinzufügen von Agent-Fähigkeiten für GitHub Copilot.
- Firewallregeln. Siehe Anpassen oder Deaktivieren der Firewall für GitHub Copilot Cloud-Agent.
- Geheime Schlüssel und Variablen. Siehe Konfigurieren von geheimen Schlüsseln und Variablen für Copilot Cloud-Agent.
Automations werden getrennt von den Inhalten Ihres Repositorys gespeichert. Sie werden nicht in Git eingecheckt, sodass sie nicht zusammen mit Ihrem Code versioniert oder über Pull Requests verwaltet werden.
Sichtbarkeit
Ein Automatisierung ist privat für den Benutzer, der ihn erstellt hat. Andere Personen, einschließlich Repositoryadministratoren, können Ihre automationsDaten nicht sehen.
Die Copilot-Cloud-AgentSitzungen, die ein Automatisierung startet, sind jedoch für andere Personen sichtbar, die Zugriff auf das Repository haben, genau wie jede andere Copilot-Cloud-Agent-Sitzung. Jeder, der diese Sitzungen sehen kann, kann den Prompt, die Sitzungsprotokolle und alle Pull Requests oder sonstigen Änderungen sehen, die Copilot erstellt.
Da Sitzungen und deren Protokolle für andere sichtbar sind, sollten Sie keine geheimen oder anderen vertraulichen Informationen direkt in die AutomatisierungEingabeaufforderung einschließen. Um Copilot Zugriff auf sensible Werte zu geben, verwenden Sie stattdessen Repository-Geheimnisse. Siehe Konfigurieren von geheimen Schlüsseln und Variablen für Copilot Cloud-Agent.
Abrechnung
Jedes Mal, wenn eine Automatisierung ausgeführt wird, wird eine Copilot-Cloud-Agent-Sitzung gestartet, die GitHub Actions Minuten und GitHub AI Credits verwendet. Diese Verwendung wird dem Benutzer in Rechnung gestellt, der die AutomatisierungDatei erstellt hat. Weitere Informationen findest du unter GitHub Copilot Lizenzen.
Sicherheit und Schutz
Automations ausgeführt werden Copilot, ohne dass eine Person jede Aufgabe einzeln startet, sodass sie einige zusätzliche Risiken mit sich bringen. GitHub bietet integrierte Schutzmaßnahmen, um diese Risiken zu mindern.
- Namensnennung. Pull-Anforderungen, die geöffnet wurden, und Code, der von einem Automatisierung pushed wird, werden dem Benutzer zugeordnet, der die AutomatisierungDatei erstellt hat. Wie bei Pull Requests, die ein Benutzer selbst erstellt, kann er diese Pull Requests nicht genehmigen. Dadurch bleiben die erwarteten Review-Kontrollen erhalten.
- Tools mit den geringsten Rechten. Sie legen genau fest, welche Tools ein Automatisierung verwenden kann, sodass Sie es auf genau die Aktionen beschränken können, die die Aufgabe erfordert.
- Nicht vertrauenswürdige Eingabe. Standardmäßig ignorieren automations Ereignisse, die von Benutzern ohne Schreibzugriff auf das Repository ausgelöst werden, um das Risiko von Prompt-Injection durch nicht vertrauenswürdige Benutzer zu verringern.
- Workflow läuft. Wie bei allen Copilot-Cloud-Agent Arbeiten werden Workflows nicht auf einer Pullanforderung ausgeführt, GitHub Actions bis ein Benutzer mit Schreibzugriff sie genehmigt. Dadurch wird das Risiko verringert, dass ein von Automatisierung geöffneter Pull Request automatisch Workflows auslöst.
Weitere Informationen dazu, wie GitHub die Risiken von Copilot-Cloud-Agent mindert, finden Sie unter Risiken und Risikominderungen für GitHub Copilot Cloud-Agent.