Overview
automations를 사용하면 Copilot cloud agent가 일정에 따라, 리포지토리의 이벤트에 대한 응답으로 또는 API를 통해 트리거되어 자동으로 실행되도록 설정할 수 있습니다. Automations 는 끌어오기 요청을 열거나 문제에 레이블을 지정하는 등 구성된 리포지토리 내에서 작업을 수행할 수 있습니다.
프롬프트를 한 번 정의하고, 트리거를 선택하고, Copilot가 사용할 수 있어야 하는 도구를 결정합니다. Copilot는 automation의 트리거가 발생할 때마다 자동화를 자동으로 실행합니다.
예를 들어 automations을(를) 사용하여 다음 작업을 수행할 수 있습니다:
- 버그 재현: 이슈가 생성될 때 보고된 버그를 재현하려고 시도합니다.
- 검토를 위한 스크린샷 캡처: 변경 내용의 스크린샷을 캡처하고 끌어오기 요청이 검토 준비 완료로 표시되면 이를 끌어오기 요청에 연결합니다.
- 프로덕션 인시던트 조사: 모니터링 도구에서 인시던트를 감지할 때 인시던트 조사를 시작합니다.
다음에서 automations를 만들고 관리할 수도 있습니다:
- GitHub의 리포지토리에 있는 에이전트 탭
- GitHub Copilot app의 Automations 탭
- 에이전트 창VS Code
- 해당 REST API
automation를 생성할 때 다음을 정의합니다.
- ****을 식별하기 위한 automation
- 개인 또는 공유 유형으로, 누가 automation를 보고 편집할 수 있는지, 누가 비용을 청구받는지, 어떤 ID를 사용하는지를 결정합니다. 개인 및 공유automations를 참조하세요.
- 수행하려는 **** 작업을 설명하는 Copilot입니다.
- 실행 시기를 결정하는 트리거automation
- 도구Copilot는 리포지토리에서 수행할 수 있는 작업을 제어하는 데 사용할 수 있습니다.
- 필요에 따라 모델 및 추론 수준Copilot을 사용합니다.
- 필요에 따라 AI credits 제한, 즉 automation가 소비할 수 있는 AI credits 수를 제어하는 제한입니다.
automation groups 및 automations는 컨텍스트를 공유하며 결과를 바탕으로 스스로 개선 사항을 제안할 수 있습니다.
만들기 및 관리에 대한 지침은 automations을 참조하세요.
가용성 및 사용 권한
automations 리포지토리에서 사용할 수 있도록 하려면 다음이 모두 true여야 합니다.
- 리포지토리는 프라이빗 또는 내부여야 합니다. Automations 공용 리포지토리에서 사용할 수 없습니다.
- Copilot cloud agent 는 리포지토리에 대해 사용하도록 설정해야 합니다. Copilot Business 또는 Copilot Enterprise이 있는 경우 관리자가 Copilot cloud agent 정책을 사용하도록 설정해야 합니다. 엔터프라이즈 또는 조직의 클라우드에서 GitHub Copilot 관리을(를) 참조하세요.
- 조직은 리포지토리에서 Copilot cloud agent와 automations를 모두 허용해야 합니다(둘 다 기본적으로 활성화되어 있습니다). 조직의 클라우드에서 GitHub Copilot 관리을(를) 참조하세요.
Automations는 GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Max, GitHub Copilot Business 및 GitHub Copilot Enterprise 플랜에서 사용할 수 있습니다.
리포지토리에 쓰기 권한이 있는 모든 사용자는 해당 리포지토리에서 automations를 만들 수 있습니다.
다음에서 automations을(를) 만들고 관리할 수 있습니다:
- ****의 리포지토리에 있는 GitHub 탭(Automations 창)입니다.
- Automations의 **** 탭.
- VS Code의 에이전트 창에 있는 Automations 탭입니다.
클라우드 automations에서 VS Code하려면 버전 1.144 이상이 필요하며 chat.automations.cloud.enabled 설정을 활성화해야 합니다.
개인 및 공유 automations
automation을 만들 때는 나중에 변경할 수 없는 automation의 유형을 선택합니다.
- 개인용 에이전트 automations 는 스탠드업에 대한 업데이트 준비와 같은 작업을 자동화하는 데 유용합니다.
- 공유 automationsautomations를 팀이 함께 빌드하고 유지 관리하여 팀 전체의 워크플로를 자동화할 수 있습니다.
| 개인용 | Shared | |
|---|---|---|
| 누가 automation을(를) 볼 수 있습니까? | 오직 당신만 | 리포지토리에 대한 읽기 권한이 있는 모든 사용자 |
| 누가 automation의 실행을 볼 수 있나요 | 리포지토리에 대한 읽기 권한이 있는 모든 사용자 | 리포지토리에 대한 읽기 권한이 있는 모든 사용자 |
| automation을(를) 편집할 수 있는 사용자는 누구인가요? | 오직 당신만 | 리포지토리에 대한 쓰기 권한이 있는 모든 사용자 |
| AI credits에 대해 누구에게 청구되나요? | 당신 | 리포지토리를 소유하는 조직 또는 사용자 |
| GitHub에 대한 작업에 사용되는 ID | 사용자 신원 | Copilot의 ID |
공유 automation는 리포지토리를 만든 사람이 아닌 이를 만든 사람이 아니라 리포지토리에 속하기 때문에 해당 사용자가 팀을 떠나거나 리포지토리에 대한 액세스 권한을 잃어도 계속 작동합니다.
공유 automation가 조직 소유 리포지토리에서 실행되도록 하려면 조직에서 Copilot cloud agent 사용을 조직에 청구하도록 허용해야 합니다. 관리자는 "조직에 Copilot cloud agent 사용 요금이 청구되도록 허용" 정책을 사용하여 이를 사용하도록 설정할 수 있습니다.
트리거
automation의 트리거 중 하나가 작동하면 실행됩니다. 다음을 포함하여 다양한 트리거를 사용할 수 있습니다.
- 일정에 따라: automation 매시간, 매일 또는 매주 되풀이 간격으로 실행됩니다.
- 문제가 생성될 때: automation 리포지토리에서 문제가 열릴 때마다 실행됩니다.
- 끌어오기 요청이 열리automation면 리포지토리에서 끌어오기 요청이 열릴 때마다 실행됩니다.
- 끌어오기 요청이 동기화되는 경우: automation 새 커밋이 리포지토리의 끌어오기 요청에 푸시될 때마다 실행됩니다.
필요에 따라 이벤트 기반 트리거에 대한 필터를 구성할 수 있습니다. 예를 들면 다음과 같습니다.
- 문제가 생성되는 경우 검색 쿼리 필터를 추가합니다.
- 끌어오기 요청이 열리고 끌어오기 요청이 동기화되는 경우 끌어오기 요청에서 변경된 파일에 대한 검색 쿼리 필터와 필터를 추가합니다.
프롬프트 삽입의 위험을 줄이려면 기본적으로 리포지토리에 대한 쓰기 액세스 권한이 없는 사용자가 트리거한 이벤트를 automations무시GitHub합니다. 이렇게 하면 외부 참가자가 문제를 열 때와 같이 신뢰할 수 없는 사용자가 Copilot가 작업을 수행하게 하지 못하도록 방지할 수 있습니다. 필요한 경우 이러한 이벤트를 허용하도록 옵트인할 수 있습니다. 자세한 내용은 보안 및 안전을 참조하세요.
모두 automations API를 통해 트리거할 수 있으므로 automations를 외부 시스템 및 도구에 연결할 수 있습니다. automation를 API를 통해 시작할 때 프롬프트에 전달되는 추가 컨텍스트를 포함할 수 있습니다.
도구 및 작업
** **를 만들 때 선택한 automation는 Copilot가 실행될 때 automation가 수행할 수 있는 작업을 결정합니다.
예를 들어 Copilot가 변경 내용을 푸시하거나, 이슈 레이블을 업데이트하거나, 풀 리퀘스트를 만들도록 허용할 수 있습니다.
다음 두 종류의 도구 중에서 선택할 수 있습니다.
-
GitHub로, **** 가 GitHub에서 리포지토리로 작업할 수 있게 해줍니다. 예를 들어 GitHub 도구를 사용하면 Copilot:
- 첨부 파일 업로드
- 댓글 및 리뷰 숨기기 및 숨기기 취소
- 반응 추가 및 제거
- 토론 및 해당 의견을 읽고 토론에 의견을 답니다.
-
외부 시스템과 작업할 수 있게 해 주는 Copilot, **** 입니다. automation는 리포지토리의 MCP 설정에 구성된 MCP 서버의 도구를 사용할 수 있습니다. automation에서 사용할 각 서버의 도구를 선택합니다. 리포지토리에 대한 MCP 서버 구성을(를) 참조하세요.
도구를 선택하는 것은 automation의 범위를 제어하는 주된 방법입니다. 의도하지 않은 작업을 수행할 수 없도록 Copilot 작업에 필요한 도구만 부여합니다.
사용하도록 설정할 도구를 수동으로 선택하거나, GitHub의 도구 제안 단추를 사용하여 Copilot에서 프롬프트에 따라 도구를 제안하도록 할 수 있습니다.
GitHub 도구는 automation의 범위로 지정된 단일 리포지토리에서만 작업을 수행할 수 있습니다. MCP 서버의 도구는 해당 리포지토리로 제한되지 않습니다. 다른 리포지토리 및 외부 시스템을 포함할 수 있는 서버의 구성 및 자격 증명이 허용하는 모든 항목에 액세스할 수 있습니다. 각 MCP 서버가 서버의 도구를 선택하기 전에 액세스할 수 있는 항목을 검토합니다.
리포지토리에서 상속된 구성
Automations 다음을 포함하여 해당 범위의 리포지토리에 대한 Copilot cloud agent 구성을 사용합니다.
- 사용자 지정 지침입니다. GitHub Copilot 대한 리포지토리 사용자 지정 지침 추가을(를) 참조하세요.
- 에이전트 기술. GitHub Copilot에 에이전트 기술 추가을(를) 참조하세요.
- 방화벽 규칙. GitHub Copilot 방화벽 사용자 지정 또는 비활성화을(를) 참조하세요.
- 비밀 및 변수. Copilot 클라우드 에이전트에 대한 비밀 및 변수 구성을(를) 참조하세요.
Automations 는 리포지토리의 콘텐츠와 별도로 저장됩니다. Git에 커밋되지 않으므로 코드와 함께 버전이 지정되거나 끌어오기 요청을 통해 관리되지 않습니다.
Billing
automation가 실행될 때마다 GitHub Actions와 Copilot cloud agent분을 사용하는 GitHub AI Credits 세션이 시작됩니다.
AI credits 사용량은 개인 automation의 경우 automation를 만든 사용자에게 청구됩니다.
공유 automationAI credits 사용량의 경우 사용량은 리포지토리를 소유한 조직 또는 개인 계정이 리포지토리를 소유하는 경우 리포지토리 소유자의 Copilot 구독에 청구됩니다. 자세한 내용은 GitHub Copilot 라이선스 및 GitHub Actions 비용 청구을(를) 참조하세요.
GitHub Actions 분은 리포지토리 소유자에게 별도로 청구됩니다.
한도를 사용한 AI credits 비용 제어
automation가 소비할 수 있는 AI credits의 양에 제한을 설정할 수 있습니다. 이렇게 하면 사용량을 제어하는 동안 되풀이 작업을 자동화할 수 있습니다.
AI credits에서 다음과 같은 선택적 제한을 설정할 수 있습니다. 설정하지 않으려는 제한은 비워 두세요.
- 실행마다: 제한에 도달하는 즉시 실행을 중지합니다. 최소값은 30 AI credits입니다.
- 매일: 제한에 도달하면 새 실행이 시작되지 않도록 합니다. 매일 00:00 UTC에 다시 설정됩니다.
- 매주: 제한에 도달하면 새 실행이 시작되지 않도록 합니다. 매주 월요일 00:00 UTC에 다시 설정됩니다.
- 매월: 제한에 도달하면 새 실행이 시작되지 않도록 합니다. 매월 첫째 날 00:00 UTC에 다시 설정됩니다.
일별, 주별 및 월별 제한은 이미 진행 중인 실행을 중지하지 않습니다. 각 개별 실행의 비용을 제한하려면 실행당 한도를 설정합니다.
automation를 만들거나 업데이트할 때 제한을 설정할 수 있습니다. Copilot 클라우드 에이전트를 사용하여 자동화 만들기을(를) 참조하세요.
제안된 개선 사항
Automations는 자신과 다른 automations의 도구, 트리거 및 프롬프트에 대한 개선 사항을 제안할 수 있습니다.
Automations 는 작업 중 도구 누락과 같은 문제를 겪을 때 개선 사항을 제안할 수 있습니다.
Copilot로 automations를 만들 때 Copilot를 사용하면 일부 automation groups는 작업을 수행하고 다른 Copilot는 결과를 평가하며 지속적으로 개선 사항을 제안하는 자체 개선형 automations를 만드는 데 도움이 됩니다.
automation에 제안된 개선 사항이 있으면 알림을 받게 되며 automation을 볼 때 해당 제안이 표시됩니다.
제안된 개선 사항에 대한 설명과 automation group에 적용될 변경 내용이 표시됩니다. 제안된 개선 사항을 적용할지 아니면 무시할지 결정할 수 있습니다.
보안 및 안전
Automations 각 작업을 시작하는 사람 없이 실행 Copilot 되므로 몇 가지 추가 위험이 발생합니다. GitHub 는 이러한 위험을 완화하는 데 도움이 되는 기본 제공 보호를 제공합니다.
- 저작자 표시.
- 공유 GitHub에 의해 automation에서 수행된 작업은 Copilot에 귀속됩니다. 리포지토리에 하나 이상의 끌어오기 요청 승인이 필요한 경우 공유 automation에 의해 생성된 끌어오기 요청에 대해 기본적으로 추가 승인이 필요합니다. 관리자는 규칙 집합에서 이 추가 요구 사항을 사용하지 않도록 설정할 수 있지만 분기 보호 규칙에서는 비활성화할 수 없습니다.
- 개인 automation에 의해 수행된 작업은 automation를 만든 사용자에게 귀속됩니다. 사용자가 직접 만드는 끌어오기 요청과 마찬가지로 예상된 검토 컨트롤을 유지하는 끌어오기 요청을 승인할 수 없습니다.
- 최소 권한 도구입니다. 사용할 수 있는 도구를 automation 정확히 선택하므로 태스크에 필요한 작업으로만 제한할 수 있습니다.
- 신뢰할 수 없는 입력입니다. 기본적으로 automations 리포지토리에 대한 쓰기 액세스 없이 사용자가 트리거하는 이벤트를 무시하여 신뢰할 수 없는 사용자의 프롬프트 주입 위험을 줄입니다.
- 워크플로가 실행됩니다. 기본적으로 모든 Copilot cloud agent 작업 GitHub Actions과 마찬가지로 워크플로는 쓰기 액세스 권한이 있는 사용자가 승인할 때까지 풀 리퀘스트에서 실행되지 않습니다. 이렇게 하면 automation가 연 풀 리퀘스트가 워크플로를 자동으로 트리거할 위험을 줄일 수 있습니다.
- 투명하게 실행됩니다. Copilot cloud agent에서 시작한 GitHub Copilot app 세션은 개인용이든 공유용이든 리포지토리에 대한 읽기 권한이 있는 모든 사용자에게 표시됩니다. 이러한 세션을 볼 수 있는 사람은 누구나 프롬프트, 세션 로그, 그리고 Copilot가 생성한 모든 풀 리퀘스트나 그 밖의 변경 사항을 볼 수 있습니다.
GitHub가 Copilot cloud agent의 위험을 완화하는 방법에 대한 자세한 내용은 GitHub Copilot 클라우드 에이전트에 대한 위험 및 완화을 참조하세요.
추가 읽기
- Copilot 클라우드 에이전트를 사용하여 자동화 만들기
- GitHub.com 및 GitHub Mobile의 GitHub Copilot
- 자동화를 코드로 저장하거나, 끌어오기 요청을 통해 검토하거나, 다른 코딩 에이전트로 실행하는 방법을 알아보려면 GitHub 에이전트형 워크플로을 참조하세요.