原文標題:AI Scan for pull requests generally available
GitHub 10 月 15 日分別宣布 AI Scan for pull requests 與 Agentic autofix for code scanning alerts 正式開放,擴充 GitHub 程式碼安全防護的兩個階段:在 Pull Request 階段偵測問題,以及在已有安全警示後協助產生修補提案。兩項功能互補,但不應視為同一個自動化流程必然涵蓋所有漏洞。
AI Scan 是 CodeQL 的補充,針對 CodeQL 尚未完整支援的語言與技術,例如 PHP、Shell/Bash、Terraform HCL、Dockerfile、Java JSP 與 C# Blazor 等進行 AI 輔助掃描。啟用儲存庫的 code scanning 與有效 AI Scan 設定後,系統會自動在 Pull Request 執行,將結果顯示在 Conversation 與 Files changed,並標示 AI 來源、風險解釋及可能的修正建議。GitHub 特別指出 AI Scan 結果僅為建議,不會讓掃描檢查失敗,也不能透過 ruleset 強制阻擋合併;來自 fork 與 Dependabot 建立的 Pull Request 也不會執行。
Agentic autofix 則針對既有 code scanning 警示,由開發者指派給 Copilot。Copilot 會跨檔案檢查相關程式、提出修正、重新執行 CodeQL,必要時反覆調整,再建立待審查的 draft Pull Request。使用者也能一次選取最多 25 筆警示,請 Copilot 在單一 Pull Request 中處理,或透過 REST API 指派給指定機器人帳號。此功能只處理預設分支上的警示,不能直接指派僅出現在其他分支或 Pull Request 的警示。
AI Scan 對公開儲存庫可用;組織擁有的私有與內部儲存庫需 GitHub Code Security 或 GitHub Advanced Security,不必另購 Copilot 授權。Agentic autofix 則面向 GitHub Enterprise Cloud 的相關安全產品客戶,需要管理員開啟政策並設定 Copilot 計費方式。AI Scan 使用 Code Security AI Credits,Agentic autofix 還會消耗 GitHub Actions 分鐘數,均應留意使用量與預算。
發生了什麼事
GitHub 同日正式推出 AI 輔助掃描與跨檔案自動修補功能,涵蓋程式碼安全檢查的偵測及修復環節。
為什麼重要
安全掃描從既有規則分析延伸到更多技術棧,修復工作也可交由代理程式完成初稿,但仍需人工審查並注意成本與限制。
影響哪些人
使用 GitHub 的開發者、DevSecOps 團隊、企業安全管理員與維護公開專案的開源作者。
已確認與未確認
兩項功能均於 10 月 15 日宣布正式提供;AI Scan 不阻擋合併,Agentic autofix 不支援非預設分支警示,且適用方案及費用不同。