Skip to main content

Het GitHub-token voor authenticatie wisselen tijdens runtime

Zo voer je de Copilot CLI uit met het GitHub-token van elke gebruiker die bijvoorbeeld via Socialite is geauthenticeerd.
Voor een Personal Access Token is de permissie Copilot Requests vereist. Voor een token via Socialite geldt naar verwachting dezelfde eis. Als je via Socialite geen bruikbaar token kunt verkrijgen, laat je gebruikers direct een PAT invoeren.
Deze methode is alleen beschikbaar in stdio-modus. In TCP-modus blijft het Copilot CLI-proces draaien, dus kun je tijdens runtime niet wisselen. Als je in TCP-modus (cli_url) github_token of use_logged_in_user opgeeft, krijg je een foutmelding.
Het hieronder beschreven “GitHub-token per session (v0.3.0+)” is wél beschikbaar in TCP-modus.

De optie github_token

Dit is de officiële optie van de SDK. Het token wordt via de omgevingsvariabele COPILOT_SDK_AUTH_TOKEN aan de CLI doorgegeven.

De optie use_logged_in_user

Als je github_token opgeeft, wordt use_logged_in_user automatisch false. Hierdoor gebruikt de CLI geen opgeslagen OAuth-tokens of gh CLI-authenticatie, maar alleen het expliciet doorgegeven token. Je kunt use_logged_in_user ook expliciet op true zetten.
Als je use_logged_in_user op false zet zonder github_token, wordt de flag --no-auto-login toegevoegd en voert de CLI geen automatische login uit.

GitHub-token per session (v0.3.0+)

Met het veld gitHubToken van SessionConfig kun je binnen hetzelfde CLI-proces per session een ander GitHub-token opgeven (voor multi-tenant scenario’s). Dit token wordt doorgegeven als parameter van de session.create JSON-RPC, dus het is beschikbaar in zowel stdio-modus als TCP-modus. Ook in TCP-modus, waar de CLI al draait, kun je per session van token wisselen.
Voorbeeld van gebruik in TCP-modus:
Dit werkt onafhankelijk van het github_token op clientniveau (het token bij het starten van het CLI-proces). Gebruik dit wanneer je per session van gebruikerstoken wilt wisselen.
Raadpleeg de GitHub-repository voor de meest actuele informatie.
Laatst gewijzigd op 6 september 2026