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 zur lokalen Sandkastenkonfiguration
Sie können den /sandbox Schrägstrichbefehl verwenden, um zusätzliche Pfade zu gewähren, den Netzwerkzugriff anzupassen oder sandkastenbasiertes Aktivieren oder Deaktivieren zu aktivieren oder zu deaktivieren.
Eine konzeptionelle Übersicht über Cloud- und lokale Sandboxes Copilotfinden Sie unter Informationen zu Cloud- und lokalen Sandboxes für GitHub Copilot.
Öffnen der Sandkastenkonfiguration
-
Starten Sie eine Copilot CLI Sitzung.
-
Geben Sie den
/sandboxSchrägstrichbefehl ein.Dadurch wird eine interaktive Konfigurationsschnittstelle mit drei Registerkarten geöffnet: Allgemein, Dateisystem und Netzwerk. Verwenden Sie TAB , um zwischen Registerkarten zu wechseln. Drücken Sie ESC , um Ihre Änderungen zu speichern und die Konfiguration zu schließen.
Konfigurieren allgemeiner Einstellungen
Auf der Registerkarte " Allgemein " wird das Verhalten der Sandbox auf oberster Ebene gesteuert.
| Setting | Description |
|---|---|
| Aktivieren von Sandkasten | Führen Sie Shellbefehle innerhalb der Sandbox aus. Sie können dies auch mit /sandbox enable und /sandbox disable umschalten. |
| Sandkastenumgehung zulassen | Lassen Sie die Modellanforderung anfordern, dass einzelne Befehle außerhalb der Sandbox ausgeführt werden, vorbehaltlich der Genehmigung. Standardmäßig aktiviert. Weitere Informationen finden Sie unter Zulassen der Sandkastenumgehung. |
| Sandkasten-MCP-Server | Führen Sie MCP-Server innerhalb der Sandbox aus. Standardmäßig aktiviert. |
| Sandkasten-LSP-Server | Führen Sie Sprachserver (LSP-Server) innerhalb der Sandbox aus. Standardmäßig aktiviert. |
| Git authentifizieren | Einfügen eines GitHub Tokens, sodass authentifizierte HTTPS git innerhalb der Sandbox ohne Anmeldeinformationshilfsprogramm funktioniert. Standardmäßig aktiviert. |
| Authentifizieren gh | Exportieren Sie GH_TOKEN so, dass GitHub CLI (Hinweis: die gh CLI, nicht copilot) innerhalb der Sandbox funktioniert, ohne ihre gespeicherten Anmeldeinformationen (Konfigurationsverzeichnis oder Betriebssystemschlüsselbund) zu erreichen, die die Sandbox blockiert. Standardmäßig aktiviert. |
| Zulassen des Schlüsselbundzugriffs | Nur unter macOS verfügbar. Lassen Sie Sandkastenbefehle die macOS-Schlüsselkette verwenden, z. B. für den Zugriff auf Anmeldeinformationen, die von git und gh Anmeldeinformationshilfsern verwendet werden. Standardmäßig deaktiviert. |
Zulassen der Sandkastenumgehung
Die Einstellung "Sandkastenumgehung zulassen " steuert, was passiert, wenn Copilot ein Befehl nicht erfolgreich innerhalb der Sandbox ausgeführt werden kann.
- On (default): If a command fails inside the sandbox, you are prompted to allow Copilot to run the command outside the sandbox. Ihre Antwort auf diese Eingabeaufforderung gilt für diesen spezifischen Versuch, den Befehl auszuführen. Optional können Sie den Sandkasten für die restliche Sitzung deaktivieren oder stattdessen eine Anweisung Copilot für die Arbeit eingeben.
- Deaktiviert: Wenn Copilot ein Befehl nicht erfolgreich im Sandkasten ausgeführt werden kann, funktioniert er nicht mehr an der Aufgabe und meldet den Fehler.
Konfigurieren von Dateisystemeinstellungen
Auf der Registerkarte "Dateisystem " wird gesteuert, auf welche Verzeichnisse und Dateien der Sandkastenprozess zugreifen kann.
Standardmäßig Copilot wird Lese-/Schreibberechtigungen für alles im und unter dem aktuellen Arbeitsverzeichnis gewährt. Wenn Sie sich in einem Git-Repository befinden, Copilot wird auch Folgendes gewährt:
- Lese-/Schreibberechtigung für alles im Und unter dem Verzeichnis des Repositorys
.git. - Lesen Sie auf Windows und macOS die Berechtigung für alles andere im Repository über dem aktuellen Arbeitsverzeichnis.
- Unter Linux: Lese-/Schreibberechtigung für Dateien über dem aktuellen Arbeitsverzeichnis im Repository.
| Setting | Description |
|---|---|
| Arbeitsverzeichnis einschließen | Standardmäßig aktiviert. Das aktuelle Arbeitsverzeichnis (und das Verzeichnis des eingeschlossenen Repositorys .git , falls vorhanden) wird automatisch der Liste der Lese-/Schreibpfade hinzugefügt. Deaktivieren Sie diese Option, wenn dem Arbeitsverzeichnis automatisch Lese-/Schreibzugriff gewährt werden soll, und lassen Sie den Zugriff manuell auf bestimmte Pfade zu. |
Wichtig
Wenn Sie die Option "Arbeitsverzeichnis einschließen" deaktivieren, wird der Zugriff auf alles in und unterhalb des .git Verzeichnisses eines Git-Repositorys entfernt. Daher treten Git-Vorgänge wie status, add, commit, und diff schlagen fehl, es sei denn, Sie fügen manuell Zugriff für dieses Verzeichnis hinzu.
Hinzufügen von Dateisystempfadregeln
Sie können Pfade angeben, die Sie der Sandbox hinzufügen möchten. Auf diese Weise können Sie Schreibschutz oder Lese-/Schreibzugriff auf Verzeichnisse und Dateien außerhalb des Arbeitsverzeichnisses gewähren. Sie können auch den Zugriff verweigern, um Verzeichnisse und Dateien aus der Sandbox auszuschließen.
-
Drücken Sie auf der Registerkarte " Dateisystem " A , um eine neue Pfadregel hinzuzufügen.
-
Geben Sie eine Datei oder einen Verzeichnispfad ein. Verwenden Sie einen absoluten Pfad,
/Users/octocat/projects/appz. B. unter macOS oder Linux oderC:\Users\octocat\projects\appauf Windows. Betätigen Sie anschließend die Eingabetaste.Hinweis
Das Hinzufügen eines Verzeichnisses enthält die gesamte Unterstruktur. Wildcards werden nicht unterstützt.
-
Verwenden Sie die NACH-LINKS- und NACH-RECHTS-TASTE auf der Tastatur, um zwischen den Berechtigungsoptionen zu navigieren: Lese-/Schreibzugriff, Schreibgeschützt, verweigert. Drücken Sie dann die EINGABETASTE , um eine Option auszuwählen.
Nachdem Sie Dateisystempfade hinzugefügt haben, können Sie sie bearbeiten oder löschen.
- Verwenden Sie die NACH-OBEN- und NACH-UNTEN-TASTE, um einen Pfad auszuwählen.
- Drücken Sie die EINGABETASTE , um den Pfad zu bearbeiten, oder D , um ihn zu löschen.
Konfigurieren von Netzwerkeinstellungen
Auf der Registerkarte "Netzwerk " wird gesteuert, ob Sandkastenprozesse Netzwerkverbindungen herstellen können.
| Setting | Description |
|---|---|
| Ausgehende Verbindungen zulassen | Standardmäßig aktiviert. Wenn diese Option aktiviert ist, kann der Sandkastenprozess externe Hosts im Internet erreichen. Deaktivieren Sie diese Option, um den Sandkasten vollständig vom Netzwerk zu isolieren. |
| Lokales Netzwerk zulassen | Standardmäßig aktiviert. Wenn diese Option aktiviert ist, kann der Sandbox-Prozess Hosts in Ihrem lokalen Netzwerk erreichen (zum Beispiel localhost oder andere Geräte in Ihrem LAN). Deaktivieren Sie diese Option, um zu verhindern, dass der Sandkasten lokale oder private Netzwerkdienste erreicht. |
Schnelles Aktivieren und Deaktivieren der Sandbox
Sie können den Sandkasten ein- oder ausschalten, ohne die vollständige Konfigurationsschnittstelle zu öffnen:
- Enable: Geben Sie
/sandbox enablein der Copilot CLI-Sitzung ein. - Deaktivieren: Geben Sie
/sandbox disablein die Copilot CLI-Sitzung ein.
Diese Befehle ändern die Einstellung "Sandkasten aktivieren " auf der Registerkarte " Allgemein ".
Anzeigen ihrer aktuellen Sandkasteneinstellungen
Einstellungen werden unter dem settings.json Schlüssel in Ihrem sandbox Konfigurationsverzeichnis gespeichertCopilot CLI. Weitere Informationen zum Konfigurationsverzeichnis finden Sie unter GitHub Copilot CLI-Konfigurationsverzeichnis.
Sie können Ihre aktuellen Sandkasteneinstellungen innerhalb einer Copilot CLI Sitzung anzeigen.
- Geben Sie
/settingsein. - Drücken Sie / , um nach Einstellungen zu suchen.
- Geben Sie den Typ
sandboxein, um die Liste der Einstellungen zu filtern.