5. Arquitectura y funcionamiento interno

Objetivo del tema

Comprender cómo Codex CLI coordina recursos locales con capacidades en la nube, qué mecanismos de seguridad intervienen y de qué manera se puede extender o auditar el agente en entornos profesionales.

5.1 Componentes principales

El CLI se compone de tres capas que cooperan en cada solicitud:

Motor local

Procesa prompts, inspecciona archivos, ejecuta comandos en sandbox y mantiene historiales por sesión dentro de ~/.codex/.

Modelos remotos

Envía contexto resumido a los modelos de OpenAI (por defecto GPT-5) y recibe respuestas estructuradas que incluyen diffs, comandos y explicaciones.

Configuración persistente

Las preferencias se almacenan en config.toml, donde puedes definir perfiles, proveedores de modelo alternativos e incluso cabeceras personalizadas para APIs compatibles.

Cuando trabajas en modo automatizado (codex exec), el motor local sigue siendo responsable de ejecutar comandos, pero el flujo evita solicitar aprobaciones interactivas y prioriza salidas en la terminal.

5.2 Cooperación entre ejecución local y nube

El CLI delega la generación al modelo remoto pero mantiene la ejecución en tu máquina. La tabla resume las responsabilidades de cada parte.

Local vs nube en Codex CLI
Aspecto Motor local Servicios en la nube
Acceso a archivos Lee y escribe en el workspace permitido, respeta .gitignore y perfiles de sandbox. No almacena archivos; recibe resúmenes y fragmentos generados por el cliente.
Comandos Ejecuta scripts, tests y linters, capturando stdout/stderr para el historial. No ejecuta código; interpreta resultados para decidir pasos siguientes.
Memoria Guarda sesiones, decisiones y archivos adjuntos en ~/.codex/sessions/. Gestiona prompts efímeros según las políticas de retención de OpenAI.
Escalabilidad Limitada por recursos del host (CPU, RAM, permisos). Escala automáticamente y aprovecha mejoras continuas del modelo.

5.3 Sandbox y aprobaciones

Codex combina un sandbox configurable con una política de aprobaciones que puedes ajustar en tiempo real:

  • Modos de sandbox: read-only (sólo lectura), workspace-write (edición dentro del proyecto) y danger-full-access (sin restricciones; usar con precaución).
  • Políticas de aprobación: never, on-request, on-failure y untrusted. Las combinas con --ask-for-approval.
  • Presets: --full-auto equivale a workspace-write + on-failure; --dangerously-bypass-approvals-and-sandbox elimina todas las protecciones.

Para experimentar sin riesgo, ejecuta codex sandbox macos o codex sandbox linux seguido del comando que quieras probar. Así confirmarás qué operaciones bloqueará el entorno antes de permitir que el agente lo intente.

5.4 Memoria contextual y AGENTS.md

La memoria del CLI se basa en elementos persistentes que puedes controlar:

  • Los archivos AGENTS.md se leen de forma jerárquica: global (~/.codex/), repositorio y carpeta actual. Sirven para definir instrucciones o convenciones propias.
  • codex resume permite reabrir conversaciones previas, conservar adjuntos y continuar tareas sin reconstruir el contexto manualmente.
  • En modo automatizado, codex exec resume --last reutiliza la sesión anterior respetando las mismas banderas (modelo, sandbox, aprobaciones).

5.5 Observabilidad y registros

El CLI se apoya en la infraestructura de logging de Rust. Puedes ajustar el nivel de detalle exportando RUST_LOG:

RUST_LOG=codex_core=info,codex_tui=info codex

Los logs de la TUI se guardan en ~/.codex/log/codex-tui.log, mientras que codex exec escribe los mensajes directamente en la consola. Activa niveles más verbosos al diagnosticar problemas de red, autenticación o permisos.

5.6 Integraciones y extensibilidad

La versión actual de Codex CLI está preparada para integrarse con otras herramientas:

  • Model Context Protocol: puedes lanzar codex mcp-server para ofrecer el agente como servicio a otras aplicaciones compatibles.
  • Perfiles y proveedores personalizados: mediante config.toml defines nuevos endpoints conformes al API de chat completions, incluyendo proveedores de terceros u orquestadores propios.
  • Automatización CI/CD: codex exec admite opciones como --json y --output-last-message para integrarse con pipelines y recolectar resultados estructurados.

Recomendaciones clave

  • Limita el sandbox a workspace-write siempre que sea posible y habilita danger-full-access sólo en entornos controlados.
  • Audita los logs periódicamente para detectar comandos inesperados o salidas de error repetitivas.
  • Documenta las políticas corporativas en AGENTS.md y perfíles dedicados para asegurar respuestas alineadas con tus estándares.

Conclusión: Codex CLI equilibra inteligencia en la nube con control local. Conocer sus capas, el sistema de sandbox y las vías de extensión te ayudará a desplegarlo con seguridad, observar su comportamiento y adaptarlo a las necesidades específicas de tu equipo.