github

일회성 프롬프트에서 워크플로로: GitHub Copilot CLI에서 커스텀 에이전트를 사용하는 방법 (새 탭에서 열림)

GitHub Copilot CLI의 커스텀 에이전트는 반복적인 터미널 작업과 팀의 개발 규칙을 Markdown 기반 워크플로로 표준화하는 기능이다. 저장소에 에이전트 프로필을 두면 팀의 도구, 코딩·보안·접근성 기준, 출력 형식을 버전 관리하며 CLI·IDE·GitHub 전반에서 일관되게 사용할 수 있다. 따라서 일회성 프롬프트를 반복하는 대신 검토 가능하고 재사용 가능한 전문 에이전트를 구축할 수 있다.

커스텀 에이전트의 개념

  • 커스텀 에이전트는 특정 작업에 특화된 Copilot 에이전트다.
  • Markdown 파일인 에이전트 프로필에 다음 내용을 정의한다.
    • 에이전트의 역할과 전문 영역
    • 사용할 수 있는 도구
    • 따라야 할 개발·보안·접근성 기준
    • 실행 범위와 안전장치
    • 결과물의 형식
  • 일반적인 코드 정리 에이전트와 달리, 팀의 포맷 규칙·접근성 표준·리뷰 절차·보안 요구사항을 매번 동일하게 적용할 수 있다.
  • 프로필이 저장소에 포함되므로 코드처럼 리뷰·수정·공유·버전 관리가 가능하다.

에이전트 프로필 구성

프로필은 YAML frontmatter와 지침 본문으로 구성된다.

  • name: 에이전트 이름
  • description: 에이전트의 목적과 역할
  • model: 사용할 Copilot 모델
  • tools: 코드베이스 검색, 파일 수정, 테스트 실행, 터미널, 웹 요청 등 허용할 도구
  • 본문 지침:
    • 에이전트의 전문성
    • 작업 절차
    • 출력 형식
    • 금지 사항과 안전 규칙

예를 들어 접근성 전문가 에이전트는 WCAG 2.1/2.2의 A·AA·AAA 등급을 기준으로 웹 UI를 검토하고, 디자인·개발·QA에 적용 가능한 실무 지침을 제공하도록 설정할 수 있다.

GitHub Copilot CLI에서 사용하는 방법

  • 터미널에서 GitHub Copilot CLI를 실행한다.
  • /agent 슬래시 명령을 사용해 원하는 커스텀 에이전트를 선택한다.
  • 대상 저장소의 .github/agents 디렉터리에 프로필을 만든다.
  • 파일 확장자는 .agent.md를 사용한다. 예:
    • .github/agents/accessibility.agent.md
    • .github/agents/security-audit.agent.md
  • CLI는 정의된 도구와 지침에 따라 스크립트 실행, API 호출, 저장소 분석 등을 반복 가능한 방식으로 수행한다.

자동화할 수 있는 보안 감사

글에서는 보안 점검을 대표적인 커스텀 에이전트 활용 사례로 제시한다.

  • 여러 저장소에서 팀의 표준 보안 도구를 실행한다.
    • gitleaks: 비밀·자격 증명 탐지
    • trivy: 파일 시스템 및 컨테이너 취약점 검사
    • semgrep: 정적 분석
    • gh: GitHub 설정 및 의존성 검토
    • jq, git: 결과 처리와 저장소 작업
  • 결과를 Critical, High, Medium, Low 심각도로 분류한다.
  • 담당자와 다음 조치를 포함한 PR용 체크리스트로 출력한다.
  • 저장소에 이미 존재하는 설정 파일을 우선 사용한다.
    • .semgrep.yml
    • .trivyignore
    • .gitleaks.toml
  • 도구가 설치되지 않은 경우 결과를 추측하지 않고 “검사 범위의 공백”으로 기록한다.
  • 토큰이나 자격 증명 등 민감한 정보는 출력에서 마스킹한다.
  • CODEOWNERS가 없으면 경로별 기본 담당 팀을 매핑해 후속 조치를 명확히 한다.

커스텀 에이전트의 장점

  • 반복 작업을 자동화해 명령어 재실행과 컨텍스트 재설명을 줄인다.
  • 팀 표준을 프롬프트가 아닌 저장소 파일로 관리할 수 있다.
  • 결과 형식과 품질 기준이 일관된다.
  • CLI에서 시작한 작업을 IDE와 GitHub의 리뷰·PR 흐름으로 자연스럽게 연결할 수 있다.
  • 에이전트 설정 자체를 코드 리뷰 대상으로 삼아 변경 이력과 책임 소재를 남길 수 있다.

반복적으로 수행하는 보안 검사, 접근성 검토, 테스트 실행, 로그 분석 같은 작업부터 .github/agents에 에이전트로 정의하는 것이 좋다. 특히 허용 도구, 민감 정보 처리, 실패 시 동작, 결과 형식을 명확히 작성하면 Copilot CLI를 단순한 명령어 생성기가 아니라 팀 표준을 실행하는 재사용 가능한 워크플로 엔진으로 활용할 수 있다.