GitHub a fait passer AI Scan en disponibilité générale le 15 octobre 2026. Cet outil d’analyse de sécurité s’appuie sur un modèle de langage pour repérer des vulnérabilités dans des langages et frameworks que CodeQL, le moteur d’analyse statique historique de la plateforme, ne couvre pas encore. La bascule intervient après une préversion publique ouverte en juillet, puis un assouplissement des prérequis en septembre.
Un détecteur pensé pour combler les angles morts de CodeQL
CodeQL reste l’outil de référence pour les langages qu’il supporte nativement, mais de nombreux dépôts mélangent du code applicatif avec des scripts d’infrastructure, de déploiement ou de configuration que l’analyse statique classique ignore. AI Scan vient combler cet espace : il s’exécute automatiquement sur les pull requests et signale des failles potentielles dans des fichiers que CodeQL laisse de côté, sans se substituer à lui sur son propre périmètre.
Les langages et frameworks couverts
La liste annoncée par GitHub inclut PHP, Bash et Shell, Terraform (HCL), les Dockerfiles, JSP pour Java et Blazor pour C#. Pour un écosystème comme celui du PHP, où une large partie de l’héritage applicatif échappe aux analyseurs statiques modernes, la couverture est loin d’être anecdotique.
| Critère | CodeQL | AI Scan |
|---|---|---|
| Méthode | Analyse statique par requêtes | Détection assistée par modèle de langage |
| Langages typiques | JS/TS, Python, Java, C/C++, Go, Ruby… | PHP, Bash, Terraform, Dockerfile, JSP, Blazor |
| Effet sur la fusion | Peut bloquer via un ruleset | Consultatif uniquement, ne bloque jamais |
| Pull requests de forks | Supporté selon configuration | Non exécuté |
| Facturation | Inclus GitHub Advanced Security / Code Security | Consomme des crédits IA Code Security |
Ce que voient les équipes dans une pull request
Les résultats d’AI Scan apparaissent aux côtés de ceux de CodeQL, dans les onglets Conversation et Files changed, avec un indicateur « AI » qui les distingue des alertes classiques. Chaque signalement peut inclure une explication du risque et une proposition de correctif. L’activation passe par le réglage « AI Scan » du dépôt, lui-même conditionné à l’activation du code scanning.
# Vérifier l'état d'AI Scan sur un dépôt via l'API GitHub
gh api \
-H "Accept: application/vnd.github+json" \
/repos/ORG/REPO/code-scanning/default-setup \
--jq '.state, .query_suite'
# Les dépôts publics (personnels ou organisationnels) sont éligibles sans licence Copilot ;
# les dépôts privés ou internes nécessitent GitHub Code Security ou Advanced Security.AI Scan ne bloque jamais une fusion : ses signalements restent consultatifs, contrairement aux alertes CodeQL qui peuvent être exigées avant merge via un ruleset.
Le choix de GitHub de garder AI Scan en mode purement consultatif tranche avec l’approche des rulesets de code scanning, pensés pour imposer un seuil de qualité avant fusion. Pour les équipes qui gèrent des bases de code PHP historiques, notamment dans l’écosystème WordPress, la détection de vulnérabilités sur du code que les pratiques de durcissement habituelles ne couvrent pas toujours en amont peut combler un vrai manque, à condition de ne pas la confondre avec un filet de sécurité bloquant.
Pourquoi ce choix de conception
En laissant les détections d’AI Scan hors du chemin de fusion, GitHub limite le risque de faux positifs bloquants, un problème classique des outils d’analyse assistée par IA. La contrepartie est que les équipes doivent intégrer ce flux de signalements dans leur routine de revue, au même titre que les outils en ligne de commande déjà utilisés au quotidien, qu’il s’agisse de linters, de scanners de dépendances ou d’assistants de revue.
Ce qu’il faut retenir
AI Scan passe en disponibilité générale avec un périmètre clairement délimité : compléter CodeQL sur des langages d’infrastructure et de configuration, sans jamais bloquer une fusion. La couverture de PHP, Bash et Terraform intéresse directement les équipes qui opèrent des applications web historiques aux côtés de leur infrastructure as code. Le coût en crédits IA et l’absence de scan sur les forks restent les deux points à vérifier avant de généraliser son usage.
Ce choix de rester consultatif est le bon réflexe de la part de GitHub. Un outil de détection assisté par IA qui bloquerait des fusions sur la base de faux positifs aurait vite fini désactivé par les équipes excédées — c’est un biais qu’on observe sur à peu près tous les scanners trop zélés. En revanche, le fait qu’AI Scan ignore les pull requests de forks mérite d’être gardé en tête par quiconque maintient un projet open source avec beaucoup de contributions externes : c’est précisément là que la vigilance humaine doit rester la plus forte, pas le terrain où l’automatisation progresse le plus vite. — Simon Janvier
Pour aller plus loin : l’annonce officielle sur le GitHub Changelog.
