본문으로 바로가기

GitHub AI Scan·Agentic Autofix 도입 가이드: CodeQL 차이와 비용·설정

GitHub 공개 저장소의 AI Scan·Agentic Autofix 지원 조건을 확인하고, CodeQL과의 차이부터 AI Credits 예산, 활성화 절차, 수정 PR 검토와 실패 점검까지 정리합니다.

목차
GitHub AI Scan·Agentic Autofix 도입 가이드: CodeQL 차이와 비용·설정

GitHub의 보안 기능을 고를 때는 검사할 코드가 새 PR에 있는지, 기본 브랜치의 기존 경고를 수정하려는지부터 구분하면 된다. CodeQL은 지원 언어의 코드를 분석하고, AI Scan은 CodeQL이 현재 다루지 않는 언어·프레임워크의 PR 변경을 보완한다. Agentic Autofix는 기존 경고에 대한 수정안을 만들어 검토할 PR로 제출한다. CodeQL 설명, AI Scan 정식 발표, Agentic Autofix 정식 발표

공개 저장소도 AI 기능의 지원 대상이지만, AI 사용량에는 별도 비용 조건이 있다. 특히 Agentic Autofix는 정식 발표와 최신 접근 관리 문서의 대상 설명이 달라 아래 자격표와 설정 확인을 함께 읽어야 한다.

이 글은 2026년 10월 16일 확인한 공식 문서 기준의 도입 가이드다. 실제 저장소에서 기능을 활성화하거나 검사·수정 테스트를 실행하지 않았다. 10월 16일 AI 테크 브리핑에서 소개한 발표를 바탕으로, 설정과 비용 통제에 필요한 절차를 정리했다.

CodeQL·AI Scan·Agentic Autofix는 무엇이 다른가

기능다루는 문제결과와 적용 지점사용량 확인 항목
CodeQL지원 언어의 코드를 데이터베이스와 쿼리로 분석저장소의 코드 스캐닝 경고. 기본 설정·워크플로·외부 CI로 실행 가능GitHub Actions에서 실행하면 Actions 사용량
AI ScanCodeQL 비대상 언어·프레임워크의 PR 변경 검사PR에 AI 표시가 붙은 권고성 결과. 병합 차단 요건으로 사용할 수 없음Code Security AI Credits
Agentic Autofix기본 브랜치의 기존 경고에 대한 수정 작업코드 탐색·수정·CodeQL 재검증을 시도한 뒤 draft PR 생성Code Security AI Credits와 Actions 실행시간

예를 들어 JavaScript·TypeScript 코드는 CodeQL의 지원 대상이다. 같은 저장소의 Shell 스크립트나 Dockerfile 변경은 AI Scan의 보완 영역에 해당할 수 있다. GitHub는 AI Scan 대상으로 PHP·HCL·JSP·Blazor 등도 소개한다. 모든 언어와 프레임워크를 포괄한다는 뜻은 아니다. CodeQL 지원 언어, AI Scan 검사 범위

이름이 비슷한 Copilot Autofix도 구분해야 한다. 기존 Copilot Autofix는 개별 경고의 수정안을 제안하고 사용자가 적용하는 방식이며, 제안 자체는 AI Credits를 소비하지 않는다. Agentic Autofix는 에이전트 세션을 시작해 수정 PR까지 준비한다. 기존 기능에서 비용 없이 받던 제안과 에이전트 실행의 비용을 같은 것으로 계산하면 안 된다. 두 Autofix의 차이

공개 저장소에서 사용할 수 있나

아래는 GitHub.com 저장소에 대한 10월 16일 문서의 자격 설명이다. 활성화 권한과 예산 조건은 별도다. AI Scan 자격, Agentic Autofix 접근 관리

저장소 소유자·공개 범위AI ScanAgentic Autofix의 현재 접근 문서
개인 계정의 공개 저장소지원지원 대상으로 설명하며 관리자가 직접 활성화
조직의 공개 저장소active-committer 라이선스 없이 지원공개 저장소를 지원 대상으로 설명
조직의 비공개·internal 저장소Code Security 또는 Advanced Security 필요해당 보안 상품을 갖춘 조직 저장소를 지원 대상으로 설명
개인 계정의 비공개 저장소미지원지원 대상으로 명시되지 않음
Enterprise Managed Users의 개인 네임스페이스미지원미지원

Agentic Autofix의 10월 15일 정식 발표는 Enterprise Cloud의 Code Security·Advanced Security 고객을 대상으로 명시한다. 반면 위 접근 문서는 개인 공개 저장소와 독립 조직의 설정도 안내한다. 이 차이만으로 확대 적용 시점을 추정할 수는 없다. 공개 저장소에서는 최신 문서의 자격 설명과 실제 설정 가능 여부를 대조하고, 표시되지 않는 기능을 활성화하려고 곧바로 유료 상품을 구매할 필요는 없다.

AI Scan과 Agentic Autofix 문서는 Copilot 라이선스가 필수가 아니라고 안내한다. 다만 정식 발표에는 Copilot 결제 수단 설정 조건도 있으므로, 라이선스와 청구 설정을 나눠 확인해야 한다.

먼저 청구 계정과 AI Credits 예산을 정한다

Code Security의 active-committer 라이선스와 AI 사용량은 별도다. 공개 저장소에서 라이선스가 필요 없더라도 AI Scan·Agentic Autofix는 Code Security AI Credits를 소비한다. 청구 계정에 Copilot으로 제공받은 포함 크레딧이 있으면 이를 먼저 쓰고, 없거나 소진되면 종량 사용이 적용된다. 조직 저장소의 사용량은 그 조직의 비용을 부담하는 계정으로 집계된다. 보안 기능 과금 문서

AI Credits의 환산 단위는 1크레딧당 0.01달러다. 예를 들어 추가 사용 예산 10달러는 이 단위로 1,000크레딧에 해당한다. 이는 검사 1,000회나 경고 1,000건을 보장하는 가격표가 아니다. AI Credits 단위와 예산 설명

Agentic Autofix에는 Actions 실행시간도 붙는다. 실제 청구액은 러너와 요금제 조건에 따라 다르다. 공개 저장소의 표준 GitHub-hosted runner 실행은 무료이며, larger runner는 공개 저장소에서도 과금된다. AI Credits와 Actions를 각각 확인해야 전체 비용을 알 수 있다. Actions 과금 조건

예산은 기능을 켜기 전에 다음 순서로 설정한다. 아래 UI 경로는 공식 예산 설정 문서의 절차를 요약했다.

  1. 개인은 계정 결제 설정, 조직·기업은 해당 계정의 Billing & Licensing에서 Budgets and alerts를 연다.
  2. New budget을 누르고 SKU-level budget을 선택한다. 상품은 Advanced Security, SKU는 Code Security AI Credits로 지정한다.
  3. 적용 범위와 달러 기준 예산을 정한다. 초과 사용을 막으려면 제공되는 사용 중단 옵션을 선택한다. 알림만 설정하면 사용이 계속될 수 있다.
  4. 75%·90%·100% 알림과 수신자를 정하고 예산을 생성한다. Actions 비용 한도는 별도로 확인한다.

AI Credits 전체를 묶은 예산도 적용 중이라면 보안 전용 예산에 여유가 있어도 전체 한도에서 막힐 수 있다. hard budget으로 가용량이 없어지면 AI Scan은 결과를 만들지 못하고 Agentic Autofix는 세션을 시작하지 못한다. 이때 기능 토글이 켜져 있다는 사실만으로 정상 작동을 판단하면 안 된다. AI 사용량 예산의 중단과 active-committer 라이선스 예산의 신규 활성화 제한은 서로 다른 동작이다. 예산 소진 시 동작

AI Scan 활성화: Code scanning과 상속 설정을 확인한다

AI Scan은 저장소의 Code scanning과 유효한 AI Scan 설정이 모두 활성화되어 있어야 한다. CodeQL default setup이 필수인 것은 아니며, CodeQL 분석이 대기하거나 실패해도 독립적으로 실행할 수 있다. PR 생성과 새 커밋에 맞춰 검사한다. AI Scan 실행 조건

1. CodeQL도 새로 도입한다면 지원 언어부터 설정한다

CodeQL 지원 언어가 있고 기존 분석 설정이 없는 저장소라면 다음이 기본 설정 경로다. 이는 AI Scan의 필수 설치 절차와 구분해서 적용한다. CodeQL default setup

  1. GitHub Actions 사용 가능 여부를 확인한다.
  2. 저장소 Settings → Advanced Security에서 Code Security 영역의 CodeQL analysis → Set up → Default를 선택한다.
  3. 분석 언어와 query suite를 검토하고 Enable CodeQL을 누른다. 생성된 구성을 시험하는 워크플로 결과를 확인한다.

이미 advanced setup이나 외부 업로드를 쓰고 있다면 위 절차를 그대로 덮어 적용하지 않는다. default setup으로 전환하면 기존 워크플로가 비활성화되고 CodeQL 분석 API 업로드가 차단될 수 있다고 문서가 설명한다.

2. 소유 구조에 맞게 AI Scan을 켠다

  • 기업 소속 조직: 기업 관리자는 Policies → Advanced Security의 AI Scan 정책에서 조직의 사용을 허용한다. 기본 정책은 허용 안 함이며, 허용만으로 기능이 켜지지는 않는다. 기업 정책 설정
  • 조직 저장소: 조직 설정의 Advanced Security → Global settings에서 Code scanning의 AI Scan을 활성화한다. 대상 저장소는 이를 상속하고 저장소 관리자가 개별적으로 제외할 수 있다. 조직 소유 저장소에서는 조직이 비활성화한 설정을 저장소 관리자가 따로 켤 수 없다. 조직 전체에 적용되는 범위를 먼저 확인한다. 조직 전역 설정
  • 개인 공개 저장소: 관리자가 저장소의 Code scanning 설정에서 AI Scan for pull requests 토글을 직접 켠다. 저장소별 제어

3. 실행 확인과 보안 판정을 구분한다

초기 점검에서는 저장소 내부 브랜치에서 대상 언어의 변경 PR을 만들어 보는 방식을 제안한다. Fork·Dependabot PR은 검사 대상이 아니므로 이 기능의 실행 확인에 사용할 수 없다. 결과가 나오면 PR의 Conversation과 Files changed에서 AI 표시를 확인한다. PR 결과와 제외 조건

결과가 없다는 사실만으로 검사 성공이나 취약점 부재를 결론 내릴 수는 없다. 적용 대상·설정·예산을 확인하고, 코드 리뷰에서는 실제 위험 경로와 수정 필요성을 판단해야 한다. 이 구분은 도입 평가를 위한 제안이다.

Agentic Autofix 활성화와 경고 할당

아래 설정은 현재 접근 관리 문서의 절차다. 앞서 설명한 발표와 문서의 자격 차이를 확인한 뒤 진행한다.

  1. 기업에 속한 조직은 기업 정책의 Advanced Security에서 Agentic Autofix를 허용한다. 독립 조직과 개인 공개 저장소는 이 단계를 건너뛴다.
  2. 조직 관리자는 조직의 전역 보안 설정에서 Agentic Autofix를 켠다. 대상 저장소에 기본 적용되므로 제외할 저장소를 먼저 협의한다. 프리뷰 때 사용한 조직도 다시 활성화해야 한다.
  3. 저장소 관리자는 Settings → Advanced Security의 Code Security 영역에서 해당 토글을 확인한다. 개인 공개 저장소는 여기서 직접 켜고 끌 수 있다. 조직 소유 저장소에서는 상위 조직·기업이 금지하면 저장소에서 재활성화할 수 없다.

기능을 켠 뒤에는 write 권한 사용자가 저장소의 Security and quality → Code scanning에서 기본 브랜치의 backlog 경고를 열고 Assign to Copilot으로 할당한다. 여러 경고를 묶으려면 목록이나 security campaign에서 최대 25개를 선택한다. 한 번의 할당은 한 에이전트 세션과 한 PR을 만든다. 경고 할당 절차

첫 평가에서는 연관성이 분명한 경고 하나부터 시작하는 편을 권한다. 수정 범위와 검토 비용을 파악한 다음 관련 경고를 묶으면 된다. 25개는 선택 한도이며 모두 해결된다는 보장이 아니다.

수정 PR을 병합하기 전에 확인할 것

Agentic Autofix의 검증은 best effort다. CodeQL을 다시 실행하지만 사용자 정의 CodeQL 쿼리, security-extended query suite, 타사 스캐너 경고의 수정 여부는 확인할 수 없다. 코드 변경을 만들었다는 것과 대상 경고를 검증했다는 것을 나눠 읽어야 한다. Autofix 검증 범위

PR에는 수정 요약과 검증 과정이 포함된다. 검증하지 못했거나 오탐으로 판단한 경우도 PR에서 설명하며, 상세 과정은 에이전트 세션 로그에서 확인할 수 있다. 필요하면 세션이나 PR 댓글에서 추가 수정을 요청한다. 생성 결과와 로그 확인

다음은 문서의 검토 요구를 실제 저장소에 적용하기 위한 제안이다. 이 글에서 실행한 테스트 결과는 아니다.

  • 원래 경고의 규칙 ID·분석 도구·대상 브랜치를 기록했다.
  • PR 설명의 검증 항목이 실제 대상 경고와 일치하는지 확인했다.
  • 변경한 파일·의존성·권한 범위가 문제 해결에 필요한 수준인지 검토했다.
  • 기존 기능 테스트와 수정한 위험 경로의 회귀 테스트를 실행하고 결과를 남겼다.
  • 경고 수 감소와 별개로 인증·인가·입력 처리에 새로운 문제가 없는지 검토했다.
  • 미검증 항목과 후속 작업의 담당자를 정한 뒤 병합 여부를 판단했다.

결과가 없거나 할당할 수 없을 때

증상우선 확인할 위치·조건
AI Scan 결과가 보이지 않음PR의 출처·작성자·변경 언어와 저장소의 Code scanning·유효 AI Scan 설정을 확인한다. 전체 저장소의 기존 경고 목록에서 결과를 찾는 기능은 아니다. 검사 조건
토글은 켜져 있는데 AI 작업이 시작되지 않음청구 계정의 보안 전용 예산과 전체 AI Credits 예산 중 소진된 한도가 있는지 확인한다. 예산과 중단 조건
Assign to Copilot이 없음경고가 기본 브랜치 backlog에 있는지, 자신에게 write 권한이 있는지 확인한다. 실행 전제
저장소에서 기능을 켤 수 없음상위 정책·조직 활성화·저장소 자격을 확인한다. EMU 개인 네임스페이스는 크레딧이나 보안 상품을 추가해도 지원 대상으로 바뀌지 않는다. 접근 제어, EMU 과금·자격 구분
PR은 만들어졌지만 해결 여부가 불명확함PR의 검증 설명과 세션 로그를 확인한다. 지원 밖 쿼리나 타사 경고라면 원래 분석 도구로 별도 검증한다. 검증 한계

평가를 멈출 때는 AI Scan의 저장소 제외 설정이나 Agentic Autofix 토글로 추가 실행을 제한하고 사용량을 확인한다. 예산 한도를 바꾸는 조치와 기능을 끄는 조치는 구분해서 기록해 두는 편이 좋다. AI Scan 제어, Agentic Autofix 비활성화

자주 확인할 질문

Copilot을 구독하지 않아도 사용할 수 있나

필수 구독은 아니다. 위 자격표의 적용 대상과 설정, 청구 계정·가용 예산을 확인해야 한다. Copilot으로 제공받은 포함 크레딧이 없는 계정은 사용량이 종량 집계된다. AI 기능 과금 조건

AI Scan 결과로 PR 병합을 막을 수 있나

현재는 할 수 없다. AI Scan 결과는 권고성이며 코드 스캐닝 검사를 실패시키거나 ruleset의 필수 병합 요건으로 동작하지 않는다. 병합 제한에 관한 공식 설명

AI Scan 결과를 Agentic Autofix에 바로 넘길 수 있나

AI Scan 결과는 PR에만 표시되고 backlog 경고로 쌓이지 않는다. Agentic Autofix의 할당 대상은 기본 브랜치 backlog 경고이므로 두 기능이 모든 탐지 결과를 자동으로 이어 처리한다고 생각하면 안 된다. AI Scan 결과의 위치, Agentic Autofix 할당 대상

참고 자료

깊이 읽기 모아 보기