Vous installez Codex CLI. Vous le lancez plein d’enthousiasme. Vous lui dites : « Répare les tests cassés de ce repo ». Et c’est là que tout commence :
Codex: Je vais lancer pytest.
Permettre ? (o/n)
Vous tapez o. Immédiatement après :
Codex: Je vais modifier test_user.py.
Permettre ? (o/n)
Encore o. Et encore. Et encore. Chaque fichier que Codex veut lire, chaque commande qu’il veut exécuter, chaque ligne qu’il souhaite modifier. Confirmation, encore confirmation, toujours confirmation. C’est comme travailler avec un apprenti qui vous demande la permission pour tout.
Pendant ce temps, Claude Code ou Cursor Agent font le même travail sans vous interrompre. Qu’est-ce qui cloche ici ?
La réponse est simple : Codex est configuré par défaut comme un assistant trop prudent. Un choix compréhensible pour un outil récent. Mais, en tant qu’utilisateur avancé, ce mode conservateur devient vite insupportable pour une utilisation réelle.
La bonne nouvelle : cela se corrige en deux secondes.
Le système de permissions : approval mode
Codex utilise un concept appelé approval mode, qui définit quand une permission est requise. Par défaut, il demande votre validation à chaque étape :
- Exécution de commandes
- Écriture dans des fichiers
- Modification de code
- Création de nouveaux fichiers
- Lancement des tests
En clair : par défaut, Codex ne peut rien faire sans que vous lui disiez « oui ». C’est un peu comme un sudo obligatoire pour chaque action individuelle.
Le résultat : ce qui devrait fonctionner comme un agent autonome devient un échange interminable, où vous êtes le maillon le plus lent.
La solution : un flag pour tout débloquer
codex --full-auto
Depuis la version 0.1.2, --full-auto est le raccourci officiel qui regroupe --approval-mode never et --sandbox workspace-write en un seul flag. Si vous utilisez une version antérieure, la syntaxe complète fonctionne également :
codex --approval-mode never
Avec l’un ou l’autre, Codex arrête de demander votre validation. Il exécute les commandes directement, modifie les fichiers si nécessaire, et crée de nouveaux fichiers. Il agit comme il devrait : un agent qui travaille de manière autonome.
Vous voulez rendre ce comportement permanent ? Voici deux options :
# Option 1 : en utilisant la commande de configuration
codex config set approval_mode never
# Option 2 : modification directe du fichier de configuration
# ~/.codex/config.toml
approval_mode = "never"
Désormais, chaque fois que vous démarrez Codex, il fonctionnera sans interruption.
Le deuxième problème : le sandbox
Mais il y a une autre limitation. Même en désactivant les demandes de confirmation, le sandbox par défaut peut être trop restrictif, empêchant Codex d’écrire dans le dépôt.
Pour le développement, le mode que vous voulez est workspace-write :
- Lecture de l’intégralité du dépôt
- Modification des fichiers existants
- Création de nouveaux fichiers
- Exécution des commandes dans le projet
Voici la commande à exécuter pour un Codex pleinement fonctionnel :
# Version récente (0.1.2+)
codex --full-auto
# Version détaillée (équivalente)
codex --approval-mode never --sandbox workspace-write
Deux flags — ou un seul, si vous utilisez --full-auto. Cela suffit à transformer un assistant hésitant en un agent qui agit avec autonomie.
Créer un alias pour automatiser
Si vous travaillez dans un terminal (et puisque vous utilisez Codex CLI, c’est probablement le cas), créez un alias :
# Fish (version récente)
alias codex-agent "codex --full-auto"
# Fish (version détaillée)
# alias codex-agent "codex --approval-mode never --sandbox workspace-write"
# Bash/Zsh
alias codex-agent="codex --full-auto"
Désormais :
codex-agent
Et vous avez un Codex qui se comporte comme un véritable agent.
Mode one-shot : exécuter une tâche directement
Là où cela devient intéressant, c’est lorsque vous passez une tâche complète en argument à Codex :
codex-agent "Exécute la suite de tests, identifie les tests échoués, corrige le code et répète l’opération jusqu’à ce que tout réussisse."
Sans session interactive. Sans interruptions. Codex analyse le projet, lance les tests, identifie les erreurs, modifie le code, relance les tests et répète le processus jusqu’à ce que tout passe. Vous pouvez tranquillement aller boire un café.
Ce modèle — le agentic loop — est précisément ce que tous les agents de codage modernes intègrent. Une boucle itérative qui travaille jusqu’à ce que la tâche soit accomplie. La différence ? Par défaut, Codex vous impose de valider chaque étape. Avec ces deux flags, vous vous retirez du processus et laissez l’agent faire son travail.
La comparaison avec Claude Code
Voici une comparaison qui ne plaît pas à OpenAI : Claude Code est déjà configuré pour fonctionner de manière fluide dès le départ.
| Aspect | Codex CLI (par défaut) | Codex CLI (configuré) | Claude Code |
|---|---|---|---|
| Permissions | Demande pour TOUT | Ne demande rien | Demande pour opérations destructrices |
| Sandbox | Restrictif | workspace-write | Permissif avec confirmation sélective |
| Mode CLI | Oui | Oui | Natif, orienté CLI |
| Mode one-shot | codex "prompt" | codex-agent "prompt" | claude --print "prompt" |
| Config nécessaire | 0 flags | 2 flags | 0 flags |
Claude Code adopte une approche plus équilibrée : il fonctionne sans interruptions pour 90 % des opérations, mais demande une confirmation pour les actions potentiellement destructives (comme supprimer un fichier ou exécuter une commande modifiant le système). C’est l’équilibre que Codex devrait avoir par défaut.
Le prompt fait toute la différence
Une fois les permissions configurées, la qualité des résultats dépend uniquement de votre prompt. Une instruction vague produit des résultats tout aussi flous.
# Mauvais
Répare les tests.
# Bon
Répare les tests échoués dans ce dépôt.
Travaille de manière autonome :
- analyse la structure du dépôt
- exécute les tests
- modifie le code pour corriger les erreurs
- relance les tests
- répète jusqu’à ce que tous les tests réussissent
Ne demande pas de confirmation.
La différence est énorme. Le premier prompt peut pousser Codex à réparer un seul test puis à s’arrêter. Le deuxième précise qu’il doit itérer jusqu’à ce que tout soit corrigé. C’est comme donner une liste claire à un artisan au lieu de dire simplement « répare ça ».
Cela s’applique également à Claude Code, Cursor et tout autre agent. Le approval mode élimine les interruptions. Le prompt, lui, détermine la qualité du travail effectué sans interruptions.
Quand NE PAS désactiver les permissions
Ce ne serait pas responsable de vous conseiller d’utiliser --approval-mode never tout le temps sans vous avertir :
N’utilisez pas ce mode sur des dépôts de production sans revue. Un agent autonome qui commit directement dans le branche main sans supervision peut provoquer des problèmes sérieux. Le mode autonome est idéal pour :
- Travailler sur des branches de développement que vous contrôlez
- Des sessions interactives où vous surveillez les actions de l’agent
- Des tâches bien délimitées : « répare les tests », « formate ce module », « mets à jour les dépendances »
Pour les dépôts de production, le mode avec confirmation sélective de Claude Code est plus sage : autonomie dans les opérations de routine, mais validation nécessaire avant les actions critiques.
Résumé en 30 secondes
Si Codex CLI vous exaspère avec ses demandes constantes :
# Option rapide (0.1.2+)
codex --full-auto
# Option détaillée (équivalente)
codex --approval-mode never --sandbox workspace-write
# Permanent
codex config set approval_mode full-auto
Un simple flag suffit à transformer un assistant hésitant en un agent autonome. La configuration par défaut de Codex privilégie la sécurité à la productivité. Maintenant, vous savez comment changer cela.
Cet article a été publié en espagnol et traduit avec l’aide de l’IA.