Démarrage
Installation
npm install -g @openai/codex
Authentification
export OPENAI_API_KEY="sk-..."

Définir dans le profil shell ou le fichier .env

Première utilisation
codex "explain this project" codex "add input validation to app.py"
Commandes
Interactif (par défaut)
codex # démarrer une session interactive codex "fix the login bug" # avec un prompt initial
codex exec
codex exec "write unit tests for utils.py" codex exec "refactor db.py to use async"

Non-interactif — exécute la tâche jusqu'à la fin

codex review
codex review # revoir les changements indexés codex review --diff HEAD~3 # revoir les 3 derniers commits
Modes
Modes d'approbation
suggestAfficher les changements proposés, demander une approbation pour chaque modification et commande
auto-editAppliquer les modifications automatiquement, demander approbation pour les commandes shell
full-autoAppliquer les modifications et exécuter les commandes sans approbation
Définir le mode
codex --approval-mode suggest "add tests" codex --approval-mode auto-edit "refactor" codex --approval-mode full-auto "fix lint"
Configuration
Fichier de config
# ~/.codex/config.yaml model: o4-mini approval_mode: suggest providers: - name: openai api_key_env: OPENAI_API_KEY

Remplacements par projet : .codex/config.yaml à la racine du projet

Instructions de projet
# AGENTS.md (à la racine du projet) - Run tests with: uv run pytest - Use ruff for linting - Never modify migration files
Options de config utiles
modelModèle à utiliser (ex. o4-mini, o3)
approval_modeMode d'approbation par défaut
providersConfig du fournisseur API (clé, URL de base)
historySauvegarder l'historique : true / false
Bac à sable
Fonctionnement
Codex exécute les commandes dans un environnement isolé pour éviter les effets secondaires non intentionnels. L'accès réseau est désactivé par défaut. Les écritures de fichiers sont limitées au répertoire du projet.
Options du bac à sable
macOSApple Seatbelt (par défaut, intégré)
LinuxBac à sable basé sur Docker
--full-autoNécessite que le bac à sable soit activé
--dangerously-auto-approveIgnorer le bac à sable (non recommandé)
Conseils
Prompts efficaces
Être précis"ajouter une logique de réessai à fetch_data()" > "améliorer le code"
Référencer les fichiers"corriger le bug dans src/auth.py" restreint la portée
Énoncer les contraintes"ne pas modifier l'API publique" fixe des limites
ItérerAffiner avec des suivis dans la même session
Patterns de workflow
# Explorer → planifier → exécuter codex "explain the auth module" codex "plan how to add OAuth support" codex --approval-mode auto-edit "add OAuth" # Revoir avant de commit git add -A codex review
Options courantes
--model, -mRemplacer le modèle pour cette session
--approval-modeDéfinir le mode d'approbation
--quiet, -qSortie minimale
--no-project-docIgnorer AGENTS.md