Hinweis
Lokale Sandkasten sind GitHub Copilot in Öffentliche Vorschau und können geändert werden.
Wichtig
Für lokale Sandboxing auf Windows ist ein Windows Insider-Build erforderlich.
Informationen zum lokalen Sandkasten
Sandkasten ist derzeit ein experimentelles Feature. Um sie zu verwenden, beginnen Sie Copilot CLI mit der ‑‑experimental Befehlszeilenoption, oder geben Sie /experimental on während einer Sitzung ein.
Wenn Sie lokale Sandkastenfunktionen aktivieren, werden die meisten Befehle und Tools ausgeführt, Copilot CLI die in Ihrem Auftrag innerhalb einer Betriebssystem-Sandbox aufgerufen werden. Nachdem Sie die lokale Sandkastenumgebung aktiviert haben, wird sie für alle Ihre Copilot CLI Sitzungen verwendet, bis Sie sie deaktivieren oder für eine bestimmte Sitzung deaktivieren. Wenn für unternehmensverwaltete Einstellungen Sandkasten erforderlich sind, können Sie sie nicht deaktivieren.
Standardmäßig können Sandkastenbefehle und -tools in Ihr aktuelles Arbeitsverzeichnis und temporäre Ordner schreiben. Ihr Benutzerprofilverzeichnis (Home) sowie System- und Toolspeicherorte sind schreibgeschützt. Andere Datenträgerspeicherorte werden blockiert. In einem Git-Repository ist der Rest des Repositorys über Ihrem aktuellen Arbeitsverzeichnis lesbar, aber nicht schreibbar. Der Zugriff auf Ihr lokales und privates Netzwerk ist zulässig, ebenso wie ausgehender Internetzugriff.
Standardmäßig funktionieren authentifizierte Git- und GitHub CLI (gh) Vorgänge im Sandkasten weiterhin, da Copilot CLI Ihre GitHub Anmeldeinformationen sandkastenbasierten Befehlen zur Verfügung stehen. Dadurch können Aktionen wie git push z. B. erfolgreich ausgeführt werden gh pr create . Sie können dies in Ihren Sandkasteneinstellungen deaktivieren.
Eine konzeptionelle Übersicht über die Sandkastenumgebung finden Copilot CLISie unter Informationen zu Cloud- und lokalen Sandboxes für GitHub Copilot.
Sandkastenbefehle
Sie verwalten lokale Sandboxing innerhalb einer Copilot CLI Sitzung mithilfe des /sandbox Schrägstrichbefehls. Sie verfügt über die folgenden Unterbefehle.
| Befehl | Beschreibung |
|---|---|
/sandbox status | Zeigen Sie an, ob die Sandkastenumgebung zurzeit für die Sitzung verwendet wird. Überprüfen Sie, ob Sandkasten verwendet wird. |
/sandbox policy | Zeigen Sie die effektive Dateisystemrichtlinie für das aktuelle Verzeichnis an – die Pfade, die lesbar, schreibbar oder blockiert sind, und den in Kraft getretenen Netzwerkzugriff. Weitere Informationen findest du unter Grundlegendes zu Dateisystemrichtlinien für lokale Sandboxing in GitHub Copilot CLI. |
/sandbox config | Öffnen Sie die Interaktive Einstellungsschnittstelle. Die eigene Eingabe /sandbox macht dasselbe. Weitere Informationen findest du unter Konfigurieren lokaler Sandkasteneinstellungen. |
/sandbox enable | Aktivieren Sie die lokale Sandkastenumgebung. Weitere Informationen finden Sie unter Aktivieren der lokalen Sandkastenumgebung. |
/sandbox disable | Deaktivieren Sie die lokale Sandkastenumgebung. Wenn für unternehmensverwaltete Einstellungen Sandkasten erforderlich sind, wird dies verweigert. Weitere Informationen finden Sie unter "Deaktivieren der lokalen Sandboxing". |
Lokale Sandbox aktivieren
Um die lokale Sandboxing zu aktivieren, geben Sie den folgenden Befehl in einer interaktiven Copilot CLI Sitzung ein:
/sandbox enable
/sandbox enable
Sandkasten wird sofort für die aktuelle Sitzung verwendet.
Nachdem Sie lokale Sandkastenfunktionen aktiviert haben, wird sie weiterhin für die aktuellen und zukünftigen interaktiven Sitzungen und für programmgesteuerte Sitzungen verwendet.
Hinweis
Wenn bei der Eingabe /sandbox enableandere Sitzungen geöffnet sind, wird die Sandkastenerstellung in diesen Sitzungen nicht sofort verwendet. Wenn Sie sandkasten in einer bereits geöffneten Sitzung verwenden möchten, führen Sie eine der folgenden Aktionen in dieser Sitzung aus:
- Schließen Sie die Sitzung, und starten Sie sie neu, z. B. durch Ausführen
copilot --continue. - Geben Sie
/sandbox enableein.
Deaktivieren der lokalen Sandkastenumgebung
Wenn für unternehmensverwaltete Einstellungen Sandkasten erforderlich sind, können Sie sie nicht deaktivieren und /sandbox disable wird abgelehnt.
Um die Verwendung des lokalen Sandkastens zu beenden, geben Sie den folgenden Befehl in einer interaktiven Copilot CLI Sitzung ein:
/sandbox disable
/sandbox disable
Sandkasten wird in der aktuellen Sitzung oder in neuen und neu gestarteten Sitzungen nicht mehr verwendet.
Ihre Wahl, ob lokale Sandboxing verwendet werden soll, wird als sandbox.enabled Einstellung in Ihrer persönlichen Einstellungsdatei für die CLI (~/.copilot/settings.json standardmäßig) gespeichert.
Verwenden von Sandkasten für eine einzelne Sitzung
Sie können die --sandbox Befehlszeilenoption verwenden, um Sandkasten für eine einzelne Sitzung zu verwenden, ohne Sandkasten für Ihre anderen Sitzungen zu aktivieren. Wenn die Sandkastenumgebung bereits aktiviert ist, können Sie sie für eine einzelne Sitzung mithilfe der --no-sandbox Option deaktivieren. Die --no-sandbox Option kann keine vom Unternehmen verwalteten Einstellungen außer Kraft setzen, die sandkastenbasierte Einstellungen erfordern.
Sie können diese Optionen mit der -p Befehlszeilenoption kombinieren, um die Sandkastenanwendung für die programmgesteuerte Verwendung der CLI zu steuern. Beispiel:
copilot --sandbox -p "PROMPT"
copilot --sandbox -p "PROMPT"
Ausführen eines einzelnen Befehls außerhalb der Sandbox
Wenn ein Befehl umfassenderen Zugriff benötigt, als der Sandkasten zulässt, Copilot kann dieser einzelne Befehl außerhalb der Sandbox ausgeführt werden. Sie werden eine Bestätigungsaufforderung angezeigt, die den Befehl beschreibt, und sie wird nur außerhalb des Sandkastens ausgeführt, wenn Sie ihn genehmigen. andernfalls bleibt es sandkastengef. Die restliche Sitzung bleibt auf beiden Arten sandkastenweise erhalten.
Dieses Verhalten ist standardmäßig aktiviert und kann in Den Sandkasteneinstellungen deaktiviert werden.
Überprüfen, ob Sandkasten verwendet wird
Um zu überprüfen, ob lokale Sandboxing für die aktuelle Sitzung verwendet wird, geben Sie Folgendes ein:
/sandbox status
/sandbox status
Copilot CLI meldet, ob die Sandkasten-Funktion für die Sitzung aktiviert ist. Wenn die verwalteten Einstellungen Ihrer Organisation Sandkasten erfordern, wird dies auch in den Statushinweisen angezeigt. Da der Status widerspiegelt, was die Sitzung tatsächlich erzwingt, ist es die zuverlässige Möglichkeit, zu bestätigen, ob die Befehle Copilot ausgeführt werden.
Um nicht nur zu sehen, ob sandkastenweise aktiviert ist, sondern genau welche Pfade lesbar, schreibbar oder blockiert sind, geben Sie /sandbox policyein. Weitere Informationen findest du unter Grundlegendes zu Dateisystemrichtlinien für lokale Sandboxing in GitHub Copilot CLI.
Sie können den Sandkastenstatus auch auf einen Blick in der Statuszeile sehen, die beim sandbox enabled Verwenden der Sandbox verwendet wird. Die Anzeige von Sandkasteninformationen in der Statuszeile ist standardmäßig aktiviert. Wenn sie deaktiviert wurde, können Sie sie wieder aktivieren:
- Geben Sie
/statuslineein. - Verschieben Sie die Auswahl nach unten in die Liste der Optionen in den Sandkasten.
- Drücken Sie die EINGABETASTE , um die Einstellung so umzuschalten, dass ein Häkchen angezeigt wird.