Ce qu'est vraiment ChatGPT Codex
Trois objets différents se vendent sous des noms proches. Les confondre, c'est pourquoi la plupart des guides s'arrêtent à l'installation, puis échouent dès la première vraie tâche.
| Ce que vous avez ouvert | Ce que c'est | Comment savoir que ça marche |
|---|---|---|
| ChatGPT Codex | L'agent de code d'OpenAI. Extension IDE + CLI, même cache de connexion. | La palette de commandes affiche Codex: Open Codex Sidebar (ou Codex: New Codex Agent). |
| Agent / Composer Cursor | L'agent de Cursor. Utilise la liste de modèles de Cursor (Claude, GPT-5, Gemini, …). | Le panneau agent à droite de Cursor, pas la vue de l'extension Codex. |
| GPT-5-Codex comme modèle | Un modèle de la famille GPT-5 calibré pour le code, appelable depuis le chat Cursor ou un fournisseur custom. | Il apparaît dans le sélecteur de modèles de Cursor. Pas de sidebar Codex, pas de CLI Codex. |
La doc officielle liste Cursor comme éditeur compatible et pointe vers l'extension Marketplace
openai.chatgpt. Un
modèle nommé Codex dans le sélecteur de Cursor ne prouve pas que cette extension est installée. Le critère
visible, c'est la commande ou la sidebar Codex, documentée sur
la page Codex IDE d'OpenAI.
Quelle installation choisir ?
- Extension Codex officielle : le chemin par défaut. Fichiers ouverts et sélections deviennent du contexte, les modifications s'affichent en diff à garder ou refuser, et une tâche plus longue peut partir vers Codex cloud depuis le même chat.
- CLI Codex à côté de Cursor : le même agent dans le terminal. Utile pour les revues, les
scripts et la CI. Partage l'auth
~/.codexavec l'extension. - GPT-5-Codex dans la liste de modèles de Cursor : seulement si vous voulez ce modèle dans le chat de Cursor, pas l'agent Codex. C'est un réglage fournisseur/modèle, pas une installation de Codex.
Si l'objectif est « utiliser ChatGPT Codex dans Cursor », commencez par l'extension. Laissez de côté les passerelles API custom sauf si vous centralisez déjà la facturation par là et que vous connaissez l'ID de modèle exact exposé.
Installer l'extension Codex officielle
Installez depuis la fiche OpenAI, pas une extension tierce au nom voisin.
- Ouvrez Cursor, puis Extensions (
Ctrl+Shift+X/Cmd+Shift+X). - Cherchez l'extension officielle Codex / ChatGPT et vérifiez que l'ID est
openai.chatgpt. Installation directe : cursor:extension/openai.chatgpt ou la page Marketplace VS Code. - Rechargez Cursor si demandé, puis ouvrez un vrai dossier de projet. Une fenêtre vide ne prouve que l'interface s'ouvre.
- Ouvrez Codex : icône Codex, ou Codex: Open Codex Sidebar dans la palette de commandes
(
Ctrl+Shift+P/Cmd+Shift+P). - Connectez-vous avec ChatGPT, ou Use API Key si vous facturez via l'API OpenAI. Les tâches cloud exigent une connexion ChatGPT. Une installation réussie ne dit pas quel forfait, quota ou région vous avez : c'est le message dans la sidebar qui le dit.
Le CLI et l'extension réutilisent le même cache de connexion
(~/.codex/auth.json ou
le trousseau OS). Se déconnecter de l'un déconnecte l'autre. Détails :
authentification Codex.
Cursor 3.15+ : la sidebar peut ne plus s'ouvrir à droite
Depuis Cursor 3.15, la barre latérale secondaire (panneau de droite) est réservée à l'agent de Cursor. Codex s'y ancrer était accidentel. Codex: Open Codex Sidebar peut sembler ne rien faire, parce que le conteneur de vue qu'elle enregistre n'existe plus. C'est expliqué dans le fil forum Cursor sur la 3.15.
- Cherchez Codex sous Explorer à gauche. Glissez l'en-tête de section sur la barre d'activité pour lui donner une icône de premier niveau.
- S'il ne bouge pas : View: Reset View Locations, puis Developer: Reload Window.
- Pour un affichage côte à côte, lancez Codex: New Codex Agent (pas Open Sidebar), puis View: Split Editor Right ou glissez l'onglet au bord de l'éditeur.
Créer un point de reprise avant la première modification
La doc IDE d'OpenAI recommande des checkpoints Git avant et après une première tâche. Un rollback n'est sûr que si vous savez ce qui était déjà modifié.
git status --short
Commitez ou stashiez le travail que vous voulez garder, ou utilisez un clone jetable. Pour le premier essai, choisissez un fichier à faible risque avec un test exécutable en quelques secondes. Évitez migrations, auth, facturation, config de déploiement et refactors globaux. Vous validez la boucle, vous ne prouvez pas que l'agent peut porter un gros changement.
Donner à Codex un contexte qu'il peut vérifier
Ouvrez le fichier, sélectionnez la plus petite fonction concernée, puis ajoutez cette sélection au fil (palette : Add to Codex Thread). L'extension attache aussi les fichiers ouverts. Nommez le comportement, dites ce qui ne doit pas changer, et demandez un résultat observable.
Commencez par une demande d'explication sans édition. C'est peu risqué et ça montre si le code sélectionné a vraiment atteint Codex :
Explique ce que la fonction sélectionnée renvoie pour un tableau vide.
Indique la branche qui décide du résultat. N'édite aucun fichier.
La réponse doit citer le fichier et le symbole à l'écran. Une explication fluide de la mauvaise fonction est un échec de contexte, pas une installation réussie. Si ça correspond, envoyez une modification bornée :
Dans le fichier ouvert, fais en sorte que la fonction sélectionnée
renvoie [] pour une entrée vide. Garde la signature publique.
Plus petite modification pertinente. Montre le diff et nomme le test existant.
Puis lance : npm test -- path/to/relevant.test.ts
Rapporte la commande et la sortie réelle. Si ça ne peut pas tourner, arrête-toi et explique.
Remplacez la commande de test par celle du dépôt. Un test proposé n'est pas un test exécuté. Un test étroit qui passe ne prouve pas que le reste du comportement est intact. « Améliore ce fichier » n'a pas de point d'arrêt ; « change ce comportement, garde cette interface » en a un.
Placez les règles durables du projet dans AGENTS.md à la racine
(stack, commande de test, fichiers à ne pas toucher). C'est ce que Codex lit, IDE et CLI. Les règles Cursor
(.cursor/rules)
orientent l'agent de Cursor, pas Codex. Voir aussi
comment on configure Claude
dans Cursor si vous gardez les deux agents.
Relire le diff comme une preuve
Le flux IDE Codex présente une proposition dans l'éditeur. Un message final confiant ne remplace pas la lecture des fichiers. Cinq passes :
- Périmètre : uniquement les fichiers nécessaires à la demande ?
- Comportement : le code fait-il le résultat demandé, y compris le cas vide / erreur ?
- Contraintes : signature, dépendances, config, comportement non lié encore identiques ?
- Vérification : quelle commande a réellement tourné, et la sortie montre-t-elle un succès, un échec, ou « impossible à exécuter » ?
- Hypothèses : types, appelants, conventions de framework inventées qu'il vous reste à trancher ?
Refusez un diff trop large même si certaines lignes sont utiles. Une seconde demande plus étroite coûte moins cher
que de découper à la main un patch mélangé. Relancez ensuite git status --short pour un
inventaire avant/après. S'il existe un lint, un typecheck ou un test ciblé pour le code modifié, lancez-le vous-même
si Codex ne l'a pas fait.
La première boucle est réussie quand tout ceci est vrai : la sidebar (ou l'onglet éditeur) s'ouvre dans ce projet, l'explication collait à la sélection, la modification est restée dans les bornes, vous savez nommer le check exécuté, et vous pouvez garder ou inverser le changement sans perdre le reste.
Le CLI Codex à côté de Cursor
Même agent, surface terminal. Options d'install officielles d'après la doc CLI Codex :
# npm (Node.js 18+)
npm install -g @openai/codex
# Homebrew
brew install --cask codex
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
codex --version
codex login
Lancez codex à la racine
du projet. Sessions headless ou SSH qui ne peuvent pas terminer le callback OAuth localhost : utilisez
codex login --device-auth.
Mode clé API :
printenv OPENAI_API_KEY | codex login --with-api-key
Les défauts utilisateur sont dans ~/.codex/config.toml
(modèle, politique d'approbation, sandbox). Les overrides projet vont dans
.codex/config.toml et ne
se chargent que si le dépôt est de confiance. Ne laissez pas l'agent exécuter des commandes shell générées sans
étape de confirmation.
Utiliser GPT-5-Codex comme modèle Cursor
Certaines équipes veulent seulement le modèle calibré pour le code dans le Chat / Agent de Cursor, sans l'extension Codex. C'est une autre surface produit :
- Paramètres Cursor → Models. Si GPT-5-Codex (ou le variant GPT-5 étiqueté Codex du moment) est dans la liste et que votre forfait Cursor l'inclut, sélectionnez-le là.
- Sinon, ajoutez un fournisseur compatible OpenAI : URL de base du type
https://api.example.com/v1, une clé API dédiée, puis l'ID de modèle réellement listé par le fournisseur (souventgpt-5-codexplus un palier de raisonnement low / medium / high). Vérifiez l'ID dans le dashboard du fournisseur ; les noms bougent. - Envoyez une requête d'une ligne dans le chat Cursor. Si la requête ne quitte jamais la machine, c'est le fournisseur qui est mal configuré, pas « Codex ».
Utilisez une clé dédiée, hors git. Traitez les passerelles tierces comme un proxy de facturation : elles ne vous donnent ni la sidebar Codex, ni le handoff cloud, ni les commandes de revue du CLI.
Dépannage
Corrigez le premier checkpoint cassé. Réinstaller ou écrire un prompt plus long masque souvent la vraie cause.
La commande Codex est absente
Vérifiez que openai.chatgpt
est installée et activée dans le profil Cursor actif, puis rechargez. Si seul un modèle nommé Codex apparaît dans
le sélecteur de chat, vous avez installé un modèle, pas l'extension.
La sidebar s'ouvre mais la connexion ne se termine pas
Suivez le message actuellement affiché. Notez l'erreur exacte avant de changer des réglages. N'ajoutez pas une clé API au hasard ni un « pont » tierce partie, sauf si c'est le setup que vous avez choisi. Les proxies d'entreprise qui interceptent le TLS cassent souvent le callback navigateur ; changez de réseau seulement si votre organisation l'autorise, ou utilisez le login device-code du CLI.
Codex parle du mauvais code
Fermez les fichiers superflus, sélectionnez un bloc, et demandez-lui de nommer fichier + symbole avant d'éditer. S'il rate encore, redémarrez la sidebar et refaites le test d'explication. Une sidebar qui s'ouvre peut quand même recevoir le mauvais contexte.
La modification proposée est trop large
Refusez-la. Découpez : un fichier, un comportement, les interfaces à ne pas changer. Pour du code à risque, deux tours : un plan sans édition, puis l'autorisation du patch précis.
Il propose un test mais ne l'exécute pas
Demandez si la commande existe dans ce projet et de l'exécuter. Si les permissions l'empêchent, l'étape de vérification n'est pas finie. Vous pouvez lancer la commande dans le terminal de Cursor ; notez la sortie réelle au lieu de transformer une recommandation en succès.
Quand utiliser Codex vs l'agent de Cursor
- Codex : vous voulez l'agent OpenAI, l'usage via forfait ChatGPT, un diff local à relire, le CLI/CI, ou une tâche cloud que vous reprendrez plus tard.
- Agent Cursor : vous voulez le routage multi-modèles de Cursor, Claude, les règles du dépôt, et l'UI native Composer/Agent. C'est encore le chemin le plus rapide pour beaucoup d'édits du quotidien.
Faire tourner les deux est normal. Gardez leurs fichiers d'instructions séparés : n'attendez pas que
.cursor/rules contraigne
Codex, ni que AGENTS.md
contraigne Cursor.
En résumé
Installez openai.chatgpt,
ouvrez Codex dans le projet, faites un checkpoint git, prouvez le contexte avec une invite d'explication, puis
demandez une modification bornée et relisez le diff. Si la sidebar de droite est vide sur Cursor 3.15+, épinglez
Codex à gauche ou ouvrez-le en onglet éditeur. Le CLI est le même agent dans un terminal. Sélectionner GPT-5-Codex
comme modèle Cursor est utile, mais ce n'est pas Codex.