OpenAI a lancé Codex CLI, un agent de développement open source qui amène la puissance des modèles GPT directement dans votre terminal. Contrairement à ChatGPT qui fonctionne dans un navigateur, Codex CLI opère localement sur votre machine, lit vos fichiers, exécute des commandes et modifie votre code — le tout depuis une interface en ligne de commande.
Installation et configuration
Codex CLI nécessite Node.js 22+ et une clé API OpenAI :
npm install -g @openai/codex
codex --version
Configurez votre clé API :
# Linux / macOS : ajouter à ~/.bashrc ou ~/.zshrc
export OPENAI_API_KEY="sk-proj-votre-cle-api-ici"
source ~/.bashrc
Les trois modes d'exécution
Mode Suggest (par défaut)
Le mode le plus sûr. Codex CLI peut lire vos fichiers mais demande votre approbation pour chaque modification :
codex "Ajoute une gestion d'erreurs au fichier src/api/users.ts"
Mode Auto-Edit
Modifications de fichiers automatiques mais confirmation requise pour les commandes shell :
codex --approval auto-edit "Refactore tous les callbacks en async/await dans src/services/"
Mode Full-Auto
Autonomie totale dans un sandbox réseau sécurisé :
codex --approval full-auto "Crée un module d'authentification JWT complet avec tests"
Exemples pratiques
Génération de code avec contexte
codex "Regarde comment les endpoints dans src/controllers/ sont structurés,
puis crée un nouveau controller ProductController avec les opérations CRUD.
Utilise les mêmes patterns de validation et de gestion d'erreurs."
Écriture de tests automatisée
codex "Écris les tests unitaires pour src/services/payment.service.ts.
Utilise Jest, mock les dépendances externes (Stripe, base de données).
Couvre les cas nominaux et les cas d'erreur."
Exemple de test généré :
import { PaymentService } from './payment.service';
import { StripeClient } from '../clients/stripe.client';
describe('PaymentService', () => {
let service: PaymentService;
let stripeClient: jest.Mocked<StripeClient>;
beforeEach(() => {
stripeClient = { createCharge: jest.fn(), refund: jest.fn() } as any;
service = new PaymentService(stripeClient);
});
describe('processPayment', () => {
it('should process a valid payment successfully', async () => {
stripeClient.createCharge.mockResolvedValue({ id: 'ch_123', status: 'succeeded' });
const result = await service.processPayment({ amount: 2999, currency: 'eur' });
expect(result.status).toBe('succeeded');
});
it('should throw on insufficient funds', async () => {
stripeClient.createCharge.mockRejectedValue(new Error('card_declined'));
await expect(service.processPayment({ amount: 2999, currency: 'eur' }))
.rejects.toThrow('card_declined');
});
});
});
Choix du modèle
# Modèle par défaut optimisé pour le code
codex --model codex-1 "Analyse l'architecture de ce projet"
# GPT-4.1 pour les tâches complexes
codex --model gpt-4.1 "Refactore l'architecture complète du module auth"
# o4-mini pour les tâches simples (moins cher)
codex --model o4-mini "Ajoute des commentaires JSDoc aux fonctions exportées"
Comparaison rapide avec les alternatives
- Codex CLI vs Claude Code : Codex est open source avec sandboxing réseau natif. Claude Code a un système de mémoire persistante plus mature avec CLAUDE.md et les MCP servers.
- Codex CLI vs Copilot CLI : Copilot CLI explique et suggère des commandes shell. Codex CLI est un agent complet qui modifie du code à travers plusieurs fichiers.
Codex CLI apporte une approche intéressante du développement assisté par IA. Son système de trois niveaux d'approbation offre un contrôle fin, et le sandboxing natif apporte une sécurité appréciable. Son caractère open source est un atout majeur qui permet à la communauté de contribuer et d'auditer le code.




