Hinweis
Copilot SDK ist zurzeit in Öffentliche Vorschau. Funktionalität und Verfügbarkeit können geändert werden.
Übersicht über die Authentifizierungsmethoden
GitHub Copilot SDK unterstützt mehrere Authentifizierungsmethoden für unterschiedliche Anwendungsfälle.
| Methode | Anwendungsfall | Copilot Abonnement erforderlich | |--------|----------|-------------------------------| | Angemeldeter GitHub-Benutzer | Interaktive Apps, bei denen sich Benutzer mit GitHub anmelden | Ja | | OAuth-App GitHub | Apps, die im Namen von Benutzern über OAuth handeln | Ja | | Umgebungsvariablen | CI/CD, Automatisierung, Server-zu-Server | Ja | | BYOK (Bring deinen eigenen Schlüssel mit) | Verwenden Eigener API-Schlüssel (Azure AI Foundry , OpenAI usw.) | No |
Angemeldeter GitHub-Benutzer
Dies ist die Standardauthentifizierungsmethode, wenn das GitHub Copilot-CLI interaktiv ausgeführt wird. Siehe Authentifizierung von GitHub Copilot CLI. Benutzer authentifizieren sich über den GitHub OAuth-Gerätefluss, und das SDK verwendet ihre gespeicherten Anmeldeinformationen.
Funktionsweise:
- Der Benutzer führt die
copilotCLI aus und meldet sich über GitHub OAuth an. - Anmeldeinformationen werden sicher im Systemschlüsselbund gespeichert.
- Das SDK verwendet automatisch gespeicherte Anmeldeinformationen.
SDK-Konfiguration:
import { CopilotClient } from "@github/copilot-sdk";
// Default: uses signed-in user credentials
const client = new CopilotClient();
Beispiele in anderen Sprachen finden Sie unter Authentifizierung im github/copilot-sdk Repository.
Wann diese Methode verwendet werden soll:
- Desktopanwendungen, in denen Benutzer direkt interagieren
- Entwicklungs- und Testumgebungen
- Jedes Szenario, in dem sich ein Benutzer interaktiv anmelden kann
OAuth GitHub-App
Verwenden Sie eine OAuth-App GitHub , um Benutzer über Ihre Anwendung zu authentifizieren und ihre Anmeldeinformationen an das SDK zu übergeben. Auf diese Weise kann Ihre Anwendung API-Anforderungen im Auftrag von Benutzern durchführen GitHub Copilot , die Ihre App autorisieren.
Funktionsweise:
- Der Benutzer autorisiert Ihre OAuth-App GitHub .
- Ihre App empfängt ein Benutzerzugriffstoken (
gho_oderghu_Präfix). - Übergeben Sie das Token über die
githubTokenOption an das SDK.
SDK-Konfiguration:
import { CopilotClient } from "@github/copilot-sdk";
const client = new CopilotClient({
githubToken: userAccessToken, // Token from OAuth flow
useLoggedInUser: false, // Don't use stored CLI credentials
});
Beispiele in anderen Sprachen finden Sie unter Authentifizierung im github/copilot-sdk Repository.
Unterstützte Tokentypen:
gho_— OAuth-Benutzerzugriffstokenghu_— GitHub App-Benutzerzugriffstokengithub_pat_— Fine-grained personal access tokens
Nicht unterstützt:
ghp_— Personal access tokens (classic) (abschließend)
Wann diese Methode verwendet werden soll:
- Webanwendungen, in denen sich Benutzer über GitHub
- Auf SaaS-Anwendungen (Software-as-a-Service) aufbauend GitHub Copilot
- Jede Mehrbenutzeranwendung, in der Sie Anforderungen im Namen verschiedener Benutzer stellen müssen
Umgebungsvariablen
Für Automatisierungs-, CI/CD-Pipelines und Server-zu-Server-Szenarien können Sie sich mithilfe von Umgebungsvariablen authentifizieren.
Unterstützte Umgebungsvariablen (in Prioritätsreihenfolge):
COPILOT_GITHUB_TOKEN— Empfohlen für die explizite Copilot VerwendungGH_TOKEN— GitHub CLI kompatibelGITHUB_TOKEN— GitHub Actions kompatibel
Das SDK erkennt und verwendet diese Umgebungsvariablen automatisch, ohne dass Codeänderungen erforderlich sind:
import { CopilotClient } from "@github/copilot-sdk";
// Token is read from environment variable automatically
const client = new CopilotClient();
Wann diese Methode verwendet werden soll:
- CI/CD-Pipelines (GitHub Actions, Jenkins, etc.)
- Automatisiertes Testen
- Serverseitige Anwendungen mit Dienstkonten
- Entwicklung, wenn Sie keine interaktive Anmeldung verwenden möchten
BYOK (Bring Your Own Key)
MIT BYOK können Sie Ihre eigenen API-Schlüssel von Modellanbietern wie Azure AI Foundry , OpenAI oder Anthropic verwenden. GitHub Copilot Dadurch wird die Authentifizierung vollständig umgangen.
Wichtige Vorteile:
- Kein GitHub Copilot Abonnement erforderlich
- Verwenden von Enterprise-Modellbereitstellungen
- Direkte Abrechnung mit Ihrem Modellanbieter
- Unterstützung für Azure AI Foundry , OpenAI, Anthropic und OpenAI-kompatible Endpunkte
Vollständige Einrichtungsanweisungen, einschließlich Anbieterkonfigurationsoptionen, Einschränkungen und Codebeispiele, finden Sie unter Bring Your Own Key (BYOK).
Authentifizierungspriorität
Wenn mehrere Authentifizierungsmethoden verfügbar sind, verwendet das SDK sie in dieser Prioritätsreihenfolge:
- Explizit
githubToken— Token, das direkt an den SDK-Konstruktor übergeben wird - Direktes API-Token –
GITHUB_COPILOT_API_TOKENmitCOPILOT_API_URL - Tokens von Umgebungsvariablen –
COPILOT_GITHUB_TOKEN→GH_TOKEN→GITHUB_TOKEN - Gespeicherte OAuth-Anmeldeinformationen – Aus vorheriger
copilotCLI-Anmeldung - **
GitHub CLI
** —
gh authAnmeldeinformationen
Deaktivieren der automatischen Anmeldung
Um zu verhindern, dass das SDK automatisch gespeicherte Anmeldeinformationen oder GitHub CLI Authentifizierung verwendet, legen Sie die useLoggedInUser Option auf false:
const client = new CopilotClient({
useLoggedInUser: false, // Only use explicit tokens
});
Beispiele in anderen Sprachen finden Sie unter Authentifizierung im github/copilot-sdk Repository.
Nächste Schritte
- Bring Your Own Key (BYOK)
- MCP-Serverdokumentation – Herstellen einer Verbindung mit externen Tools mithilfe des SDK