지난 21일 개최된 마이크로소프트 빌드(Microsoft Build)에서 마이크로소프트(MS)는 AI 페어 프로그래밍 도구인 깃허브 코파일럿의 확장 기능인 코파일럿 익스텐션(Copilot Extension)을 공개했습니다.
코파일럿 익스텐션은 서드파티 기술을 깃허브 코파일럿과 통합하는 기능입니다. 깃허브 제품 수석 부사장 마리오 로드리게스(Mario Rodriguez)는 “우리의 목표는 깃허브 코파일럿을 가장 통합적이고, 강력하며, 지능적인 AI 플랫폼으로 만들어 인류의 발전을 가속할 수 있는 무한한 가능성을 제공하는 것”이라면서 “자연어 프로그래밍은 소프트웨어를 구축하려는 모든 사람의 진입 장벽을 계속 낮출 것이며, 이제는 개발자 기술 스택을 모든 도구와 통합되는 코파일럿으로 10억 명의 사람이 자연어만으로 깃허브에서 빌드할 수 있는 미래에 가까워졌다.”라고 소개했습니다.
현재 코파일럿 익스텐션을 사용하려면 깃허브 마켓플레이스(GitHub Marketplace)에서 기능을 추가해야 합니다. 내부 시스템 및 API와 통합한 확장 기능을 마켓플레이스에 배포하지 않고, 비공개로 사용하는 방법도 있습니다. 첫 날 깃허브 마켓플레이스에 공개된 확장 기능은 11개입니다. 어떤 기능들이 추가되었는지 정리했습니다.
1. Docker for GitHub Copilot
오늘날 도커(Docker)는 현대 개발에서 필수 기술 중 하나입니다. 이제 개발자는 깃허브 코파일럿에서 @docker로 도커 파일을 생성하거나 도커 스카우트(Docker Scout)로 취약성을 분석할 수 있습니다.
도커를 어떻게 사용하는지 잘 모르시나요? 그럼 깃허브 코파일럿에 물어보세요. 자연어로 도커를 사용하는 방법을 자세하게 설명해줍니다.
프롬프트 예시)
“@docker 이 프로젝트를 컨테이너화하려면 Docker를 어떻게 사용해야 하나요?”
“@docker가 내 프로젝트에서 취약점을 찾는 데 도움을 줄 수 있나요?”
- https://github.com/marketplace/docker-for-github-copilot
2. Sentry Copilot Extension
센트리(Sentry)는 전 세계 400만 명의 개발자가 사용하는 클라우드 기반 애플리케이션 성능 모니터링 및 오류 추적 소프트웨어입니다.
깃허브 코파일럿에 센트리 코파일럿 익스텐션(Sentry Copilot Extension)을 추가하면 자연어로 코드의 문제를 찾고, 분류하고, 수정을 도우며 AI 페어 프로그래밍을 강화할 수 있습니다.
프롬프트 예시)
“가장 최근 이슈 보여줘”
“해당 목록의 세 번째 이슈에 대한 자세한 정보를 표시해줘.”
“이 이슈와 관련된 트랜잭션 보여줘”
- https://github.com/marketplace/sentry-github-copilot-extension
3. ReadMe API
VSCode에서 리드미 API(ReadMe API)에 대해 질문할 수 있습니다. OAS 확장 기능, API로 작업하는 방법 등 다양한 질문을 수용합니다.
프롬프트 예시)
“@readme-api API를 통해 ReadMe에 신청하려면 어떻게 해야 하나요?”
“@readme-api 파이썬에서 API를 통해 ReadMe에 신청하려면 어떻게 해야 하나요?”
“@readme-api 카테고리의 페이지 목록을 얻으려면 어떻게 해야 하나요?”
“@readme-api ReadMe의 아웃바운드 IP 주소를 보려면 어떻게 해야 하나요?”
“@readme-api OAS에서 ReadMe는 어떤 x-확장을 지원하나요?”
“@readme-api 청구는 어떻게 이루어지나요?”
“@readme-api 내 문서를 사용자 지정하려면 어떻게 해야 하나요?”
“@readme-api OAS 파일을 업로드하려면 어떻게 해야 하나요?”
“@readme-api 재사용 가능한 콘텐츠를 작성하려면 어떻게 해야 하나요?”
- https://github.com/marketplace/readme-api
4. DataStax
이 확장 기능은 데이터 스택스(DataStax)의 NoSQL 벡터DB인 아스트라 DB(Astra DB)를 깃허브 코파일럿과 통합합니다.
데이터 스택스 익스텐션을 설치하고, 아스트라 계정과 연결 후 아스트라에서 권한만 승인하면 @datastax 명령어를 사용해서 자연어로 아스트라 DB의 쿼리와 코드를 작성할 수 있습니다.
벡터DB는 생성형 AI 개발하려면 알아야 할 기술입니다. AI 개발을 해보지 않았다면 처음 접하는 기술일 가능성이 큽니다. 이제는 벡터DB가 무엇인지 몰라도 @datastax만 입력하면 빠르게 배우고, 애플리케이션에 적용할 수 있습니다.
프롬프트 예시)
“내 데이터베이스에 대해 알려주세요”
“어떤 클라우드 제공업체와 지역에 db XYZ가 있나요?”
“db XYZ에서 어떤 컬렉션을 사용할 수 있나요?”
“Astra TS 클라이언트를 사용하여 내 컬렉션에 연결하려면 어떻게 해야 하나요?”
- https://github.com/marketplace/datastax-astra-db-copilot-plugin
5. LambdaTest
람다테스트(LambdaTest)는 모바일 앱 및 크로스 브라우저 테스트 클라우드 플랫폼으로 3,000개 이상의 브라우저, 모바일 기기, OS에서 실시간으로 자동 테스트를 도와줍니다. 130개 이상 국가에서 1만 개 이상 기업, 200만 명 이상의 개발자가 사용합니다.
이제 람다테스트는 @lambdatest 명령어로 실시간 크로스 브라우저 테스트 환경을 깃허브 코파일럿과 통합할 수 있습니다. 이를 통해 코딩 환경에 테스트 워크플로를 병합합니다. 쉽게 말해서 코딩하는 즉시 크로스 브라우저 테스트를 실시간, 자동으로 실행하고, 테스트 작업과 관련한 질문을 자연어로 할 수 있는 것입니다.
프롬프트 예시)
“최근 3개 빌드에 대한 요약을 요청합니다.”
“계정 사용자 목록을 검색합니다.”
“HyperExecute가 비공개 종속성을 처리하는 방법을 알아보세요.”
“TestNG 프레임워크와의 통합 옵션을 살펴보세요.”
- https://github.com/marketplace/lambdatest
6. Teams Toolkit
MS 팀즈(MS Teams)는 MS가 제공하는 협업 도구입니다. 팀즈를 사용하는 조직의 구성원은 업무에 필요한 자동화 앱을 로우코드 도구인 파워 앱스(Power Apps)로 개발해서 통합할 수 있습니다. 하지만 개발 지식이 없는 사람이 다루기에는 파워 앱스도 어려운 도구입니다.
팀즈 툴킷(Teams Toolkit)은 팀즈에서 사용하는 앱을 자연어로 개발할 수 있게 도와줍니다. 깃허브 코파일럿에서 @teamsapp를 입력하고, 원하는 앱 또는 자동화 프로세스를 입력하면 필요한 리소스를 추천하고, 개발까지 도와줍니다.
팀즈를 사용하는 조직은 누구나 쉽게 필요한 앱을 만들고, 조직에 배포할 수 있습니다. 개발자를 위한 고급 기능도 포함합니다.
프롬프트 예시)
“Teams용으로 어떤 유형의 앱을 만들 수 있나요?”
“실제 Teams 앱을 빌드하는 단계는 무엇인가요?”
“할 일 Teams 앱을 만들고 싶습니다.”
“배포를 위한 Azure 리소스 추천을 받거나 GitHub Actions CI/CD 템플릿을 최적화하세요.”
- https://github.com/marketplace/teamsapp
7. Product Science
프로덕트 사이언스(Product Science)는 성능 관리 플랫폼입니다. 코드와 실제 런타임 데이터를 분석하여 성능 문제를 찾아냅니다.
@product-science 명령어를 사용하면 깃허브 코파일럿에서 AI로부터 알고리즘의 성능을 높이는 데 도움을 받고, 엔지니어링, 디자인 및 제품 팀을 공통의 목표 아래 동기화하기 위해 조직 전체의 성능 점수를 설정하는 방법에 대한 조언을 얻을 수 있습니다.
프롬프트 예시)
“모바일 앱의 속도를 높이려면 어떻게 해야 하나요?”
“클라우드 지출 비용을 줄이려면 어떻게 해야 하나요?”
“이 코드를 더 빠르게 만들려면 어떻게 해야 하나요? [코드 스니펫]”
“안드로이드에서 가장 효율적인 이미지 로딩을 위해 어떤 라이브러리를 사용해야 하나요?”
- https://github.com/marketplace/productscience-app
8. LaunchDarkly for GitHub Copilot
런치다클리(LaunchDarkly)는 기능 플래그를 서비스로 제공하고 개발자가 빠르고 안전하게 반복할 수 있도록 해주는 소프트웨어 릴리스 플랫폼입니다. 보통 지라 등 도구와 연결해서 사용하는데, 기능 플래그를 활용해본 적이 없는 개발자라면 처음에 낯설 수 있습니다. 개발 경험이 없는 사람이라면 더욱 어려운 일이겠죠.
런치다클리 익스텐션은 @launchdarkly-app 명령어로 기능 관리를 연습하는 개발자에게 도움을 줍니다. 이로써 초보 개발자도 매번 사수를 찾는 일 없이 작업에 집중할 수 있습니다. 온보딩에 소모하는 많은 시간을 아낄 수 있습니다.
프롬프트 예시)
“기능 플래그가 무엇인가요?”
“기능 플래그는 어떻게 만들 수 있나요?”
“코드 참조는 어떻게 설정하나요?”
“오래된 플래그는 어떻게 찾나요?”
- https://github.com/marketplace/launchdarkly-copilot-extension
9. Octopus for GitHub Copilot
옥토퍼스 디플로이(Octopus Deploy)는 릴리스 오케스트레이션, 배포 자동화 및 런북 자동화 등 기능을 제공하는 지속 배포(CD) 플랫폼입니다. 이제 깃허브 코파일럿을 통합하여 자연어 데브옵스 환경을 구축할 수 있습니다.
개발자와 데브옵스 팀은 @octopus-ai-app 명령어로 서비스가 배포된 환경과 배포 성공 여부 등 배포 및 릴리스에 대한 중요한 컨텍스트를 확보할 수 있습니다. 몇 개의 채팅 메시지만으로 컨텍스트를 전환하지 않고도 필요한 모든 배포 정보에 액세스할 수 있습니다.
프롬프트 예시)
“Default” 스페이스에 대한 대시보드를 보여주세요.
“Default” 스페이스의 “Storefront” 프로젝트에서 배포 단계는 어떤 작업을 수행하나요?
“Default” 스페이스의 “Development” 환경에서 “Storefront” 프로젝트의 최신 배포에 대한 배포 로그를 요약합니다.
- https://github.com/marketplace/octopus-github-copilot-extension
10. Pinecone AI
파인콘(Pinecone)은 아스트라 DB와 같은 백터DB를 제공하는 업체입니다. 파인콘 AI(Pinecone AI) 익스텐션을 사용하면 개발자는 백터DB를 활용해서 쉽게 AI 애플리케이션을 개발할 수 있습니다.
@pinecone-ai 명령어를 사용하면 백터DB 정보, 코딩 지원, 문제 해결 기능을 제공하고 디버깅 프로세스를 간소화합니다.
프롬프트 예시)
“서버리스 인덱스란 무엇인가요?”
“ID 접두사란 무엇인가요?”
“서버리스 인덱스를 생성하는 파이썬 코드 작성”
“인덱스를 나열하는 파이썬 코드”
“복제본을 추가하는 방법과 시기”
“서버리스 인덱스 연결 오류가 발생합니다”
- https://github.com/marketplace/pinecone-ai
11. Pangea
판게아(Pangea)는 클라우드 기반 API 퍼스트 보안 플랫폼입니다. 판게아에 따르면, 오늘날 애플리케이션 코드의 20% 이상이 보안 관련 기능입니다. 판게아는 19가지 보안 서비스로 구성된 컴포저블 보안 프레임워크를 제공하므로 직접 보안 기능을 빌드할 필요가 없습니다.
@pangea-cyber 사용하면 보안 기능에 대해 판게아에 질문할 수 있으며, 모든 애플리케이션에 판게아 보안 기능을 추가하는 방법을 확인할 수 있습니다.
프롬프트 예시)
“판게아 서비스가 안전한 애플리케이션을 개발하는 데 어떻게 도움이 되는지 알아보세요.”
“주어진 문제를 해결하기 위해 어떤 Pangea 서비스를 사용할 것인지에 대한 힌트를 얻으세요.”
“판게아-사이버 웹사이트에 로그인을 추가하려면 어떻게 해야 하나요?”
“판게아-사이버 텍스트에서 민감한 정보를 삭제하려면 어떻게 해야 하나요?”
“판게아-사이버 HIPAA를 준수해야 합니다. 어떻게 해야 하나요?”
- https://github.com/marketplace/pangea-cyber
깃허브 마켓플레이스에 공개된 확장 기능 11개를 정리해보았는 데요, 사실 몇 개 확장 기능은 곧장 도움을 준다기보단 제품 홍보에 가까운 느낌을 받을 수 있습니다.
아직 종류도 많지 않고, 굳이 사용할 필요성을 느끼지 못하기 때문에 코파일럿 익스텐션을 직접 설치해서 사용하는 개발자는 많지 않은 것 같습니다. 가장 많이 설치된 Docker for GitHub Copilot도 248회 설치 정도에 그치고 있네요.
다만, 깃허브 코파일럿 사용자가 늘어나고, 기존에 AI 지원을 제공한 앱들이 코파일럿 익스텐션을 적용하기 시작하면 금방 활발해지지 않을까 싶습니다. 미리 AI 페어 프로그래밍의 미래를 경험하고, 실제 개발에 적용해보시길 바랍니다.
구체적인 실습으로 AI 페어 프로그래밍을 도입하고 싶다면 29가지 실습으로 배우는 신간 <요즘 AI 페어 프로그래밍>을 읽어보세요!