Skip to main content

GitHub Copilot 확장 디버깅

게시하기 전에 명령줄에서 GitHub Copilot Extension을(를) 디버그하는 방법을 알아봅니다.

Note

GitHub Copilot Extensions은(는) 공개 미리 보기 버전이며 변경될 수 있습니다.

Copilot Extensions에 대한 디버그 도구를 사용하면 명령줄에서 Copilot agent과(와) 채팅한 다음 에이전트가 응답을 생성할 때 자세한 로그를 볼 수 있습니다. 도구에 여러 플래그를 전달할 수 있으며 가장 중요한 플래그는 다음과 같습니다.

  • Copilot agent에 액세스하기 위한 URL이 포함된 url 플래그입니다. 도구를 시작하는 데 필요한 유일한 플래그입니다.
  • 응답 생성을 위한 Copilot agent의 프로세스에 대한 가시성 수준을 결정하는 log-level 플래그입니다. 사용 가능한 로그 수준은 DEBUG, NONETRACE이며 도구에서 기본적으로 DEBUG를 사용합니다.
  • Copilot agent가 Copilot LLM을 호출하는 경우 Copilot Chat에 대한 읽기 액세스 권한이 있는 fine-grained personal access token를 포함해야 하는 token 플래그입니다. 에이전트가 다른 LLM을 호출하는 경우 이 플래그를 사용할 필요가 없습니다.

필수 조건

디버그 도구를 사용하려면 GitHub CLI이(가) 컴퓨터에 설치되어 있어야 합니다. 다음 두 가지 방법 중 하나로 GitHub CLI을(를) 설치할 수 있습니다.

  • 패키지 관리자를 사용하는 명령줄에서. 예를 들어 Homebrew를 통해 GitHub CLI을(를) 설치하려면 다음 명령을 명령줄에 붙여넣은 다음 프롬프트를 따릅니다.

    Bash
    brew install gh
    
  • GitHub CLI 릴리스 페이지에서

CLI를 사용하여 Copilot Extension 디버깅

  1. 필요에 따라 특정 SSE(서버 전송 이벤트)를 디버그할 준비를 하려면 프롬프트에 특정 키워드가 포함되어 있을 때 SSE를 전송하는 Copilot agent에 일부 코드를 추가합니다.

    Note

    디버그 도구는 페이로드 확인 프로세스를 처리하지 않습니다. SSE의 유효성을 검사하려면 로컬 테스트를 위해 페이로드 확인을 일시적으로 사용하지 않도록 설정한 다음 확장을 성공적으로 테스트한 후 다시 사용하도록 설정해야 합니다.

  2. 명령줄에서 Copilot agent를 시작합니다.

  3. GitHub CLI OAuth app로 인증하려면 명령줄 애플리케이션의 새 창에 다음 명령을 붙여넣고 프롬프트를 따릅니다.

    Bash
    gh auth login --web -h github.com
    
  4. 동일한 창에서 디버그 도구를 설치하려면 다음 명령을 붙여넣습니다.

    Bash
    gh extension install github.com/copilot-extensions/gh-debug-cli
    
  5. 필요에 따라 사용 가능한 플래그 및 해당 설명 목록을 보려면 다음 명령을 명령줄에 붙여넣습니다.

    Bash
    gh debug-cli -h
    
  6. 필요에 따라 사용하려는 각 플래그에 대한 환경 변수를 설정합니다. 환경 변수를 사용하면 디버그 도구를 실행할 때마다 값을 전달하는 대신 플래그에 대한 상수 값을 설정할 수 있습니다. 예를 들어 Blackbeard 확장을 사용하여 디버그 도구를 테스트하는 경우 다음과 같이 에이전트 URL에 대한 환경 변수를 만들 수 있습니다.

    Bash
    export URL="http://localhost:3000"
    

    Note

    플래그에 대한 환경 변수를 설정하려면 모든 대문자로 플래그의 이름을 사용해야 합니다.

  7. 디버그 도구를 시작하려면 다음 명령을 명령줄에 붙여넣고 사용하려는 플래그를 추가합니다.

    Bash
    gh debug-cli
    

    유일한 필수 플래그는 url 플래그이지만 log-leveltoken과 같은 추가 플래그를 사용하려고 할 수 있습니다.

    디버그 도구가 실행되면 "도우미와 채팅하기 위해 입력을 시작..."이라는 메시지가 표시됩니다.

  8. 에이전트와 상호 작용하려면 명령줄에 프롬프트를 입력합니다. 출력은 이전 단계에서 선택한 로그 수준에 따라 달라지며, DEBUGTRACE 로그 수준은 더 자세한 정보를 제공합니다.

    Tip

    SSE를 디버깅하는 경우 Copilot agent에 지정한 키워드가 포함된 프롬프트를 보내 SSE를 트리거한 다음 명령줄 애플리케이션에서 출력을 분석합니다.