Copilot 코딩 도우미 개요
Copilot 코딩 도우미을 사용하면 GitHub Copilot이 백그라운드에서 독립적으로 작업을 수행하여 인간 개발자처럼 작업을 완료할 수 있습니다.
Copilot 코딩 도우미 이 가능한 기능:
- 버그 수정
- 증분 새 기능 구현
- 테스트 검사 개선
- 문서 업데이트
- 기술적인 문제 해결
Copilot 코딩 도우미에 작업을 맡기면, 다음을 할 수 있습니다.
- 새 끌어오기 요청을 다음과 같은 위치에서 열 수 있도록 Copilot에게 요청하세요: GitHub Issues, Visual Studio Code, 및 GitHub의 모든 페이지에서 이용 가능한 에이전트 패널. GitHub Copilot에게 끌어오기 요청을 만들도록 요청을(를) 참조하세요.
- 기존 끌어오기 요청의 주석에서
@copilot를 언급하여 변경을 요청하세요. GitHub Copilot 기존 끌어오기 요청을 변경하도록 요청을(를) 참조하세요. - 보안 캠페인에서 Copilot에 보안 경고를 지정합니다. 자세한 내용은 보안 캠페인에서 경고 수정을 참조하세요.
Copilot 코딩 도우미은 사용자가 입력한 프롬프트, 즉 문제 설명이나 채팅 메시지 등에 따라 할당된 작업을 평가합니다. 그런 다음 Copilot 코딩 도우미에서 필요한 변경 사항을 적용한 후 끌어오기 요청을 엽니다. Copilot 코딩 도우미 작업이 완료되면 검토를 요청하고, 풀 리퀘스트에 코멘트를 남겨 Copilot 코딩 도우미가 이를 반영하여 수정하도록 할 수 있습니다.
코딩 작업을 수행하는 동안 Copilot 코딩 도우미은 GitHub Actions에서 제공하는 자체 임시 개발 환경에 access 있습니다. 여기서 코드를 탐색하고, 변경하고, 자동화된 테스트 및 linter를 실행할 수 있습니다.
기존 AI 워크플로보다 뛰어난 이점
Copilot 코딩 도우미를 효과적으로 사용하면 IDE에 내장된 기존 AI 도우미보다 생산성을 높일 수 있습니다.
-
**IDE의 AI 도우미**를 사용하면 코딩이 **로컬로** 수행됩니다. 개별 개발자는 **동기** 세션에서 AI 도우미를 보조 개발자 역할로 활용합니다. 세션 중에 내린 결정은 커밋되지 않으면 **추적되지 않으며**, 시간이 지나면 손실됩니다. 도우미는 코드를 작성하는 데 도움을 주지만, 개발자는 여전히 많은 **수동 단계**를 수행해야 합니다: 분기 만들기, 커밋 메시지 작성, 변경 내용 푸시, PR 열기, PR 설명 작성, 리뷰 받기, IDE에서 반복합니다. 단순하거나 반복적인 문제의 경우, 이러한 단계들을 거치는 것이 시간과 노력을 들일 만큼 정당화되기 어려울 수 있습니다. -
**Copilot 코딩 도우미** 를 사용하면 모든 코딩과 반복이 끌어오기 요청 워크플로의 일부로 **GitHub** 에서 이루어집니다. 여러 사용자 지정 에이전트를 만들어 다양한 유형의 작업을 전문적으로 처리할 수 있습니다. Copilot은 분기 생성, 커밋 메시지 작성 및 푸시, PR 열기, PR 설명 작성 등을 **자동화** 합니다. 개발자는 에이전트가 **백그라운드에서 작업을 수행한** 다음, Copilot을 사용하여 PR 검토를 통해 최종 솔루션으로 조정할 수 있습니다. GitHub에서 작업하면 커밋에서 모든 단계가 발생하고 로그에서 볼 수 있는 투명성을 더해주며, 전체 팀에게 협업할 기회를 제공합니다.
Copilot 코딩 도우미 및 에이전트 모드
Copilot 코딩 도우미은 IDE에서 사용할 수 있는 ‘에이전트 모드’ 기능과는 차이가 있습니다. Copilot 코딩 도우미는 GitHub Actions 기반 환경에서 자동으로 작동하여 GitHub 이슈 또는 GitHub Copilot 채팅 프롬프트를 통해 할당된 개발 작업을 완료하고 결과로 풀 리퀘스트를 만듭니다. 반면, IDE의 에이전트 모드는 로컬 개발 환경에서 직접 자율 편집을 합니다. 에이전트 모드에 대한 자세한 내용은 IDE에서 GitHub Copilot 질문하기 참조하세요.
Copilot 코딩 도우미를 사용하여 소프트웨어 개발을 간소화하세요.
Copilot 코딩 도우미에 작업을 할당하면 소프트웨어 개발 워크플로를 개선할 수 있습니다.
예를 들어, 백로그에서 간단한 문제를 발견했을 때 담당자를 “Copilot”로 지정하여 Copilot 코딩 도우미에 할당할 수 있습니다. 이를 통해 이러한 문제에 더 적은 시간을 할애하고 더 복잡하거나 흥미로운 작업이나 높은 수준의 창의적인 사고를 필요로 하는 작업에 더 많은 시간을 할애할 수 있습니다. Copilot 코딩 도우미은 코드베이스 또는 제품의 품질을 개선하는 데 도움이 되는 사소한 문제들을 처리할 수 있지만, 더 시급한 작업에 집중하는 동안 백로그에 남아있는 경우가 많습니다.
Copilot 코딩 도우미을(를) 추가 코딩 리소스로 사용하면 리소스 부족으로 인해 시작하지 않았을 수도 있는 작업을 시작할 수 있습니다. 예를 들어, 코드를 리팩터링하거나 더 많은 로깅을 추가하는 이슈를 만든 다음, 이를 바로 Copilot에 할당할 수 있습니다.
Copilot 코딩 도우미는 작업을 시작한 후, 사용자가 직접 선택하여 계속 진행할 수 있습니다. 초기 작업을 Copilot에 할당하면 새 프로젝트에 대한 발판 설정과 같이 반복적인 작업을 수행하는 데 소비했을 시간을 확보할 수 있습니다.
다양한 작업을 위해 특화된 사용자 지정 에이전트를 만들 수 있습니다. 예를 들어, React 구성 요소와 스타일링에 중점을 둔 프런트엔드 개발용 사용자 지정 에이전트을 만들거나, 기술 문서 작성 및 업데이트에 탁월한 문서화 에이전트를 생성하거나, 포괄적인 단위 테스트 생성을 전문으로 하는 테스트 에이전트를 만들 수 있습니다. 각 사용자 지정 에이전트은 특정 작업에 적합하도록 특정 프롬프트와 도구를 사용하여 맞춤 설정할 수 있습니다.
Copilot 코딩 도우미의 풀 리퀘스트 성과를 측정하세요
Enterprise 관리자와 조직 소유자는 Copilot 사용 메트릭을 활용하여 Copilot 코딩 도우미가 생성한 풀 리퀘스트의 결과를 분석할 수 있습니다.
Copilot 사용 메트릭 API는 풀 리퀘스트 생명주기와 관련된 다음의 측정 지표들을 제공합니다.
- 생성 및 병합된 끌어오기 요청의 총 수
- Copilot 코딩 도우미이(가) 만든 병합된 풀 리퀘스트 수
- Copilot 코딩 도우미가 생성한 풀 리퀘스트를 포함한 병합된 풀 리퀘스트의 평균 병합 시간
이러한 메트릭은 Copilot 코딩 도우미의 채택을 추적하는 데 도움이 될 수 있습니다. 또한, 시간이 지남에 따라 끌어오기 요청의 처리량 및 병합 시간의 변화를 모니터링할 수 있습니다. GitHub Copilot 사용 메트릭스을(를) 참조하세요.
Copilot 코딩 도우미을 서드파티 도구와 통합
외부 도구에서 워크플로를 종료하지 않고도 Copilot 코딩 도우미를 호출하여 Copilot에 작업을 할당하고 컨텍스트를 제공하며, 끌어오기 요청을 열 수 있습니다. Copilot 통합 정보을(를) 참조하세요.
Copilot 코딩 도우미를 사용할 수 있게 만들기
Copilot 코딩 도우미에 작업을 할당하려면 먼저 사용하도록 설정해야 합니다.
Copilot 코딩 도우미는 GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Business,GitHub Copilot Enterprise 플랜과 함께 사용할 수 있습니다.
GitHub Copilot Business 또는 GitHub Copilot Enterprise 구독자인 경우, 관리자가 관련 정책을 활성화해야 에이전트를 사용할 수 있습니다.
리포지토리 소유자는 Copilot 코딩 도우미에서 일부 또는 모든 리포지토리를 제외하도록 선택할 수 있습니다.
자세한 내용은 GitHub Copilot 코딩 에이전트에 대한 access 관리 참조하세요.
Copilot 코딩 도우미에 대한 AI 모델
Copilot 코딩 도우미 작업을 시작하는 방식에 따라, Copilot 코딩 도우미에서 사용할 모델을 선택할 수 있습니다. Copilot을(를) 제공하는 작업의 유형에 따라 다른 모델이 더 잘 수행되거나 더 유용한 응답을 제공할 수 있습니다.
자세한 내용은 GitHub Copilot 코딩 에이전트에 대한 AI 모델 변경을(를) 참조하세요.
리포지토리에 대한 % data variables.copilot.copilot_coding_agent %}의 지식 향상
Copilot 코딩 도우미이(가) 리포지토리의 코드, 사용하는 도구, 그리고 코딩 표준과 사례에 대해 더 많이 알게 될수록 더욱 효과적이게 됩니다. 리포지토리에 대한 Copilot 코딩 도우미의 지식을 향상시키기 위해서는 두 가지 방법이 있습니다.
-
**사용자 지정 지침**이러한 문은 리포지토리에 하나 이상의 파일로 작성하고 저장하는 간단한 자연어 문입니다. GitHub에서 조직의 소유자인 경우 조직의 설정에서 사용자 지정 지침을 정의할 수도 있습니다. 자세한 내용은 GitHub Copilot 응답을 사용자 지정하는 방법에 대한 정보을(를) 참조하세요.
-
**Copilot 메모리** ()Copilot Pro 또는 Copilot Pro+ 플랜이 있다면, Copilot 메모리를 사용하도록 설정할 수 있습니다. 이렇게 하면 Copilot이 리포지토리에 대해 스스로 계산한 유용한 세부 정보들을 저장할 수 있습니다. Copilot 코딩 도우미는 해당 리포지토리에서 작업할 때 이 정보를 사용할 수 있습니다. 자세한 내용은 GitHub Copilot의 주체적 기억에 관한 정보을(를) 참조하세요.
Copilot 코딩 도우미 사용 비용
Copilot 코딩 도우미는 GitHub Actions 시간과 Copilot 프리미엄 요청을 사용합니다.
GitHub Actions 및 프리미엄 요청에 대한 월별 사용량 허용량 내에서 Copilot 코딩 도우미에게 추가 비용 없이 코딩 작업을 수행하도록 요청할 수 있습니다.
자세한 내용은 GitHub Copilot 라이선스 참조하세요.
Copilot 코딩 도우미 맞춤 설정
Copilot 코딩 도우미은 여러 가지 방법으로 맞춤 설정할 수 있습니다.
-
**사용자 정의 지침**: 사용자 정의 지침을 통해 프로젝트에 대해 Copilot에 추가 컨텍스트를 제공하고, 변경 사항을 빌드, 테스트 및 검증하는 방법을 지정할 수 있습니다. 자세한 내용은 [AUTOTITLE](/copilot/how-tos/configure-custom-instructions/add-repository-instructions)을(를) 참조하세요. -
**Model Context Protocol (MCP) 서버**: MCP 서버를 사용하면 Copilot이(가) 다양한 데이터 원본 및 도구에 접근할 수 있도록 해줍니다. 자세한 내용은 [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp)을(를) 참조하세요. -
**사용자 지정 에이전트**: 사용자 지정 에이전트를 사용하면 다양한 작업에 맞춰 Copilot의 여러 전문화 버전을 생성할 수 있습니다. 예를 들어, Copilot을 팀 가이드라인을 따르는 프론트엔드 엔지니어 전문가로 사용자 지정할 수 있습니다. 자세한 내용은 [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents)을(를) 참조하세요. -
**후크: 후**크를 사용하면 에이전트를 실행하는 동안 키 지점에서 사용자 지정 셸 명령을 실행할 수 있으므로 유효성 검사, 로깅, 보안 검사 또는 워크플로 자동화를 추가할 수 있습니다. 자세한 내용은 [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-hooks)을(를) 참조하세요. -
**기술**: 기술을 사용하면 Copilot의 기능을 향상시켜 지침, 스크립트 및 리소스를 사용하여 특수 작업을 수행할 수 있습니다. 자세한 내용은 [AUTOTITLE](/copilot/concepts/agents/about-agent-skills)을(를) 참조하세요.
기본 제공 보안 보호
Copilot 코딩 도우미를 다른 AI 에이전트와 마찬가지로 사용할 수 있도록 설정할 때 보안은 가장 기본적인 고려 사항입니다. Copilot 코딩 도우미는 강력한 기본 보안 기능을 내장하고 있으며, 모범 사례 지침을 준수하여 이를 보완할 수 있습니다.
-
* CodeQL 는 코드 보안 문제를 식별하는 데 사용됩니다.**보안 문제에 대한 유효성 검사**: Copilot은 Copilot 코딩 도우미이 생성한 코드를 분석하여 보안상의 문제점을 파악하고, 끌어오기 요청을 완료하기 전에 해결을 시도합니다. 이렇게 하면 Copilot 코딩 도우미에서 생성되는 코드가 하드 코드된 비밀, 안전하지 않은 종속성 및 기타 취약성과 같은 문제를 발생시킬 가능성을 줄입니다. 수행된 분석 및 Copilot 코딩 도우미에서 수행한 작업에 대한 세부 정보는 세션 로그에서 검토할 수 있습니다. [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/track-copilot-sessions)을(를) 참조하세요.- 새로 도입된 종속성은 GitHub Advisory Database 에서 맬웨어 관련 권고 사항과 CVSS 등급이 높음 또는 위험으로 평가된 취약점에 대해 검사됩니다.
-
**Secret scanning** 는 API 키, 토큰 및 기타 비밀과 같은 중요한 정보를 검색하는 데 사용됩니다. - Copilot 코딩 도우미의 보안 유효성 검사는 GitHub Secret Protection, GitHub Code Security, or GitHub Advanced Security 라이선스 없이도 가능합니다.
-
**기존 거버넌스의 적용**: 조직 설정 및 엔터프라이즈 정책을 통해 사용 가능 여부를 제어합니다. 조직에 대해 설정된 모든 보안 정책 및 사례는 Copilot 코딩 도우미에도 동일하게 적용됩니다. -
** 제한된 개발 환경**: Copilot 코딩 도우미는 방화벽으로 제어되는 인터넷 접속이 있는 샌드박스 개발 환경에서 작동합니다. 작업에 할당된 리포지토리에 대한 읽기 전용 접근 권한이 있습니다. -
**지점에 대한 제한된 접근**: Copilot 코딩 도우미는 `copilot/`로 시작하는 분기에서만 생성하고 푸시할 수 있습니다. 모든 분기 보호와 작업 리포지토리에 대해 필수 검사가 적용됩니다. -
** 쓰기 권한이 있는 사용자에게만 적용됩니다**: Copilot 코딩 도우미는 access 수준이 낮은 사용자의 피드백에 응답하지 않습니다. -
**외부 협력자로 처리**: Copilot 코딩 도우미에서 제안한 끌어오기 요청 초안은 작업 워크플로를 실행하기 전에 쓰기 권한이 있는 사용자의 승인이 필요합니다. Copilot 코딩 도우미에서 풀 리퀘스트를 ‘검토 준비 완료’로 표시할 수 없어 풀 리퀘스트를 승인하거나 병합할 수 없습니다. -
**준수 추적**: Copilot 코딩 도우미의 커밋은 문제를 할당하거나 풀 리퀘스트 변경을 요청한 개발자와 공동 작성되어 제안된 변경 사항에 대한 귀속을 가능하게 합니다. Copilot에게 풀 리퀘스트 생성을 요청한 개발자는 해당 풀 리퀘스트를 승인할 수 없습니다. 승인 검토가 필요한 리포지토리의 경우, 최소 한 명 이상의 독립 개발자가 Copilot 코딩 도우미의 작업을 검토하도록 해야 합니다.
자세한 내용은 다음을 참조하세요. * 조직에서 GitHub Copilot 코딩 에이전트를 시험 운영하기(조직 소유자가 보안을 더욱 강화할 수 있는 방법에 대한 정보) * GitHub.com GitHub Copilot 코딩 에이전트의 책임 있는 사용 * GitHub Copilot 신뢰 센터
위험 및 완화
Copilot 코딩 도우미은(는) 코드에 접근하고 리포지토리에 변경 사항을 푸시할 수 있는 자율 에이전트입니다. 이 기능은 특정 위험을 내포하고 있습니다. 가능한 경우 GitHub에서 적절한 완화를 적용했습니다.
위험: Copilot 코딩 도우미이 코드 변경 사항을 저장소에 푸시할 수 있습니다.
이 위험을 완화하려면 GitHub을(를) 사용하십시오.
-
**Copilot 코딩 도우미에 작업을 할당할 수 있는 사용자를 제한합니다.** 리포지토리에 쓰기 권한이 있는 사용자만 Copilot 코딩 도우미을 트리거하여 작동시킬 수 있습니다. 쓰기 access 없는 사용자의 주석은 에이전트에 표시되지 않습니다. -
**Copilot 코딩 도우미에서 사용하는 access 토큰의 사용 권한을 제한합니다.** 푸시는 `copilot/`로 시작하는 분기에서만 가능합니다. Copilot 코딩 도우미은(는) `main` 또는 `master` 분기로 푸시할 수 없습니다. -
**Copilot 코딩 도우미의 자격 증명에 제한을 둡니다.** Copilot 코딩 도우미은 오직 간단한 푸시 작업만 수행할 수 있습니다. `git push` 또는 다른 Git 명령을 직접 실행하는 것은 불가능합니다. -
**GitHub Actions 워크플로 실행을 제한합니다.** Copilot 코딩 도우미의 코드를 검토하고 리포지토리에 대한 쓰기 권한이 있는 사용자가 **승인 및 워크플로 실행** 단추를 클릭할 때까지 워크플로가 트리거되지 않습니다. [AUTOTITLE](/copilot/using-github-copilot/coding-agent/reviewing-a-pull-request-created-by-copilot) 참조하세요. -
**Copilot 코딩 도우미를 요청한 사용자가 풀 리퀘스트를 생성했다면, 해당 사용자는 풀 리퀘스트를 승인하지 못하도록 합니다.** 이렇게 하면 ‘필수 승인’ 규칙과 분기 보호 기능이 예상대로 유지됩니다. [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets)을(를) 참조하세요.
위험: Copilot 코딩 도우미 민감한 정보에 접근할 수 있습니다.
Copilot 코딩 도우미은(는) 코드 및 기타 중요한 정보에 대한 접근이 가능하며, 실수로 또는 악의적인 사용자 입력으로 인해 정보를 유출할 수 있습니다. 이 위험을 완화하려면 GitHub를 사용하세요.
-
**Copilot 코딩 도우미의 인터넷 접근을 제한합니다.** [AUTOTITLE](/copilot/customizing-copilot/customizing-or-disabling-the-firewall-for-copilot-coding-agent)을(를) 참조하세요.
위험: 프롬프트 주입 취약성
사용자는 Copilot 코딩 도우미에 할당된 문제에 숨겨진 메시지를 넣거나, Copilot 코딩 도우미에 남아 있는 메모를 프롬프트 삽입의 형태로 활용할 수 있습니다. 이 위험을 완화하려면 GitHub를 사용하십시오.
-
**사용자 입력을 Copilot 코딩 도우미에 전달하기 전에 숨겨진 문자를 필터링합니다.** 예를 들어, 문제나 풀 리퀘스트 주석에 HTML 주석으로 입력된 텍스트는 Copilot 코딩 도우미에 전달되지 않습니다.
Copilot 코딩 도우미의 제한 사항
Copilot 코딩 도우미에는 소프트웨어 개발 워크플로나 다른 기능과의 호환성에서 특정한 제약이 따릅니다.
Copilot 코딩 도우미의 소프트웨어 개발 워크플로의 제한 사항
-
**Copilot는 작업을 시작할 때 지정한 리포지토리에서만 변경을 수행할 수 있습니다**. Copilot은(는) 한 번의 실행으로 여러 리포지토리를 수정할 수 없습니다. -
**기본적으로 Copilot는 작업을 시작할 때 지정된 리포지토리에서만 컨텍스트에 접근할 수 있습니다**. Copilot MCP 서버는 기본적으로 Copilot가 작동 중인 리포지토리의 컨텍스트(예: 문제 및 기록된 풀 요청)에 액세스할 수 있도록 설정됩니다. 더 넓은 접근을 구성할 수 있습니다. [AUTOTITLE](/copilot/using-github-copilot/coding-agent/extending-copilot-coding-agent-with-mcp) 참조하세요. -
**Copilot은 한 번에 하나의 풀 리퀘스트만 열 수 있습니다.**. Copilot은 할당된 각 작업에 대해 정확히 하나의 끌어오기 요청을 엽니다.
Copilot 코딩 도우미의 다른 기능과의 호환성 제한
-
**Copilot은 리포지토리에서 구성 가능한 특정 규칙을 따르지 않습니다.**. Copilot 코딩 도우미와 호환되지 않는 규칙 집합이나 분기 보호 규칙(예: "서명된 커밋 필요" 규칙)을 구성한 경우 에이전트에 대한 접근이 차단됩니다. 규칙 집합을 사용하여 규칙이 구성된 경우, Copilot를 우회 주체로 추가하여 액세스를 활성화할 수 있습니다. [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset)을(를) 참조하세요. -
**Copilot 코딩 도우미은(는) 콘텐츠 제외를 반영하지 않습니다**. 콘텐츠 제외 기능을 통해 관리자는 특정 파일을 무시하도록 Copilot을 설정할 수 있습니다. Copilot 코딩 도우미을 사용하는 경우 Copilot은 해당 파일을 무시하지 않으며, 보고 업데이트가 가능합니다. [AUTOTITLE](/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot) 참조하세요. -
**Copilot 코딩 도우미는 GitHub** 호스팅되는 리포지토리에서만 작동합니다. 다른 코드 호스팅 플랫폼을 사용하여 리포지토리를 저장하는 경우, Copilot에서 해당 작업을 수행할 수 없습니다.
실습
팀을 확장하기 위한 Copilot 코딩 도우미 스킬 연습을 통해 Copilot 코딩 도우미를 실제로 경험해 보세요.
추가 참고 자료
-
[AUTOTITLE](/copilot/using-github-copilot/coding-agent) 사용 방법 문서 -
[AUTOTITLE](/copilot/concepts/agents/coding-agent/about-custom-agents) -
[AUTOTITLE](/copilot/responsible-use-of-github-copilot-features/responsible-use-of-copilot-coding-agent-on-githubcom)