Skip to main content
Skip to content

Erstellen einer benutzerdefinierten Umgebung für Agents

Führen Sie Copilot Sessions mit Ihren eigenen Tools und Abhängigkeiten auf einem Linux-Computer oder in einem Codespace aus.

Als Alternative zur Verwendung von GitHub Actions oder von Cloud-Sandboxes, die von GitHub verwaltet werden, können Sie eine benutzerdefinierte Umgebung für GitHub Copilot-Sitzungen bereitstellen. Eine benutzerdefinierte Umgebung ist ein Linux-Computer oder Codespace, auf dem der Copilot Host ausgeführt wird, copilotd

Sie erstellen den Host und registrieren ihn mit Ihrem GitHub Konto. Sie können es dann als Umgebung in einem Client auswählen, der benutzerdefinierte Umgebungen unterstützt. Die Registrierung stellt einen vorhandenen Host für Clients zur Verfügung.

Sie benötigen eine Copilot Lizenz und Zugriff auf benutzerdefinierte Umgebungen. Sie sind für die Maschine, den Arbeitsbereich und die Tools verantwortlich und halten den Host am Laufen und auf dem neuesten Stand. Durch das Schließen einer Clientverbindung werden weder der Host noch der Computer beendet.

Verwenden eines Linux-Computers

Verwenden Sie Copilot CLI, um den Host auf einem Linux-Computer auszuführen und zu registrieren.

1. Host vorbereiten

Sie benötigen einen Linux-Computer und npm oder Homebrew, um die Vorabversion von Copilot CLI zu installieren. Installationsanforderungen und andere Installationsmethoden finden Sie unter Installation von GitHub Copilot CLI.

  1. Bereiten Sie auf dem Computer, den Sie verwenden möchten, den Arbeitsbereich vor, und installieren Sie die Tools und Abhängigkeiten, die Ihre Agentsitzungen benötigen.

  2. Installieren Sie die Vorabversion von Copilot CLI mit npm:

    npm install -g @github/copilot@prerelease
    

    Alternativ können Sie es mit Homebrew installieren:

    brew install copilot-cli@prerelease
    

2. Host registrieren

Der Host registriert sich als Umgebung, die sich im Besitz des Kontos befindet, mit dem Sie sich authentifizieren.

  1. Melden Sie sich an GitHub.com , und folgen Sie den Authentifizierungsaufforderungen:

    copilot login
    
  2. Starten Sie Copilot CLI , damit Ihre Kontoeinstellungen und Featurekennzeichnungen geladen werden, und beenden Sie dann die interaktive Sitzung:

    copilot
    
  3. Starten Sie den Host der Umgebung. Ersetzen Sie HOST-NAME durch einen Namen, den Sie in der Umgebungsauswahl erkennen werden.

    copilot --environment-host "HOST-NAME"
    

    Der Befehl startet den Host und registriert den Computer unter dem von Ihnen ausgewählten Namen. Führen Sie den Host aus, damit Clients eine Verbindung damit herstellen können.

3. Wählen Sie die Umgebung aus.

Stellen Sie eine Verbindung von einem Client her, der die Auswahl registrierter Umgebungen unterstützt.

  1. Melden Sie sich beim Client mit demselben GitHub Konto an, das Sie zum Registrieren des Hosts verwendet haben.

  2. Öffnen Sie Environments, und wählen Sie den Host mit dem Namen aus, den Sie registriert haben.

    Der Client verbindet sich mit dem laufenden Host, in dem Ihre Agentsitzungen ausgeführt werden.

Verwenden von GitHub Codespaces

Verwenden Sie ein Development-Container-Feature, um den Host automatisch zu starten und zu registrieren, wenn der Codespace gestartet wird. Sie benötigen Zugriff auf GitHub Codespaces. Um die folgenden Befehle zu verwenden, benötigen Sie auch eine authentifizierte Installation von GitHub CLI.

1. Codespace konfigurieren

Die Konfiguration des Entwicklungscontainers bestimmt, wie der Host installiert wird.

  1. Erstellen oder bearbeiten Sie .devcontainer/devcontainer.json in Ihrem Repository, um das Hostfeature hinzuzufügen. Beispiele:

    {
      "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
      "features": {
        "ghcr.io/github/copilot-host/copilotd:0": {}
      }
    }
    
  2. Konfigurieren Sie optional das Feature für Ihre Umgebung. Verwenden Sie für den Vorabkanal :prerelease anstelle von :0. Um zusätzliche Repositorys zu klonen, fügen Sie eine repositories Option im Konfigurationsobjekt des Features hinzu:

    "ghcr.io/github/copilot-host/copilotd:0": {
      "repositories": "OWNER/REPOSITORY-1,OWNER/REPOSITORY-2"
    }
    

    Ersetzen Sie OWNER/REPOSITORY-2 und OWNER/REPOSITORY-1 durch die Besitzer und Namen der zu klonenden Repositorys.

2. Host starten und registrieren

Die Funktion wird mit copilotd gestartet und registriert den Codespace automatisch, wenn der Container gestartet wird.

  1. Um einen neuen Codespace zu erstellen, committen und pushen Sie Ihre Konfiguration des Entwicklungscontainers. Erstellen Sie dann einen Codespace für diese Verzweigung. Ersetzen Sie OWNER/REPOSITORY durch den Repository-Eigentümer und -Namen und BRANCH durch den Branch, der Ihre Konfiguration enthält.

    gh codespace create -r OWNER/REPOSITORY -b BRANCH
    

    Erstellen Sie für einen vorhandenen Codespace stattdessen den Container neu. Ersetzen Sie CODESPACE-NAME durch den Namen Ihres Codespaces.

    gh codespace rebuild -c CODESPACE-NAME
    
  2. Warten Sie, bis der Container gestartet ist und der Host registriert ist.

3. Wählen Sie die Codespace-Umgebung aus.

Verwenden Sie einen Client, der die Auswahl registrierter Umgebungen unterstützt. Das Token, das für die Anmeldung beim Client verwendet wird, muss den codespace Bereich enthalten.

  1. Melden Sie sich beim Client mit dem GitHub Konto an, das den Codespace besitzt.

  2. Öffnen Sie Umgebungen , und wählen Sie den Codespace aus.

    Wenn der Codespace beendet wird, wird er durch das Herstellen der Verbindung reaktiviert und automatisch gestartet copilotd.

Führen Sie zum Überprüfen der Hostprotokolle den folgenden Befehl im Codespace aus:

tail -F /workspaces/.copilotd/logs/copilotd.log