Aller au contenu

GitHub Copilot

GitHub Copilot est l’assistant de codage IA de GitHub. Il fournit un accès aux modèles Copilot pour votre compte et plan GitHub. OpenClaw peut utiliser Copilot comme fournisseur de modèle ou runtime d’agent de trois manières différentes.

Utilisez le flux de connexion natif par appareil pour obtenir un jeton GitHub, puis échangez-le contre des jetons de l’API Copilot lors de l’exécution de OpenClaw. C’est le chemin par défaut et le plus simple car il ne nécessite pas VS Code.

  1. Run the login command

    Fenêtre de terminal
    openclaw models auth login-github-copilot

    Vous serez invité à visiter une URL et à entrer un code à usage unique. Gardez le terminal ouvert jusqu’à ce qu’il se termine.

  2. Set a default model

    Fenêtre de terminal
    openclaw models set github-copilot/claude-opus-4.7

    Ou dans la configuration :

    {
    agents: {
    defaults: { model: { primary: "github-copilot/claude-opus-4.7" } },
    },
    }
IndicateurDescription
--yesIgnorer l’invite de confirmation
--set-defaultAppliquer également le modèle par défaut recommandé par le provider
Fenêtre de terminal
# Skip confirmation
openclaw models auth login-github-copilot --yes
# Login and set the default model in one step
openclaw models auth login --provider github-copilot --method device --set-default

Si vous possédez déjà un jeton d’accès GitHub OAuth pour Copilot, importez-le lors de la configuration sans tête (headless) avec openclaw onboard --non-interactive :

Fenêtre de terminal
openclaw onboard --non-interactive --accept-risk \
--auth-choice github-copilot \
--github-copilot-token "$COPILOT_GITHUB_TOKEN" \
--skip-channels --skip-health

Vous pouvez également omettre --auth-choice ; le passage de --github-copilot-token déduit le choix d’authentification du provider GitHub Copilot. Si l’indicateur est omis, l’onboarding revient à COPILOT_GITHUB_TOKEN, GH_TOKEN, puis GITHUB_TOKEN. Utilisez --secret-input-mode ref avec COPILOT_GITHUB_TOKEN défini pour stocker un tokenRef pris en charge par l’environnement au lieu du texte brut dans auth-profiles.json.

TTY interactif requis

Le flux de connexion par appareil (device-login) nécessite un TTY interactif. Exécutez-le directement dans un terminal, et non dans un script non interactif ou un pipeline CI.

La disponibilité des modèles dépend de votre plan

La disponibilité des modèles Copilot dépend de votre plan GitHub. Si un modèle est rejeté, essayez un autre ID (par exemple github-copilot/gpt-5.5). Consultez la page modèles pris en charge par plan Copilot de GitHub pour la liste actuelle des modèles.

APIActualisation dynamique du catalogue depuis l'API Copilot

Une fois que le chemin d’authentification par connexion d’appareil (ou variable d’environnement) a résolu un jeton GitHub, OpenClaw actualise le catalogue de modèles à la demande depuis ${baseUrl}/modelsOpenClaw (le même point de terminaison utilisé par VS Code Copilot) afin que le runtime suive les droits par compte et les fenêtres de contexte précises sans agitation de manifeste. Les modèles Copilot nouvellement publiés deviennent visibles sans mise à niveau d’OpenClaw, et les fenêtres de contexte reflètent les limites réelles par modèle (par exemple 400k pour la série gpt-5.x, 1M pour les variantes internes claude-opus-*-1mGitHub).

Le catalogue statique intégré reste le repli visible lorsque la découverte est désactivée, que l’utilisateur n’a aucun profil d’authentification GitHub, que l’échange de jetons échoue, ou que l’appel HTTPS /models génère des erreurs. Pour refuser et s’appuyer entièrement sur le catalogue de manifestes statiques (scénarios hors ligne / isolés) :

{
plugins: {
entries: {
"github-copilot": {
config: { discovery: { enabled: false } },
},
},
},
}
Sélection du transport

Les ID de modèle Claude utilisent automatiquement le transport Messages Anthropic. Les modèles GPT, la série o et Gemini conservent le transport Réponses OpenAI. OpenClaw sélectionne le transport correct en fonction de la référence du modèle.

Compatibilité des requêtes

OpenClaw envoie des en-têtes de requête de style IDE Copilot sur les transports Copilot, y compris la compactage intégré, les résultats d’outils et les tours de suivi d’image. Il n’active pas la continuation des réponses au niveau du fournisseur pour Copilot, sauf si ce comportement a été vérifié par rapport à l’API de Copilot.

<Accordion title=“Ordre de résolution des variables d’environnement”OpenClaw> OpenClaw résout l’authentification Copilot à partir des variables d’environnement selon l’ordre de priorité suivant :

| Priorité | Variable | Notes |
| -------- | --------------------- | -------------------------------- |
| 1 | `COPILOT_GITHUB_TOKEN` | Priorité la plus élevée, spécifique à Copilot |
| 2 | `GH_TOKEN`GitHubCLI | Jeton GitHub CLI (alternative) |
| 3 | `GITHUB_TOKEN`GitHubOpenClaw | Jeton GitHub standard (le plus bas) |
Lorsque plusieurs variables sont définies, OpenClaw utilise celle ayant la priorité la plus élevée.
Le flux de connexion par appareil (`openclaw models auth login-github-copilot`) stocke
son jeton dans le magasin de profils d'authentification et prend la priorité sur toutes les variables d'environnement.

<Accordion title=“Stockage du jeton”GitHubAPIOpenClaw> La connexion stocke un jeton GitHub dans le magasin de profils d’authentification et l’échange contre un jeton API Copilot lors de l’exécution d’OpenClaw. Vous n’avez pas besoin de gérer le jeton manuellement.

GitHub Copilot peut également servir de fournisseur d’embeddings pour memory search. Si vous disposez d’un abonnement Copilot et que vous êtes connecté, OpenClaw peut l’utiliser pour les embeddings sans clé API distincte.

Définissez memorySearch.providerGitHubGitHubOpenClawAPI explicitement pour utiliser les embeddings GitHub Copilot. Si un jeton GitHub est disponible, OpenClaw découvre les modèles d’embeddings disponibles depuis l’API Copilot et sélectionne le meilleur automatiquement.

{
agents: {
defaults: {
memorySearch: {
provider: "github-copilot",
// Optional: override the auto-discovered model
model: "text-embedding-3-small",
},
},
},
}
  1. OpenClaw résout votre jeton GitHub (à partir des variables d’environnement ou du profil d’authentification).
  2. Il l’échange contre un jeton API Copilot de courte durée.
  3. Interroge le point de terminaison Copilot /models pour découvrir les modèles d’incorporation disponibles.
  4. Choisit le meilleur modèle (préfère text-embedding-3-small).
  5. Envoie les demandes d’incorporation au point de terminaison Copilot /embeddings.

La disponibilité des modèles dépend de votre plan GitHub. Si aucun modèle d’incorporation n’est disponible, OpenClaw ignore Copilot et essaie le fournisseur suivant.

Model selection

Choix des fournisseurs, références de modèle et comportement de basculement.

OAuth and auth

Détails d’authentification et règles de réutilisation des informations d’identification.