Skip to main content

GitHub Copilot 클라우드 에이전트를 사용하여 프로젝트 개선

를 사용하여 프로젝트에서 Copilot 클라우드 에이전트문제를 찾아서 해결합니다.

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

Copilot 클라우드 에이전트는 GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Business,GitHub Copilot Enterprise 플랜과 함께 사용할 수 있습니다. 에이전트는 GitHub에 저장된 모든 리포지토리에서 사용할 수 있습니다. 단, 관리형 사용자 계정가 소유한 리포지토리에서는 에이전트가 명시적으로 비활성화되어 있습니다.
Sign up for Copilot

참고

소개는 Copilot 클라우드 에이전트을 참조하세요.

소개

최신 개발은 종종 좋은 의도로 시작됩니다 : 빠른 스크립트, 프로토 타입, 어쩌면 하나의 작은 것을 자동화하는 작업. 그러나 프로젝트가 발전함에 따라 이러한 초기 노력은 취약해질 수 있습니다.

이 자습서에서는 모멘텀을 늦추지 않고 성숙한 프로젝트를 개선하는 데 사용할 Copilot 클라우드 에이전트 수 있는 방법을 보여 줍니다.

다음 섹션에서는 다음을 수행합니다.

  • 프로젝트에 해당 응답을 프로젝트에 맞게 조정하는 데 사용할 수 있는 사용자 지정 지침이 Copilot 포함되어 있는지 확인합니다.
  • 프로젝트의 종속성을 미리 설치하여 작업을 더 빠르게 시작할 수 있도록 환경 설정 파일이 Copilot 클라우드 에이전트있는지 확인합니다.
  •         Copilot 코드에서 개선할 수 있는 점을 찾아보도록 하고, 그런 다음 그 작업을 위한 이슈를 생성하십시오.
    
  • 코딩 작업을 Copilot 문제에 할당하여 위임합니다.

1. 사용자 지정 지침 확인

  1.        GitHub에서 리포지토리로 이동하세요.
    
  2. 다음 사용자 지정 지침 파일 중 하나 이상이 있는지 확인합니다.

    • .github/copilot-instructions.md
    • .github/instructions/**/*-instructions.md
    • AGENTS.md
  3. 이러한 파일이 있는 경우 파일을 보고 지침이 적절하고 최신 상태인지 확인합니다.

    자세한 내용은 GitHub Copilot 응답을 사용자 지정하는 방법에 대한 정보의 "효과적인 사용자 지정 지침 작성" 섹션과 사용자 지정 지침의 예제 라이브러리를 참조하세요.

  4. 리포지토리에 사용자 지정 지침 파일이 없는 경우 Copilot 클라우드 에이전트의 지침에 따라 파일을 만드는 .github/copilot-instructions.md 데 사용합니다.

  5.        Copilot 클라우드 에이전트에서 생성한 풀 요청을 검토합니다. 
           `.github/copilot-instructions.md` 파일이 이 프로젝트에서 작업하는 데 필요한 모든 정보를 제공하는 Copilot 지 확인합니다.
    

    파일에는 다음이 포함되어야 합니다.

    • 코드베이스 및 소프트웨어의 수행 사항에 대한 명확한 요약입니다.
    • project 구조 개요입니다.
    • 기여 지침. 예를 들어 코드베이스를 빌드하고, 형식 지정하고, 린트하고, 테스트하는 방법과 풀 요청을 병합하기 전에 충족해야 하는 요구 사항.
    • 주요 기술 원칙.
  6. 필요에 따라 파일을 편집합니다.

  7. 끌어오기 요청의 "대화" 탭 아래쪽에서 검토할 준비를 클릭한 다음 끌어오기 요청을 병합하는 일반적인 프로세스를 완료합니다.

2. 환경 설정 파일 확인

워크플로 파일은 copilot-setup-steps.ymlGitHub Actions 프로젝트에서 사용하는 종속성을 미리 설치하여 작업을 더 빠르게 시작하는 데 도움이 될 Copilot 클라우드 에이전트 수 있습니다.

이 파일을 만드는 것은 선택 사항이지만 리포지토리에서 정기적으로 사용하는 Copilot 클라우드 에이전트 경우 좋은 방법입니다.

  1. 리포지토리에서 GitHub다음 파일이 있는지 확인합니다.

    Text
    .github/workflows/copilot-setup-steps.yml
    

    빠른 방법으로는 위의 경로를 복사한 후, 리포지토리의 기본 페이지로 이동하여 "파일로 이동" 입력 필드에 경로를 붙여넣는 것입니다.

  2. 파일이 있는 경우 파일을 열고 워크플로 단계가 프로젝트에 대한 올바른 종속성을 설치하는지 확인합니다. 이를 확인한 후 이 섹션의 나머지 단계를 건너뛸 수 있습니다.

  3. 아직 copilot-setup-steps.yml 파일이 없는 경우, 다음 단계를 따라 Copilot 클라우드 에이전트을(를) 사용하여 생성하세요.

  4. 웹 사이트의 GitHub 리포지토리 페이지 맨 위에서 을 클릭합니다.

  5. 다음 프롬프트를 복사하여 에이전트 대화 상자에 붙여넣습니다.

    Text
    Analyze this repository to understand the dependencies that need to be installed on the development environment to work on the code in this repository. Using this information, and the details about the `copilot-setup-steps.yml` file that are given in https://docs.github.com/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment, add a `.github/workflows/copilot-setup-steps.yml` to this repository. This Actions workflow file should install, in the development environment for Copilot 클라우드 에이전트, all of the dependencies necessary to work on the code in this repository. Make sure that the workflow job is named `copilot-setup-steps`.
    
  6.        **
           <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-paper-airplane" aria-label="Start task" role="img"><path d="M.989 8 .064 2.68a1.342 1.342 0 0 1 1.85-1.462l13.402 5.744a1.13 1.13 0 0 1 0 2.076L1.913 14.782a1.343 1.343 0 0 1-1.85-1.463L.99 8Zm.603-5.288L2.38 7.25h4.87a.75.75 0 0 1 0 1.5H2.38l-.788 4.538L13.929 8Z"></path></svg>
           **를 클릭하거나 <kbd>Enter</kbd> 키를 누르세요.
    
  7. "최근 에이전트 세션" 목록에서 시작된 새 에이전트 세션을 클릭합니다.

    이것은 Copilot가 작업을 수행할 때 활동 로그를 표시합니다. Copilot 완료되면 완료된 내용에 대한 요약이 생성됩니다.

  8. 요약을 읽은 다음 끌어오기 요청 보기를 클릭합니다.

  9. 필요에 따라 Copilot를 검토자로 추가합니다. 자세한 내용은 GitHub Copilot 코드 검토 사용을(를) 참조하세요. 검토 주석을 추가할 때까지 Copilot 기다린 다음, 메모에 대한 응답으로 필요하다고 생각되는 내용을 변경합니다.

  10. 끌어오기 요청을 직접 검토하여 새 copilot-setup-steps.yml 파일의 설정 단계가 올바른지 확인합니다.

    만든 워크플로 파일에는 Copilot 트리거가 포함되어야 하며, 이렇게 하면 워크플로를 on: workflow_dispatch 수동으로 실행할 수 있습니다. 작업의 이름은 이 부분에 표시된 대로 copilot-setup-steps로 지정해야 합니다.

    on:
      workflow_dispatch:
      push:
        paths:
          - .github/workflows/copilot-setup-steps.yml
      pull_request:
        paths:
          - .github/workflows/copilot-setup-steps.yml
    
    jobs:
      copilot-setup-steps:
        runs-on: ubuntu-latest
    
  11. 끌어오기 요청에서 copilot-setup-steps.yml 파일에 필요한 내용을 변경합니다.

           Copilot에게 검토 주석에서 `@copilot`를 사용하여 변경을 요청할 수 있습니다. 다음은 그 예입니다.
    

    @copilot - comment the file more thoroughly

  12. 끌어오기 요청의 "대화" 탭 아래쪽에서 검토할 준비를 클릭한 다음 끌어오기 요청을 병합하는 일반적인 프로세스를 완료합니다.

  13. 리포지토리에서 새로 추가된 .github/workflows/copilot-setup-steps.yml 파일을 GitHub에서 엽니다.

  14. 페이지 위 오른쪽의 실행 보기를 클릭하십시오.

  15.        **워크플로 실행을** 클릭한 다음 대화 상자에서 **워크플로를 실행**하여 새 워크플로를 테스트합니다.
    
  16. 워크플로가 올바르게 실행되고 종속성을 설치했는지 확인합니다. .github/workflows/copilot-setup-steps.yml 파일을 편집하여 오류를 수정합니다.

3. Copilot 기술적인 부채 확인하기

          Copilot 이제 올바른 컨텍스트가 있고(선택적으로) 즉시 사용할 수 있는 환경이 있으므로 리포지토리에서 기술 문제를 노출하고 우선 순위를 지정하는 데 사용할 수 있습니다.
  1. 다음 프롬프트 상자의 버튼을 클릭하여 이 프롬프트를 GitHub.com의 Copilot 채팅로 보내세요.

    Copilot prompt
    What technical debt exists in this project? Give me a prioritized list of up to 5 areas we need to focus on. For each, describe the problem and its consequences.
    
  2. 요청 모드가 선택되어 있는지 확인합니다.

  3.        **
           <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-globe" aria-label="globe" role="img"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM5.78 8.75a9.64 9.64 0 0 0 1.363 4.177c.255.426.542.832.857 1.215.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a9.927 9.927 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.507 6.507 0 0 0 4.666 5.5c-.123-.181-.24-.365-.352-.552-.715-1.192-1.437-2.874-1.581-4.948Zm-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948.12-.197.237-.381.353-.552a6.507 6.507 0 0 0-4.666 5.5Zm10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948-.12.197-.237.381-.353.552a6.507 6.507 0 0 0 4.666-5.5Zm2.733-1.5a6.507 6.507 0 0 0-4.666-5.5c.123.181.24.365.353.552.714 1.192 1.436 2.874 1.58 4.948Z"></path></svg> 모든 리포지토리** 드롭다운을 사용하여 리포지토리를 선택합니다.
    
  4.        **
           <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-paper-airplane" aria-label="Start task" role="img"><path d="M.989 8 .064 2.68a1.342 1.342 0 0 1 1.85-1.462l13.402 5.744a1.13 1.13 0 0 1 0 2.076L1.913 14.782a1.343 1.343 0 0 1-1.85-1.463L.99 8Zm.603-5.288L2.38 7.25h4.87a.75.75 0 0 1 0 1.5H2.38l-.788 4.538L13.929 8Z"></path></svg>
           **를 클릭하거나 <kbd>Enter</kbd> 키를 누르세요.
    
  5.        Copilot의 응답에서 세부 정보를 검토하세요.
    
  6. 개선을 위해 하나 이상의 영역을 식별했다고 가정 Copilot 하면 다음 프롬프트를 동일한 대화에 복사합니다.

    Copilot prompt
    /create-issue
    
    Create a GitHub issue to address the first of the problem areas that you identified.
    
    If the problem area requires substantial work, create one main issue for the entire problem area and then sub-issues that allow the work to be split up into manageable chunks, which will be tackled in separate pull requests that can be easily reviewed. For a large body of work, do not create a single issue that attempts to address the entire problem.
    
    The issue, or each sub-issue if these are created, must include a description of the problem, a set of acceptance criteria, and pointers on what files need to be added/updated.
    
  7. 필요에 따라 이 프롬프트를 편집합니다. 예를 들어, Copilot가 생성한 응답에 따라, Copilot가 식별한 첫 번째 문제 영역이 아닌 다른 문제 영역에서 작업하는 것이 좋을 수 있습니다.

  8. 요청 모드가 여전히 선택되어 있는지 확인합니다().

  9.        **
           <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-paper-airplane" aria-label="Start task" role="img"><path d="M.989 8 .064 2.68a1.342 1.342 0 0 1 1.85-1.462l13.402 5.744a1.13 1.13 0 0 1 0 2.076L1.913 14.782a1.343 1.343 0 0 1-1.85-1.463L.99 8Zm.603-5.288L2.38 7.25h4.87a.75.75 0 0 1 0 1.5H2.38l-.788 4.538L13.929 8Z"></path></svg>
           **를 클릭하거나 <kbd>Enter</kbd> 키를 누르세요.
    
  10. 생성되는 Copilot 초안 문제를 검토하고 필요에 따라 편집합니다.

  11. 단일 초안 문제에서 하위 문제를 생성해야 함을 나타내는 경우, Copilot이(가) 이를 Copilot이(가) 수행하도록 요청합니다.

    Copilot prompt
    Go ahead and create sub-issues that chunk this work into manageable pieces.
    
  12. 초안에 추가된 문제 수에 따라 만들기 또는 검토 및 만들기를 클릭합니다.

           Copilot 는 사용자 대신 하나 이상의 새 문제를 만듭니다. 문제 작성자로 표시됩니다.
    

4. Copilot이(가) 문제를 해결하도록 하세요

이제 문제를 만들었으므로 다음 단계는 문제를 Copilot 위임하고 결과 끌어오기 요청을 검토하는 것입니다.

  1. 이전 섹션에서 만든 문제 Copilot 중 하나를 엽니다.

  2. 문제가 작업을 완료했는지 확인하는 데 사용할 수 있는 Copilot 승인 조건이 포함되어 있는지 확인합니다.

  3. 수정해야 하는 문제와 이 문제에 대한 작업의 예상 결과를 정확하게 설명하는 데 필요하다고 생각되는 변경을 수행합니다.

  4. 할당에 클릭하십시오

  5. "이슈에 Copilot 할당"에서 할당을 클릭합니다.

           Copilot 이 문제에 대한 작업을 시작합니다. 잠시 후 초안 끌어오기 요청에 대한 링크가 문제에 추가됩니다.
    
  6. 초안 끌어오기 요청에 대한 링크를 클릭합니다.

           Copilot 끌어오기 요청 작업이 완료되면 끌어오기 요청 제목에서 "[WIP]"가 제거되고 검토자로 추가됩니다.
    

    끌어오기 요청을 비동기적으로 작업하도록 두고 Copilot 검토자로 추가된 후 다시 돌아와서 끌어오기 요청을 검토할 수 있습니다.

  7. 필요에 따라 몇 분 동안 작업한 후 Copilot 끌어오기 요청에서 세션 보기를 클릭하여 수행 중인 작업의 Copilot 로그를 볼 수 있습니다.

  8. 필요시 "대화" 탭에서 끌어오기 요청의 검토자로 Copilot를 추가합니다.

  9. 검토자로 추가된 후 변경 내용을 직접 검토하고 필요한 내용을 변경합니다.

           `@copilot`에 검토 주석을 사용하여 Copilot에게 변경을 요청할 수 있습니다.
    
  10. 끌어오기 요청의 "대화" 탭 아래쪽에서 검토할 준비를 클릭한 다음 끌어오기 요청을 병합하는 일반적인 프로세스를 완료합니다.

5. 이 프로세스를 반복합니다.

  1. 여러 문제를 만든 경우 Copilot 섹션 4를 반복하여 Copilot 다른 문제 중 하나에 할당합니다.
  2. 만든 모든 문제를 Copilot 닫은 후 섹션 3을 반복하여 다른 문제 영역을 선택하고 섹션 4를 반복하여 문제를 Copilot 할당하고 변경 내용을 검토하고 병합합니다.

결론

          Copilot 클라우드 에이전트 는 모든 프로젝트의 코드 품질을 개선하는 데 도움이 될 수 있지만, 수개월 또는 수년 동안 유기적으로 성장한 프로젝트의 기술 부채를 줄이는 데 특히 유용합니다. 이를 사용하면 Copilot 클라우드 에이전트AI 도우미가 사용자 대신 작업하여, 여러분이 시간 부족으로 인해 어려웠던 개선 작업을 수행할 수 있습니다.

          Copilot 에서는 개발자로서 사용자를 대체하지 않습니다. 이 프로세스의 모든 단계에서 수행할 작업을 지정하고 Copilot 변경하거나 추가하는 코드를 신중하게 검토해야 하지만 다른 중요한 작업에서 작업하는 동시에 향상된 기능을 구현할 수 있습니다.

다음 단계

블로그에서 GitHub 다음 사례 연구를 읽어보세요: 청구 팀이 GitHub클라우드 에이전트 시스템을 활용하여 GitHub Copilot 기술 부채를 지속적으로 감소시키는 방법.