인증하는 GitHub 토큰의 런타임 전환
Socialite 등을 사용해 인증한 사용자별 GitHub 토큰으로 Copilot CLI를 실행하는 방법입니다.Personal Access Token에는
Copilot Requests 권한이 필요합니다. Socialite 토큰에서도 동일한 요건이 될 것입니다.
Socialite에서 사용할 수 있는 토큰을 얻을 수 없는 경우, PAT를 직접 입력받는 방식으로 합니다.cli_url)에서 github_token이나 use_logged_in_user를 지정하면 에러가 발생합니다.
아래 “세션별 GitHub 토큰(v0.3.0+)“은 TCP 모드에서도 사용할 수 있습니다.
github_token 옵션
SDK의 공식 옵션입니다. 토큰은 환경 변수 COPILOT_SDK_AUTH_TOKEN을 통해 CLI에 전달됩니다.
use_logged_in_user 옵션
github_token을 지정하면 자동으로 use_logged_in_user가 false가 됩니다.
이로써 CLI는 저장된 OAuth 토큰이나 gh CLI 인증을 사용하지 않고, 명시적으로 전달한 토큰만 사용합니다.
명시적으로 use_logged_in_user를 true로 설정할 수도 있습니다.
github_token 없이 use_logged_in_user를 false로 하면 --no-auto-login 플래그가 추가되어 CLI는 자동 로그인을 수행하지 않습니다.
세션별 GitHub 토큰(v0.3.0+)
SessionConfig의 gitHubToken 필드를 사용하면 동일한 CLI 프로세스 내에서 세션별로 다른 GitHub 토큰을 지정할 수 있습니다(멀티테넌트 대응).
이 토큰은 session.create JSON-RPC의 매개변수로 전달되므로 stdio 모드와 TCP 모드 모두에서 사용 가능합니다. CLI가 이미 기동된 TCP 모드에서도 세션 단위로 토큰을 전환할 수 있습니다.
github_token(CLI 프로세스 기동 시의 토큰)과는 별도로 동작합니다.
세션 단위로 사용자 토큰을 전환하려면 이 옵션을 사용하세요.
최신 정보는 GitHub 저장소를 참고하세요.