Skip to main content

GitHub Copilot CLI authentifizieren

Authentifizieren Sie Copilot CLI, damit Sie Copilot direkt von der Befehlszeile aus verwenden können.

Wer kann dieses Feature verwenden?

GitHub Copilot CLI ist mit allen Copilot Tarifen verfügbar. Wenn Sie Copilot von einer Organisation erhalten, muss die Copilot CLI-Richtlinie in den Einstellungen der Organisation aktiviert sein.

Informationen zur Authentifizierung

Wenn Sie Ihre eigenen LLM-Anbieter-API-Schlüssel (BYOK) verwenden, GitHub ist keine Authentifizierung erforderlich.

Für jede andere GitHub Copilot CLI Verwendung ist eine Authentifizierung erforderlich.

Wenn die Authentifizierung erforderlich ist, werden Copilot CLI drei Methoden unterstützt. Die verwendete Methode hängt davon ab, ob Sie interaktiv oder in einer automatisierten Umgebung arbeiten.

  •         **OAuth-Geräteflow**: Die standardmäßige und empfohlene Methode für die interaktive Nutzung. Führen Sie `/login` in Copilot CLI aus, generiert die CLI einen einmaligen Code und weist Sie an, sich in Ihrem Browser zu authentifizieren. Dies ist die einfachste Möglichkeit, sich zu authentifizieren.
    
  •         **Environment-Variablen**: Empfohlen für CI/CD Pipelines, Container und nicht interaktive Umgebungen. Sie legen ein unterstütztes Token als Umgebungsvariable (`COPILOT_GITHUB_TOKEN`, `GH_TOKEN`oder `GITHUB_TOKEN`) fest, und die CLI verwendet es automatisch ohne Aufforderung.
    
  •         **
            GitHub CLI Fallback**: Wenn () (GitHub CLIHinweis: die `gh` CLI, nicht `gh`) installiert und authentifiziert ist `copilot` , Copilot CLI kann das Token automatisch verwendet werden. Dies ist die niedrigste Prioritätsmethode und wird nur aktiviert, wenn keine anderen Anmeldeinformationen gefunden werden.
    

Nach der Authentifizierung Copilot CLI merkt sie sich Ihre Anmeldung und verwendet automatisch das Token für alle Copilot API-Anforderungen. Sie können sich mit mehreren Konten anmelden, und die CLI merkt sich das zuletzt verwendete Konto. Die Lebensdauer und der Ablauf des Tokens hängen davon ab, wie das Token gemäß den Einstellungen Ihres Kontos oder Ihrer Organisation erstellt wurde.

Nicht authentifizierte Verwendung

Wenn Sie die Verwendung Ihrer eigenen LLM-Anbieter-API-Schlüssel (BYOK) konfigurieren Copilot CLI , GitHub ist keine Authentifizierung erforderlich. Copilot CLI kann eine direkte Verbindung mit Ihrem konfigurierten Anbieter ohne Konto GitHub oder Token herstellen.

Ohne GitHub Authentifizierung sind die folgenden Features jedoch nicht verfügbar:

  •         `/delegate`: Erfordert Copilot Cloudagent, die auf GitHub's Servern ausgeführt wird
    
  •         GitHub MCP-Server: Erfordert Authentifizierung für den Zugriff auf GitHub APIs
    
  •         GitHub Codesuche: Erfordert Authentifizierung zum Abfragen GitHubdes Suchindexes
    

Sie können BYOK mit GitHub Authentifizierung kombinieren, um das Beste aus beiden zu erhalten: Ihr bevorzugtes Modell für KI-Antworten sowie Zugriff auf GitHubgehostete Features wie /delegate und Codesuche.

Offline-Modus

Wenn Sie die Umgebungsvariable COPILOT_OFFLINE auf true setzen, läuft Copilot CLI ohne Kontaktaufnahme mit den Servern von GitHub. Im Offlinemodus:

  • Es wird keine GitHub Authentifizierung versucht.
  • Die CLI sendet nur Netzwerkanforderungen an Ihren konfigurierten BYOK-Anbieter.
  • Telemetrie ist vollständig deaktiviert.

Der Offlinemodus ist nur vollständig isoliert, wenn Ihr BYOK-Anbieter entweder lokal oder anderweitig innerhalb derselben abgeschlossenen Umgebung existiert (z. B. ein Modell, das vor Ort ohne externen Netzwerkzugriff läuft). Wenn COPILOT_PROVIDER_BASE_URL auf einen entfernten oder Internet-zugänglichen Endpunkt verweist, werden Prompts und Code-Kontext weiterhin über das Netzwerk an diesen Anbieter gesendet. Ohne Offlinemodus, auch wenn BYOK ohne GitHub Authentifizierung verwendet wird, wird Telemetrie weiterhin normal gesendet.

Unterstützte Tokentypen

TokentypPräfixUnterstütztHinweise
OAuth-Token (Geräteflow)gho_JaStandardmethode über copilot login
Feinkörniger PATgithub_pat_JaMuss erforderliche Berechtigungen Copilot-Anforderungen enthalten
Benutzer-zu-Server-Interaktion für GitHub-Appsghu_JaÜber eine Umgebungsvariable
Classic PATghp_NeinNicht unterstützt von Copilot CLI

Wie Copilot CLI Anmeldeinformationen speichert

Standardmäßig speichert die CLI Ihr OAuth-Token im Schlüsselbund Ihres Betriebssystems unter dem Dienstnamen copilot-cli:

PlattformSchlüsselbund
macOSSchlüsselbundzugriff
WindowsAnmeldeinformationsverwaltung
Linuxlibsecret (GNOME-Schlüsselbund, KWallet)

Wenn die Systemkeychain nicht verfügbar ist – z. B. auf einem Headless Linux-Server ohne installiertes libsecret – fordert die CLI Sie auf, das Token in einer Klartext-Konfigurationsdatei unter ~/.copilot/config.json zu speichern.

Wenn Sie einen Befehl ausführen, überprüft Copilot CLI die Anmeldeinformationen in der folgenden Reihenfolge:

  1. Umgebungsvariable COPILOT_GITHUB_TOKEN
  2. Umgebungsvariable GH_TOKEN
  3. Umgebungsvariable GITHUB_TOKEN
  4. OAuth-Token aus der Systemschlüsselkette
  5. GitHub CLI (gh auth token) fallback

Hinweis

  • Eine Umgebungsvariable überschreibt unbemerkt ein gespeichertes OAuth-Token. Wenn Sie für ein anderes Tool festlegen GH_TOKEN , verwendet die CLI dieses Token anstelle des OAuth-Tokens von copilot login. Um unerwartetes Verhalten zu vermeiden, verwenden Sie nicht festgelegte Umgebungsvariablen, die von der CLI nicht verwendet werden sollen.
  • Wenn Sie BYOK-Anbieterumgebungsvariablen konfigurieren (z. B., COPILOT_PROVIDER_BASE_URL, COPILOT_PROVIDER_API_KEY), werden diese von Copilot CLI unabhängig von Ihrem GitHub-Authentifizierungsstatus für KI-Modellanforderungen verwendet. GitHub Token werden nur für GitHub-gehostete Features benötigt.

Authentifizieren mit OAuth

Der OAuth-Gerätefluss ist die Standardauthentifizierungsmethode für die interaktive Verwendung. Sie können sich authentifizieren, indem Sie /login von Copilot CLI oder copilot login von Ihrem Terminal aus ausführen.

Authentifizieren mit /login

  1. Von Copilot CLI, ausführen /login.

    Bash
    /login
    
  2. Wählen Sie das Konto aus, mit dem Sie sich authentifizieren möchten. Für die Datenresidenz geben Sie den Hostnamen Ihrer Instanz ein.

    What account do you want to log into?
     1. GitHub.com
     2. GitHub Enterprise Cloud with data residency (*.ghe.com)
    
  3. Die CLI zeigt einen einmaligen Benutzercode an und kopiert ihn automatisch in die Zwischenablage und öffnet Ihren Browser.

    Waiting for authorization...
    Enter one-time code: 1234-5678 at https://github.com/login/device
    Press any key to copy to clipboard and open browser...
    
  4. Navigieren Sie zu der Überprüfungs-URL unter https://github.com/login/device, wenn Ihr Browser nicht automatisch geöffnet wurde.

  5. Fügen Sie den einmaligen Code in das Feld auf der Seite ein.

  6. Wenn Ihre Organisation SAML-SSO verwendet, klicken Sie auf Authorize neben jeder Organisation, der Sie access erteilen möchten.

  7. Überprüfen Sie die angeforderten Berechtigungen, und klicken Sie auf Authorize GitHub Copilot CLI.

  8. Kehren Sie zu Ihrem Terminal zurück. Die CLI zeigt eine Erfolgsmeldung an, wenn die Authentifizierung abgeschlossen ist.

    Signed in successfully as Octocat. You can now use Copilot.
    

Authentifizieren mit copilot login

  1. Führen Sie vom Terminal aus copilot login. Wenn Sie GitHub Enterprise Cloud mit Data Residency verwenden, übergeben Sie den Hostnamen Ihrer Instanz.

    Bash
    copilot login
    

    Für GitHub Enterprise Cloud:

    Bash
    copilot login --host HOSTNAME
    

    Die CLI zeigt einen einmaligen Benutzercode an und kopiert ihn automatisch in die Zwischenablage und öffnet Ihren Browser.

    To authenticate, visit https://github.com/login/device and enter code 1234-5678.
    
  2. Navigieren Sie zu der Überprüfungs-URL unter https://github.com/login/device, wenn Ihr Browser nicht automatisch geöffnet wurde.

  3. Fügen Sie den einmaligen Code in das Feld auf der Seite ein.

  4. Wenn Ihre Organisation SAML-SSO verwendet, klicken Sie auf Authorize neben jeder Organisation, der Sie access erteilen möchten.

  5. Überprüfen Sie die angeforderten Berechtigungen, und klicken Sie auf Authorize GitHub Copilot CLI.

  6. Kehren Sie zu Ihrem Terminal zurück. Die CLI zeigt eine Erfolgsmeldung an, wenn die Authentifizierung abgeschlossen ist.

    Signed in successfully as Octocat.
    

Authentifizieren mit Umgebungsvariablen

Bei nicht interaktiven Umgebungen können Sie sich authentifizieren, indem Sie eine Umgebungsvariable mit einem unterstützten Token festlegen. Dies ist ideal für CI/CD-pipelines, Container oder Headless-Server.

  1. Besuchen Sie Fine-grained personal access tokens.
  2. Klicken Sie unter "Berechtigungen" auf "Berechtigungen hinzufügen", und wählen Sie "Anforderungen" ausCopilot.
  3. Klicke dann auf Token generieren.
  4. Exportieren Sie das Token in Ihrer Terminal- oder Umgebungskonfiguration. Verwenden Sie die Umgebungsvariable COPILOT_GITHUB_TOKEN, GH_TOKEN oder GITHUB_TOKEN (in der Reihenfolge der Rangfolge).

Authentifizieren mit GitHub CLI

Wenn Sie GitHub CLI installiert und authentifiziert haben, kann Copilot CLI sein Token als Fallback verwenden. Diese Methode hat die niedrigste Priorität und aktiviert nur, wenn keine Umgebungsvariablen festgelegt werden und kein gespeichertes Token gefunden wird.

  1. Überprüfen Sie, ob GitHub CLI authentifiziert ist.

    Bash
    gh auth status
    

    Wenn Sie GitHub Enterprise Cloud mit Datenresidenz verwenden, überprüfen Sie, ob der richtige Hostname authentifiziert ist.

    Bash
    gh auth status --hostname HOSTNAME
    
  2. Führen Sie copilot aus. Die Copilot CLI verwendet automatisch das token GitHub CLI.

  3. Führen Sie /user in der CLI aus, um Ihr authentifiziertes Konto zu überprüfen.

Wechseln zwischen Konten

          Copilot CLI unterstützt mehrere Konten. Sie können verfügbare Konten auflisten und zwischen ihnen innerhalb der CLI wechseln. Um die verfügbaren Konten aufzulisten, führen Sie `/user list` an der Copilot CLI Eingabeaufforderung aus. Um zu einem anderen Konto zu wechseln, geben Sie `/user switch` an der Eingabeaufforderung ein.

Um ein weiteres Konto hinzuzufügen, führen Sie copilot login aus einer neuen Terminalsitzung aus oder führen Sie den Anmeldebefehl in der CLI aus und melden Sie sich mit dem anderen Konto an.

Abmelden und Entfernen von Anmeldeinformationen

Um sich abzumelden, geben Sie /logout an der Eingabeaufforderung Copilot CLI ein. Dadurch wird das lokal gespeicherte Token entfernt, jedoch nicht auf GitHub widerrufen.

Führen Sie die folgenden Schritte aus, um die OAuth-App-Autorisierung GitHub zu widerrufen und zu verhindern, dass sie an anderer Stelle verwendet wird.

  1. Navigieren Sie zu "Einstellungen > "-Anwendungen > , die für OAuth-Apps autorisiert sind.
  2. Navigieren Sie zu Ihrer Einstellungsseite:
    1. Klicken Sie in der oberen rechten Ecke einer beliebigen Seite auf Ihr Profilbild GitHub.
    2. Klicken Sie auf Einstellungen.
  3. Klicken Sie in der linken Randleiste auf "Anwendungen".
  4. Klicken Sie unter Authorized OAuth Apps auf neben GitHub CLI, um das Menü zu erweitern, und wählen Sie Revoke aus.