REFERENCIA RÁPIDA DE OPENAI CODEX CLI
Uso del CLI, modos, configuración, comandos clave
Primeros Pasos
Instalar
npm install -g @openai/codex
Autenticación
export OPENAI_API_KEY="sk-..."
Establecer en el perfil del shell o en el archivo .env
Primera Ejecución
codex "explain this project"
codex "add input validation to app.py"
Comandos
Interactivo (Por Defecto)
codex # iniciar sesión interactiva
codex "fix the login bug" # con prompt inicial
codex exec
codex exec "write unit tests for utils.py"
codex exec "refactor db.py to use async"
No interactivo — ejecuta la tarea hasta completarla
codex review
codex review # revisar cambios staged
codex review --diff HEAD~3 # revisar últimos 3 commits
Modos
Modos de Aprobación
| suggest | Mostrar cambios propuestos, requiere aprobación para cada edición y comando |
| auto-edit | Aplicar ediciones automáticamente, requiere aprobación para comandos shell |
| full-auto | Aplicar ediciones y ejecutar comandos sin aprobación |
Establecer el Modo
codex --approval-mode suggest "add tests"
codex --approval-mode auto-edit "refactor"
codex --approval-mode full-auto "fix lint"
Configuración
Archivo de Config
# ~/.codex/config.yaml
model: o4-mini
approval_mode: suggest
providers:
- name: openai
api_key_env: OPENAI_API_KEY
Overrides por proyecto: .codex/config.yaml en la raíz del proyecto
Instrucciones del Proyecto
# AGENTS.md (in project root)
- Run tests with: uv run pytest
- Use ruff for linting
- Never modify migration files
Opciones de Config Útiles
| model | Modelo a usar (ej., o4-mini, o3) |
| approval_mode | Modo de aprobación por defecto |
| providers | Config del proveedor API (clave, URL base) |
| history | Guardar historial de conversación: true / false |
Sandbox
Cómo Funciona
Codex ejecuta comandos en un entorno aislado (sandbox)
para evitar efectos secundarios no deseados. El acceso
a la red está deshabilitado por defecto. Las escrituras
de archivos están restringidas al directorio del proyecto.
Opciones de Sandbox
| macOS | Apple Seatbelt (por defecto, integrado) |
| Linux | Sandbox basado en Docker |
| --full-auto | Requiere que el sandbox esté habilitado |
| --dangerously-auto-approve | Omitir sandbox (no recomendado) |
Consejos
Prompts Efectivos
| Sé específico | "add retry logic to fetch_data()" > "improve code" |
| Referencia archivos | "fix the bug in src/auth.py" acota el alcance |
| Establece límites | "don't change the public API" define restricciones |
| Itera | Sigue refinando en la misma sesión |
Patrones de Flujo de Trabajo
# Explore → plan → execute
codex "explain the auth module"
codex "plan how to add OAuth support"
codex --approval-mode auto-edit "add OAuth"
# Review before commit
git add -A
codex review
Flags Comunes
| --model, -m | Override del modelo para esta sesión |
| --approval-mode | Establecer modo de aprobación |
| --quiet, -q | Salida mínima |
| --no-project-doc | Ignorar AGENTS.md |