Skip to main content

GitHub Copilot CLI를 인증하기

명령줄에서 Copilot CLI을(를) 직접 사용할 수 있도록 Copilot을(를) 인증하세요.

누가 이 기능을 사용할 수 있나요?

GitHub Copilot CLI 는 모든 Copilot 계획에서 사용할 수 있습니다. 조직으로부터 Copilot를 수신하는 경우, 조직의 설정에서 Copilot CLI 정책이 사용하도록 설정되어야 합니다.

인증 정보

BYOK(사용자 고유의 LLM 공급자 API 키) GitHub 를 사용하는 경우 인증이 필요하지 않습니다.

다른 GitHub Copilot CLI 사용법은 인증이 필요합니다.

인증이 필요한 Copilot CLI 경우 세 가지 방법을 지원합니다. 사용하는 방법은 대화형으로 작업하는지 또는 자동화된 환경에서 작업하는지에 따라 달라집니다.

  •         **OAuth 장치 흐름**: 대화형 사용을 위한 기본이자 권장 방법입니다. 실행 `/login`Copilot CLI하면 CLI가 일회성 코드를 생성하고 브라우저에서 인증하도록 지시합니다. 인증하는 가장 간단한 방법입니다.
    
  •         ** 환경 변수**: CI/CD pipelines, 컨테이너 및 비대화형 환경에 권장됩니다. 지원되는 토큰을 환경 변수(`COPILOT_GITHUB_TOKEN``GH_TOKEN`또는`GITHUB_TOKEN`)로 설정하고 CLI는 메시지를 표시하지 않고 자동으로 사용합니다.
    
  •         **
            GitHub CLI 페일백**: GitHub CLI(`gh`) (참고: `gh` CLI, `copilot`가 아님)이 설치되고 인증된 경우, Copilot CLI는 해당 토큰을 자동으로 사용할 수 있습니다. 이는 가장 낮은 우선 순위 메서드이며 다른 자격 증명을 찾을 수 없는 경우에만 활성화됩니다.
    

인증 Copilot CLI 되면 로그인을 기억하고 모든 Copilot API 요청에 토큰을 자동으로 사용합니다. 여러 계정으로 로그인할 수 있으며 CLI는 마지막으로 사용한 계정을 기억합니다. 토큰 수명 및 만료는 계정 또는 조직 설정에서 토큰을 만든 방법에 따라 달라집니다.

인증되지 않은 사용

BYOK(사용자 고유의 LLM 공급자 API 키) Copilot CLI 를 사용하도록 구성하는 GitHub 경우 인증이 필요하지 않습니다. Copilot CLI은 계정이나 토큰 없이 GitHub 구성된 공급자에 직접 연결할 수 있습니다.

그러나 인증이 없으면 GitHub 다음 기능을 사용할 수 없습니다.

  •         `/delegate`: Copilot 클라우드 에이전트의 서버에서 GitHub이(가) 실행되어야 합니다.
    
  •         GitHub MCP 서버: API에 액세스 GitHub 하려면 인증 필요
    
  •         GitHub 코드 검색: GitHub의 검색 인덱스를 쿼리하려면 인증이 필요합니다.
    

BYOK를 GitHub 인증과 결합하면 AI 응답을 위한 선호 모델 사용은 물론, /delegate 및 코드 검색과 같은 GitHub 호스팅 기능을 모두 활용할 수 있는 장점이 있습니다.,

오프라인 모드

환경 변수 COPILOT_OFFLINEtrue로 설정하면 Copilot CLI가 GitHub의 서버에 연결하지 않고 실행됩니다. 오프라인 모드:

  • 인증을 시도하지 않습니다 GitHub .
  • CLI는 구성된 BYOK 공급자에 대해서만 네트워크 요청을 합니다.
  • 원격 분석은 완전히 사용하지 않도록 설정되어 있습니다.

오프라인 모드는 BYOK 공급업체가 로컬에 있거나 동일한 격리된 환경(예: 외부 네트워크 액세스가 없는 온프레미스에서 실행되는 모델) 내에 있는 경우에만**완전한 에어갭 ** 상태가 됩니다. 원격 또는 인터넷에 액세스할 수 있는 엔드포인트를 가리키는 경우 COPILOT_PROVIDER_BASE_URL 프롬프트 및 코드 컨텍스트는 네트워크를 통해 해당 공급자에게 계속 전송됩니다. 오프라인 모드가 없으면, GitHub 인증 없이 BYOK를 사용할 때에도 원격 분석이 정상적으로 전송됩니다.

지원되는 토큰 형식

토큰 형식프리픽스지원됨비고
OAuth 토큰(디바이스 흐름)gho_기본 메서드 copilot login을 통한
세분화된 PATgithub_pat_필수 권한 Copilot 요청을 포함해야 합니다.
GitHub 앱 사용자-서버 연결ghu_환경 변수를 통해
클래식 PATghp_아니오지원되지 않음 Copilot CLI

Copilot CLI에서 자격 증명을 저장하는 방법

기본적으로 CLI는 서비스 이름 copilot-cli아래에 운영 체제의 키 집합에 OAuth 토큰을 저장합니다.

Platform키체인
macOS키 집합 액세스
Windows자격 증명 관리자
리눅스libsecret(GNOME Keyring, KWallet)

시스템 키 집합을 사용할 수 없는 경우(예: 헤드리스 Linux 서버에서 설치되지 않은 libsecret 경우) CLI는 토큰을 일반 텍스트 구성 파일에 ~/.copilot/config.json저장하라는 메시지를 표시합니다.

명령을 Copilot CLI 실행할 때 다음 순서대로 자격 증명을 확인합니다.

  1.        `COPILOT_GITHUB_TOKEN`환경 변수
    
  2.        `GH_TOKEN`환경 변수
    
  3.        `GITHUB_TOKEN`환경 변수
    
  4. 시스템 키 집합의 OAuth 토큰
  5. GitHub CLI(gh auth token) 대안

참고

  • 환경 변수는 저장된 OAuth 토큰을 자동으로 재정의합니다. 다른 도구로 GH_TOKEN을(를) 설정한 경우, CLI는 copilot login의 OAuth 토큰 대신 해당 토큰을 사용합니다. 예기치 않은 동작을 방지하기 위해 CLI에서 사용할 환경 변수를 설정하지 않습니다.
  • BYOK 공급자의 환경 변수(예: COPILOT_PROVIDER_BASE_URL, COPILOT_PROVIDER_API_KEY)를 구성하면, Copilot CLI의 인증 상태와 상관없이 GitHub에서 AI 모델 요청에 이를 사용합니다. GitHub 토큰은 GitHub-호스팅된 기능에만 필요합니다.

OAuth를 사용하여 인증

OAuth 디바이스 흐름은 대화형 사용을 위한 기본 인증 방법입니다. /login에서 Copilot CLI를 실행하거나 터미널에서 copilot login를 실행하여 인증할 수 있습니다.

          `/login` 사용하여 인증

1. Copilot CLI에서 /login을(를) 실행하십시오.

Bash
/login
  1. 인증할 계정을 선택합니다. 데이터 보존의 경우 GitHub Enterprise Cloud 인스턴스의 호스트 이름을 입력합니다.

    What account do you want to log into?
     1. GitHub.com
     2. GitHub Enterprise Cloud with data residency (*.ghe.com)
    
  2. CLI는 일회성 사용자 코드를 표시하고 자동으로 클립보드에 복사하고 브라우저를 엽니다.

    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...
    
  3. 브라우저가 자동으로 열리지 않으면 https://github.com/login/device 확인 URL로 이동합니다.

  4. 페이지의 필드에 일회성 코드를 붙여넣습니다.

  5. 조직에서 SAML SSO를 사용하는 경우 access 부여하려는 각 조직 옆에 있는 Authorize를 클릭합니다.

  6. 요청된 권한을 검토하고 GitHub Copilot CLI 인증 클릭합니다.

  7. 터미널로 돌아갑니다. 인증이 완료되면 CLI에 성공 메시지가 표시됩니다.

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

          `copilot login` 사용하여 인증
  1. 터미널에서 실행 copilot login합니다. 데이터 상주와 함께 사용하는 GitHub Enterprise Cloud 경우 인스턴스의 호스트 이름을 전달합니다.

    Bash
    copilot login
    
           GitHub Enterprise Cloud의 경우:
    
    Bash
    copilot login --host HOSTNAME
    

    CLI는 일회성 사용자 코드를 표시하고 자동으로 클립보드에 복사하고 브라우저를 엽니다.

    To authenticate, visit https://github.com/login/device and enter code 1234-5678.
    
  2. 브라우저가 자동으로 열리지 않으면 https://github.com/login/device 확인 URL로 이동합니다.

  3. 페이지의 필드에 일회성 코드를 붙여넣습니다.

  4. 조직에서 SAML SSO를 사용하는 경우 access 부여하려는 각 조직 옆에 있는 Authorize를 클릭합니다.

  5. 요청된 권한을 검토하고 GitHub Copilot CLI 인증 클릭합니다.

  6. 터미널로 돌아갑니다. 인증이 완료되면 CLI에 성공 메시지가 표시됩니다.

    Signed in successfully as Octocat.
    

환경 변수를 사용하여 인증

비대화형 환경의 경우 지원되는 토큰으로 환경 변수를 설정하여 인증할 수 있습니다. 이는 CI/CD 파이프라인, 컨테이너 또는 헤드리스 서버에 이상적입니다.

  1. 방문하세요 Fine-grained personal access tokens.
  2. "사용 권한"에서 권한 추가를 클릭하고 요청을 선택합니다Copilot.
  3.        **토큰 생성**을 클릭합니다.
    
  4. 터미널 또는 환경 구성에서 토큰을 내보냅니다. 우선 순위에 따라 COPILOT_GITHUB_TOKEN, GH_TOKEN또는 GITHUB_TOKEN 환경 변수를 사용합니다.

          GitHub CLI로 인증 중

설치하고 인증한 GitHub CLI 경우 Copilot CLI 해당 토큰을 대체로 사용할 수 있습니다. 이 메서드는 우선 순위가 가장 낮으며 환경 변수가 설정되지 않고 저장된 토큰을 찾을 수 없는 경우에만 활성화됩니다.

  1. 인증되었는지 GitHub CLI 확인합니다.

    Bash
    gh auth status
    

    데이터 상주와 함께 사용하는 GitHub Enterprise Cloud 경우 올바른 호스트 이름이 인증되었는지 확인합니다.

    Bash
    gh auth status --hostname HOSTNAME
    
  2.        `copilot`를 실행합니다. Copilot CLI는 GitHub CLI 토큰을 자동으로 사용합니다.
    
  3. CLI에서 인증된 계정을 확인하려면 실행 /user 합니다.

계정 간 전환

          Copilot CLI 는 여러 계정을 지원합니다. 사용 가능한 계정을 나열하고 CLI 내에서 전환할 수 있습니다. 사용 가능한 계정을 나열하려면 `/user list` 프롬프트에서 Copilot CLI을(를) 실행하십시오. 다른 계정으로 전환하려면 프롬프트를 입력 `/user switch` 합니다.

다른 계정을 추가하려면 새 터미널 세션에서 실행 copilot login 하거나 CLI 내에서 로그인 명령을 실행하고 다른 계정으로 권한을 부여합니다.

자격 증명 로그아웃 및 제거

로그아웃하려면 /logout 프롬프트에서 Copilot CLI를 입력하십시오. 이렇게 하면 로컬로 저장된 토큰이 제거되지만 해당 토큰은 GitHub취소되지 않습니다.

OAuth 앱 권한 부여 GitHub 를 취소하고 다른 곳에서 사용하지 않도록 하려면 다음 단계를 수행합니다.

  1.        **설정** > **애플리케이션** > **권한 OAuth 앱으로** 이동합니다.
    
  2. 설정 페이지로 이동합니다.
    1. 페이지의 오른쪽 위 모서리의 GitHub 프로필 사진을 클릭합니다.
    2.     **설정**을 클릭합니다.
      
  3. 왼쪽 사이드바에서 애플리케이션을 클릭합니다.
  4.        **인증된 OAuth 앱**에서 <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="The horizontal kebab icon" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg> 옆의 **** 을 클릭하여 메뉴를 확장하고 **Revoke**를 선택합니다.