Azure Developer CLI() 코딩 에이전트 확장(azdazure.coding-agent)을 사용하여 GitHub Copilot 코딩 에이전트에 관리 ID를 사용하여 안전하고 범위가 지정된 Azure 액세스를 제공합니다. 확장은 관리 ID를 만들고, 페더레이션된 자격 증명을 구성하고, 리포지토리에서 GitHub Actions 워크플로를 설정합니다.
확장에 기능을 추가하는 방법을 알아보려면 확장 개요 를 참조하세요 azd.
필수 조건
- Azure 개발자 CLI(
azd)를 설치합니다. 설치 지침을 참조하세요. - 리소스 그룹 및 관리 ID를 만들 수 있는 Azure 구독
- Copilot 코딩 에이전트에 대해 사용하도록 설정한 GitHub 리포지토리의 로컬 복제본입니다.
- 저장소 권한:
-
copilotGitHub 환경을 업데이트합니다. - Copilot 코딩 에이전트 설정을 구성합니다.
- 폴더에 변경 내용을 푸시합니다
.github/workflows.
-
- 리포지토리에 페더레이션된 자격 증명에 필요한 하나 이상의 구성된 Git 리모트를 설정해야 합니다.
Copilot 코딩 에이전트 확장 설치 또는 업그레이드
처음으로 설치
azd extension install azure.coding-agent최신 버전으로 업그레이드
azd extension upgrade azure.coding-agent설치되어 있는지 확인합니다.
azd extension list --installed목록에
azure.coding-agent이(가) 표시되어야 합니다.
코필로트 코딩 에이전트 확장 사용
Copilot 코딩 에이전트 확장은 Copilot 코딩 에이전트에 대한 관리 ID를 통해 Azure 액세스를 자동으로 구성합니다. 또한 설정을 완료하려면 몇 가지 수동 단계를 수행해야 합니다.
Azure 액세스 사용
로컬 리포지토리 디렉터리의 루트 내에서 다음 명령을 실행합니다.
azd coding-agent config화면의 프롬프트에 따라 확장 워크플로를 완료합니다.
구성 중에 확장 기능은 다음과 같은 동작을 수행합니다.
- 리소스 그룹을 만들거나 다시 사용합니다.
- Azure 관리 ID를 만듭니다.
- 리소스 그룹에 범위가 지정된 해당 ID에 읽기 권한자 역할을 할당합니다.
- GitHub 리포지토리를 관리 ID에 연결하는 페더레이션된 자격 증명을 설정합니다.
-
copilot-setup-steps.yml워크플로 및 관련 자산을 추가하거나 업데이트합니다. - 환경에 대한 GitHub 환경 설정을 완료하는 방법을 안내합니다
copilot.
설치 확인(선택 사항)
만든(또는 업데이트된) 리소스 그룹의 관리 ID를 나열합니다.
az identity list --resource-group <resource-group-name>GitHub에서 설정>환경>부조종사 환경을 열고 관리 ID를 참조하는 페더레이션 자격 증명 항목을 확인합니다(주체 발급자는 GitHub를 반영해야 함).
Copilot 코딩 에이전트에 대한 Azure MCP Server 구성
확장 프로그램은 새 GitHub 워크플로 파일이 포함된
origin/azd-enable-copilot-coding-agent-with-azure지점의 분기에 대한 끌어오기 요청을 생성합니다. Azure MCP Server 연결을main분기에서 사용하려면 이 PR을 병합하십시오.콘솔의 끌어오기 요청 설명 및 확장 출력 로그에는 모두 Copilot 코딩 에이전트에 대한 Azure MCP Server를 구성하는 데 사용할 수 있는 JSON 구성 코드 조각이 포함됩니다.
{ "mcpServers": { "Azure": { "type": "local", "command": "npx", "args": [ "-y", "@azure/mcp@latest", "server", "start" ], "tools": [ "*" ] } } }Azure MCP Server를 구성하려면 리포지토리의 설정 페이지로 이동합니다.
왼쪽 탐색 영역에서 코필로트 -> 코딩 에이전트 를 선택합니다.
PR의 JSON 조각을 MCP 구성 상자에 붙여넣고 MCP 구성 저장을 선택합니다.
코필로트 코딩 에이전트 확장 테스트
GitHub에서 리포지토리로 이동합니다.
오른쪽 위 탐색 모음에서 에이전트 패널 열기 아이콘을 선택합니다.
플라이아웃 패널에서
azd명령에 사용한 리포지토리와 분기를 선택합니다. 생성된 끌어오기 요청을main에 병합한 경우main를 선택합니다.다음과 같이 구성한 Azure MCP 서버를 사용하도록 Copilot 코딩 에이전트에 지시하는 프롬프트를 입력합니다.
Use the Azure MCP Server to list the resource groups in my subscription. Do not traverse or analyze the repository at all. Use only the Azure MCP Server.Enter 키를 눌러 프롬프트를 실행하고 Copilot 코딩 에이전트에 새 작업을 만들고 실행하도록 지시합니다.
비고
플라이아웃 패널에서 해당 분기를 선택하면
main가 아닌 다른 분기에서 Copilot 코딩 에이전트 작업을 실행할 수 있습니다.패널 아래쪽에 표시되는 작업을 선택하여 작업 세부 정보 페이지로 이동합니다.
출력을 검사하여 코필로트 코딩 에이전트를 확인합니다.
Azure MCP 서버를 시작합니다.
다양한 도구를 호출하여 Azure 리소스에 대한 정보를 수집합니다.
최종 출력에 리소스 그룹을 표시합니다.
관리 ID에 대한 권한 구성
확장은 azd coding agent Azure MCP Server가 리소스에 액세스하는 데 사용하는 Azure 관리 ID를 만듭니다. 이 설정을 사용하면 Azure MCP Server의 기능과 권한을 제어하기 위해 관리 ID에 다른 역할을 할당할 수 있습니다.
기본적으로 확장은 리소스 그룹 범위에 역할만 Reader 할당합니다. 에이전트에 더 많은 기능이 필요한 경우 추가 역할을 할당하거나 범위를 넓히세요.
기본 제공 역할을 참조하세요.
예를 들어 리소스 그룹 범위에서 역할을 할당 Contributor 하려면 다음을 수행합니다.
az role assignment create --assignee <principal-id-or-client-id> --role Contributor --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>
Troubleshooting
다음 섹션에서는 발생할 수 있는 일반적인 문제를 중점적으로 설명합니다.
Git 원격이 구성되지 않음
페더레이션된 자격 증명을 생성할 수 있도록 원격을 추가합니다.
git remote add origin <https://github.com/<your-org>/<your-repo>.git>
git fetch origin
리포지토리에 대한 관리자 권한이 있어야 합니다.
코딩 에이전트에 대한 GitHub 리포지토리를 구성하려면 관리자 권한이 필요합니다 . 이러한 권한이 없으면 관리 ID 자격 증명을 사용하도록 Copilot 환경을 업데이트하거나 리포지토리에 대한 MCP 구성을 업데이트할 수 없습니다.
이 오류가 표시되면 권한을 상승시켜야 합니다.
(!) An error occurred, see the readme for troubleshooting and prerequisites:
https://github.com/Azure/azure-dev/blob/main/cli/azd/extensions/azure.coding-agent/README.md
Error: failed to create GitHub environment copilot in repository owner/repository: exit code: 1, stdout: {"message":"Must have admin rights to Repository.","documentation_url":"https://docs.github.com/rest/deployments/environments#create-or-update-an-environment","status":"403"}, stderr: gh: Must have admin rights to Repository. (HTTP 403)
새로 고침 토큰이 만료됨
다시 로그인:
azd auth login
필요에 따라 플래그를 --tenant-id <tenant-id>--use-device-code 추가합니다.
진단 출력 개선
디버그 모드 사용:
azd coding-agent config --debug
모든 내부 명령과 해당 출력이 콘솔에 출력됩니다.
다음 단계
- 역할 할당을 사용하여 ID 권한 확장(필요에 따라)
- 워크플로를
.github/workflows/에서 확장하여 자동화를 추가로 통합하십시오. - 다른 확장 기능 살펴보기: 확장 개요
- Azure RBAC 개념 검토
Contributing
Azure 개발자 CLI 리소스에 기여하려면 기여 가이드를 참조하세요. 끌어오기 요청에는 기여자 사용권 계약에 서명해야 할 수 있습니다.
행동 강령
이 프로젝트는 Microsoft 오픈 소스 행동 강령을 따릅니다.