For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navigation principale
Theme

Guide de démarrage rapide de la CLI Codex Security

Connectez-vous, analysez un dépôt local et examinez le périmètre de l’analyse ainsi que les problèmes détectés.

Lancez une analyse standard d’un dépôt local avec la CLI autonome de Codex Security. À la fin de ce guide, vous disposerez d’un rapport enregistré que vous pourrez consulter à tout moment. Pour lancer une analyse dans une conversation Codex, utilisez le plugin Codex Security.

Vérifiez les prérequis

Utilisez Node.js 24 ou 26, ou Node.js 22 à partir de la version 22.13.0. Vous avez également besoin de Python 3.10 ou d’une version ultérieure. Si vous utilisez Python 3.10, installez tomli. Certaines requêtes de cybersécurité et certains résultats protégés nécessitent Trusted Access for Cyber.

La CLI s’exécute avec les permissions que vous accorde le système d’exploitation, sans s’interrompre pour demander votre approbation. Les processus d’analyse peuvent hériter de vos variables d’environnement. Avant de lancer l’analyse, retirez de l’environnement les identifiants dont elle n’a pas besoin. Consultez les permissions des analyses locales.

Installez et vérifiez la CLI

Installez le paquet public globalement, puis vérifiez sa version :

npm install -g @openai/codex-security
codex-security --version

Le paquet fournit la commande codex-security et son alias cs. Vérifiez que le répertoire des exécutables installés globalement par npm figure dans votre PATH.

Pour exécuter la CLI sans installation globale, utilisez npx :

npx @openai/codex-security --version

Les exemples ci-dessous utilisent npx @openai/codex-security. Après une installation globale, vous pouvez utiliser codex-security à la place.

La commande affiche la version du paquet installé. Utilisez info --json pour vérifier la version du plugin inclus, ou --help pour afficher la liste des commandes.

Connectez-vous

Connectez-vous avec votre compte ChatGPT :

npx @openai/codex-security login

Sur une machine sans navigateur, ajoutez --device-auth si votre espace de travail le permet, puis suivez les instructions de connexion qui s’affichent. Si l’authentification par appareil est désactivée, suivez les instructions de connexion via SSH. Utilisez --auth chatgpt dans les commandes d’analyse ci-dessous pour sélectionner cette connexion même si votre environnement contient aussi une clé API.

Pour les clés API et les autres fournisseurs, consultez la section Choisissez le mode d’authentification de l’analyse. Pour Amazon Bedrock, utilisez les identifiants AWS et les autorisations d’accès aux modèles à la place d’une connexion ChatGPT ou d’une clé API OpenAI.

Préparez une analyse

Remplacez ces deux chemins par celui de votre dépôt et celui d’un nouveau répertoire de résultats situé en dehors de l’arbre de travail Git du dépôt :

REPOSITORY=/path/to/repository
SCAN_DIR=/path/outside/repository/codex-security-results

Les résultats peuvent contenir des extraits de code source et des détails sur les vulnérabilités. Choisissez un emplacement privé. Si vous omettez --output-dir, la CLI utilise le répertoire où elle conserve son état.

Vérifiez la cible et le répertoire de sortie :

npx @openai/codex-security scan "$REPOSITORY" \
  --auth chatgpt --output-dir "$SCAN_DIR" --dry-run

Si la simulation réussit, les paramètres locaux sont valides. La simulation ne lance aucune analyse, ne charge pas les identifiants et ne vérifie pas l’interpréteur Python du plugin. Elle ne garantit donc pas que l’authentification fonctionnera ni que l’environnement d’exécution est correctement configuré.

Lancez votre première analyse

Retirez --dry-run pour lancer l’analyse :

npx @openai/codex-security scan "$REPOSITORY" \
  --auth chatgpt --output-dir "$SCAN_DIR"

Dans un terminal interactif, un tableau de bord affiche la progression en temps réel. Dans un terminal non interactif, la progression s’affiche ligne par ligne. Ajoutez --headless pour obtenir cet affichage ligne par ligne dans un terminal interactif. Le tableau de bord et les journaux enregistrés peuvent contenir du code source ou des identifiants. Vérifiez leur contenu avant de le partager.

À la fin de l’analyse, stderr indique le chemin du rapport, le nombre de problèmes détectés et le temps écoulé. Exemple :

  REPORT    /path/outside/repository/codex-security-results/report.md

  FINDINGS  2 (2 confirmed this scan; 0 previously found; 1 high, 1 medium)
  SCOPE     repository: .
  ELAPSED   42s
  RESULTS   /path/outside/repository/codex-security-results

Par défaut, la gravité d’un problème détecté ne fait pas échouer l’analyse. Pour obtenir un format exploitable par un programme sur stdout, ajoutez --json. Pour qu’un problème détecté fasse échouer un contrôle de CI selon sa gravité, définissez une règle de gravité.

Examinez les résultats

Ouvrez report.md dans le répertoire des résultats. Vérifiez la cible et la révision, puis examinez les problèmes détectés. Pour connaître l’état et le périmètre enregistrés, consultez scan.status et scan.scope dans scan-manifest.json.

Une analyse menée à terme renvoie le code 0, sauf si un problème détecté atteint le seuil de gravité configuré, auquel cas elle renvoie 1. Le code 0 ne garantit pas que l’analyse a couvert tous les fichiers. Une erreur liée aux données d’entrée, à l’exécution, à l’intégrité des résultats ou à la production d’une sortie requise entraîne le code 2. La référence de la CLI explique les codes de sortie.

Pour chaque problème signalé, examinez le code concerné, les conditions qu’un attaquant devrait réunir, les éléments qui valident le signalement et les incertitudes qui subsistent. Un signalement fondé sur le code source ne s’accompagne pas nécessairement d’une reproduction réussie à l’exécution. N’engagez une correction que si les éléments disponibles étayent le problème signalé.

Lorsque vous partagez ou archivez le répertoire de l’analyse, conservez tout son contenu. Il contient scan-manifest.json et findings.json, ainsi que le rapport et les artefacts associés. Consultez la section Artefacts d’analyse pour connaître la structure complète du répertoire.

Exportez le modèle de menaces enregistré

Les analyses standard, les analyses approfondies et les analyses de diff enregistrent leur modèle de menaces avec les résultats. Exportez-le au format Markdown sans vous connecter ni effectuer de nouvel appel au modèle :

npx @openai/codex-security export "$SCAN_DIR" \
  --artifact threat-model --output "$SCAN_DIR/exports/threatmodel.md"

Si aucun modèle de menaces n’a été enregistré, export renvoie une erreur. Consultez la référence de la commande d’export pour choisir l’analyse enregistrée à exporter et, si besoin, un autre format de sortie.

Consultez une analyse enregistrée

Affichez la liste des analyses du dépôt :

npx @openai/codex-security scans list "$REPOSITORY"

Copiez l’identifiant d’une analyse dans les résultats et utilisez-le dans la commande suivante :

npx @openai/codex-security scans show SCAN_ID

Lorsqu’une analyse interactive se termine et signale des problèmes, la CLI propose également de les parcourir. Examinez les éléments à l’appui de chaque signalement avant de choisir un correctif. Pour les problèmes déjà enregistrés, utilisez les commandes de validation et de correction.

Choisissez la prochaine analyse

Objectif Guide
Analyser certains chemins ou un diff Choisissez la cible de l’analyse
Analyser en parallèle les composants d’un même dépôt Analyse des composants
Utiliser un script de test pour valider des problèmes potentiels Validation personnalisée
Lancer des analyses approfondies ou limiter leur durée Configurez les analyses approfondies
Fournir des informations sur l’architecture ou des politiques de sécurité Ajoutez du contexte de sécurité
Changer de modèle ou modifier l’effort de raisonnement Configurez l’environnement d’exécution
Fixer une limite au coût estimé Options de sortie et règles d’analyse
Analyser plusieurs dépôts Analyses par lots
Analyser des pull requests GitHub ou lancer des analyses planifiées Guide GitHub Actions
Choisir un autre fournisseur de CI Présentation de la CI/CD

Si vous rencontrez un problème d’authentification, constatez des différences entre plusieurs exécutions d’une même analyse ou souhaitez signaler un faux positif, consultez la FAQ de la CLI.