Está roto… El debate entre Claude Code vs Codex finalmente ha terminado
AAI LABS
Computing/SoftwareSmall Business/StartupsInternet Technology
Transcript
00:00:00Durante mucho tiempo, el modelo preferido de todos para programar fue Claude.
00:00:03No solo porque funcionaba bien, sino porque no había otras opciones al mismo nivel.
00:00:07Luego, los modelos GPT dieron un paso al frente y cerraron la brecha, especialmente con el lanzamiento de GPT 5.5, que
00:00:12la redujo casi por completo.
00:00:14Para comparar los dos, necesitábamos ponerlos en los entornos diseñados específicamente para ellos, lo que
00:00:18significa sus propias interfaces de línea de comandos (CLI).
00:00:19Así que vamos a poner a prueba a Opus 4.7 y GPT 5.5 para ver cómo se desempeñan el uno
00:00:25contra el otro.
00:00:26Los probaremos en 9 categorías para descubrir cuál destaca realmente y,
00:00:29al final, sabrás cuál se gana un lugar en tus flujos de trabajo.
00:00:33La usabilidad es donde Claude Code empieza a fallarnos.
00:00:36Lo hemos estado usando para la mayoría de nuestras tareas, de programación y no programables, pero solo fue bueno
00:00:40hasta la actualización 2.1.0.
00:00:43Después de eso, las cosas empezaron a ir cuesta abajo para Claude Code.
00:00:46La interfaz de usuario es la parte más frustrante porque tiene el mayor impacto en la experiencia.
00:00:50La terminal falla, el renderizado se rompe y mucho de lo que antes se sentía pulido ahora se siente
00:00:55incorrecto.
00:00:56Solía ser una de las mejores interfaces de terminal (TUI), pero solo hasta que empezó a ser programada por sensaciones.
00:00:59Ahora se siente más rota, con múltiples errores como problemas de renderizado y fugas de caché, sobre los
00:01:03que no solo nos quejábamos nosotros.
00:01:05El problema mayor es que eliminaron el modo de permisos de omitir peligrosamente y lo reemplazaron
00:01:09con el modo automático por defecto.
00:01:11Solíamos ejecutar el modo de omisión de permisos para la mayoría de nuestras tareas, con ganchos configurados para los
00:01:15archivos que no queríamos que Claude tocara.
00:01:17Ahora pide permisos incluso en ese modo; cuando le dimos a Claude una instrucción para crear una habilidad,
00:01:22cambiamos a otra sesión de Claude para hacer otra cosa, y solo más tarde descubrimos que la creación de la habilidad
00:01:27estuvo bloqueada por un aviso de permiso para escribir en la carpeta .claude todo ese tiempo.
00:01:32Regresamos esperando que las habilidades estuvieran creadas, y simplemente estaba ahí sentado esperando.
00:01:36Codex maneja esto mejor porque su modo YOLO no pide permisos de la forma
00:01:40en que lo hace el modo automático de Claude Code.
00:01:42La CLI está construida en Rust, por lo que la interfaz es mucho más fluida que la configuración basada en React de Claude Code,
00:01:47e incluso después de una sesión larga, nada se rompe.
00:01:49La configuración de personalidad es otro punto donde Codex toma la delantera.
00:01:53Podemos configurar la personalidad para un lenguaje más directo y conciso.
00:01:56Esto se debe a que GPT 5.5 es significativamente más servil y está de acuerdo con cada instrucción
00:02:02más de lo que lo está Opus 4.7.
00:02:04Es por eso que cambiar la personalidad en Codex evita ese comportamiento predeterminado en el modelo.
00:02:08Para hacer que Opus 4.7 sea directo, tenemos que depender de instrucciones en Claude.md, mientras que Codex logra
00:02:14eso con solo un cambio de ajuste.
00:02:16Las habilidades preinstaladas son otra diferencia.
00:02:18Codex viene con muchas que Claude Code no tiene, incluyendo la habilidad de navegación del agente.
00:02:22Eso importa para cualquiera que construya aplicaciones, porque en Codex no necesitamos conectar explícitamente
00:02:26los MCP para la verificación del navegador.
00:02:29Lo hace automáticamente después de implementar cualquier función.
00:02:31También tiene un creador de habilidades integrado, así que cuando queremos una nueva habilidad, genera una
00:02:35completa con la estructura correcta y los archivos de referencia.
00:02:38En Claude, tendríamos que instalar el creador de habilidades por separado para obtener una habilidad
00:02:42con una estructura adecuada.
00:02:43De lo contrario, solo escribe un archivo MD.
00:02:45Ahora bien, todavía hay dos cosas que Claude Code hace mejor.
00:02:47Codex no ofrece la función de rebobinar, que es la que más usamos, por lo que no tenerla es
00:02:51una verdadera desventaja.
00:02:52Claude Code también nos permite ver su pensamiento expandiéndolo con Ctrl+O, algo que Codex no
00:02:57hace bien.
00:02:58Ver el razonamiento es útil porque podemos corregir el enfoque a mitad de la tarea en lugar de
00:03:02esperar a que termine la implementación para luego rehacerla.
00:03:05Así que, viendo cómo la experiencia de usuario de Claude Code se degrada con cada nueva actualización, Codex se lleva un
00:03:10punto por usabilidad.
00:03:11En cuanto al coste, Claude Code es la herramienta más cara por un amplio margen.
00:03:15No en términos de precios reales, sino por usabilidad por el mismo precio.
00:03:19Claude Code no está disponible en el nivel gratuito en absoluto y solo está disponible a partir de
00:03:23los planes Pro y Max.
00:03:24Los planes tienen precios casi idénticos.
00:03:26El plan Pro es básicamente inutilizable para cualquier aplicación a buena escala porque alcanza sus
00:03:30límites con solo unas pocas tareas.
00:03:32Ni siquiera podemos usar Opus 4.7 correctamente para ninguna tarea significativa en Pro.
00:03:36Los límites se agotan muy rápido incluso en el plan Max que utilizamos.
00:03:39Codex está en una mejor posición desde el principio.
00:03:41Está disponible incluso en el plan gratuito con uso limitado.
00:03:44Ambos usan un mecanismo similar de ventana de 5 horas, así que para ver cuál logra hacer más trabajo, los
00:03:49probamos en tareas de la misma escala.
00:03:51Claude Code ya tiene un comando de contexto que visualiza cuántos tokens ha usado una sesión,
00:03:56pero Codex no tiene un equivalente integrado, así que tuvimos que buscar una solución alternativa para la comparación.
00:04:00Ambas herramientas guardan sus sesiones como archivos JSON, solo que organizados de forma distinta.
00:04:04Así que construimos una pequeña herramienta que los lee y cuenta los tokens usados en cada sesión.
00:04:08En la misma aplicación y con un nivel de depuración similar, Opus 4.7 consumió 173.000 tokens mientras
00:04:15que GPT 5.5 usó solo 82.000.
00:04:18Esto se debe a que GPT 5.5 termina el trabajo con menos tokens y con muchísimos menos reintentos.
00:04:23Por lo tanto, Codex duró significativamente más y resultó ser mucho más eficiente en costes para el mismo trabajo.
00:04:28Pero antes de seguir adelante, dediquemos unas palabras a nuestro patrocinador, Stream.
00:04:32Estás construyendo una aplicación y tus usuarios necesitan hablar, transmitir y conectarse.
00:04:35Intentas encargarte de eso tú mismo y, 3 meses después, sigues depurando en lugar de lanzar el producto.
00:04:39Stream te ahorra todo eso.
00:04:40Stream te ofrece todo lo necesario de fábrica, desde chat en la aplicación y videollamadas hasta hilos de
00:04:44actividad y moderación por IA, para que lances funciones y no pierdas tiempo creando infraestructura desde cero.
00:04:49Hablamos de mensajería estilo WhatsApp, videollamadas estilo Zoom y feeds estilo Instagram, todo integrado.
00:04:55Lo que realmente destaca es el nuevo lanzamiento de Stream: Vision Agents.
00:04:58Puedes crear agentes inteligentes de IA que ven, escuchan y actúan sobre video y audio en vivo, todo
00:05:02en Python con solo unas pocas líneas de código.
00:05:05Todo funciona en una red perimetral global para ofrecer baja latencia en cualquier lugar.
00:05:08Desde startups hasta aplicaciones en expansión, las principales plataformas de redes sociales, fitness y comunidad confían
00:05:13en Stream para dar servicio a más de mil millones de usuarios finales.
00:05:16Si eres un desarrollador creando la próxima gran aplicación, Stream escala contigo desde el primer día.
00:05:20Empieza gratis en getstream.io, enlaces en el comentario fijado.
00:05:24La verdadera prueba para los dos modelos es cómo construyen productos.
00:05:27Como dijimos antes, GPT 5.5 es más rápido y consume menos tokens, por lo que lanza aplicaciones funcionales más rápido.
00:05:33Opus 4.7 gasta más tokens en pensar, planifica más a fondo e itera en todos los aspectos de la
00:05:38aplicación al mismo tiempo.
00:05:40La planificación fue lo primero que quisimos probar.
00:05:42Hemos estado usando el modo de planificación de Claude Code durante mucho tiempo.
00:05:45Cubre casi todo, tiene algunos fallos, pero sigue siendo bastante utilizable.
00:05:48Así que queríamos ver cómo se desempeña GPT 5.5 en la planificación, porque OpenAI afirma que es mejor
00:05:53en tareas de planificación y ejecución.
00:05:55Activamos el modo de plan y lo abrimos en una carpeta que ya contenía el backend de una aplicación,
00:06:00una API construida con FastAPI, y le pedimos que construyera el frontend para ella.
00:06:04Exploró el proyecto a fondo y nos hizo algunas preguntas, pero las preguntas fueron bastante
00:06:08sencillas.
00:06:09Podría haber profundizado más en cómo queríamos que se viera el frontend, porque para el trabajo
00:06:13de frontend, eso importa.
00:06:14El plan que produjo fue muy simple.
00:06:16Incluía un resumen del flujo principal, los cambios clave, las páginas a añadir y cómo
00:06:20probarlas.
00:06:21Lo único que hizo bien fue separar claramente sus suposiciones, así sabíamos exactamente qué
00:06:25estaba dando por sentado.
00:06:26Le dijimos que procediera y terminó en unos 8 minutos.
00:06:28La misma tarea en Claude Code tomó 24 minutos.
00:06:31Pero el plan de Opus 4.7 fue mucho más detallado, consideró más aspectos de la aplicación
00:06:36e incluso incorporó ShadCN UI para mejorar la experiencia del usuario.
00:06:39Por lo tanto, Opus 4.7 lo hace mejor en términos de planificación.
00:06:42A continuación, quisimos probar ambos con una aplicación desde cero (Greenfield).
00:06:45Les dimos la misma instrucción: crear un monorepo con un backend de Python Flask y
00:06:50un frontend de Next.js, junto con el pipeline completo y los requisitos clave para el funcionamiento de la app.
00:06:55Claude cambió al modo de planificación por sí solo debido al diseño de su entorno.
00:06:56Codex no cambió al modo de planificación y, en su lugar, comenzó la implementación directamente.
00:06:59Terminó mucho más rápido que Claude Code, que tardó unos 16 minutos debido al paso
00:07:04de planificación.
00:07:08La versión de la aplicación de GPT 5.5 tenía una interfaz de usuario mucho más simple y se centró principalmente en asegurar que funcionara.
00:07:09No funcionó correctamente al principio, así que lo depuramos de forma iterativa.
00:07:14Una cosa que notamos fue que las instrucciones de la entrevista estaban codificadas de forma rígida porque no habíamos proporcionado
00:07:15ninguna clave de API.
00:07:17La instrucción especificaba el uso de la API de Gemini como backend, pero como no había ninguna clave disponible,
00:07:22implementó un sistema de respaldo para que la aplicación no se bloqueara por completo.
00:07:23Codex de hecho utilizó preguntas de seguimiento locales sin ninguna instrucción explícita.
00:07:27Nos gusta esto porque los mecanismos de respaldo como estos son útiles en producción ya que evitan
00:07:30errores críticos.
00:07:35Tras unas pocas iteraciones y tras añadir la clave de la API, el flujo de la aplicación funcionó correctamente aunque
00:07:39la interfaz seguía siendo simple.
00:07:40Así que GPT 5.5 analizó los casos extremos e implementó mecanismos para llenar los vacíos.
00:07:44Opus 4.7, por otro lado, nos pidió que le diéramos la clave de la API antes de comenzar la implementación
00:07:46y construyó toda la aplicación en torno a eso.
00:07:51Así que Opus 4.7, a diferencia de GPT 5.5, no se preparó para fallos y simplemente necesitaba tener todo disponible
00:07:57de antemano.
00:07:59Debido a esto, cuando la API no estaba realmente allí, la aplicación no tenía sistema de respaldo y simplemente daba un error.
00:08:05Claude Code sí se enfoca en la experiencia del usuario y la funcionalidad conjuntamente, por lo que su implementación
00:08:06parecía más realista.
00:08:10Aquí es donde se nota la fortaleza de la interfaz de usuario de Opus 4.7, que ya tratamos en nuestro video anterior donde
00:08:15dijimos que Opus 4.7 es mucho mejor manejando la interfaz, pero su implementación también tuvo problemas.
00:08:16Cuando le pedimos que depurara, no inspeccionó directamente la implementación como hizo Codex.
00:08:21En su lugar, comenzó a hacernos preguntas sobre qué podría estar causando el problema y confió
00:08:26en nuestras pruebas.
00:08:31Añadió puntos de depuración como indicadores en la interfaz y registros de consola y nos pidió que revisáramos los estados
00:08:35y le informáramos.
00:08:36Después de un intercambio de mensajes, finalmente solucionó el problema y la función de entrevista funcionó.
00:08:41Preferimos cómo Codex utilizó el navegador del agente para depurar por su cuenta.
00:08:42Así que, en términos de trabajo autónomo, la implementación de Codex fue mejor, y en términos de
00:08:46experiencia de usuario, Claude Code hizo un trabajo mucho mejor.
00:08:49También quisimos probar cómo manejaban ambos el comando init.
00:08:53El init de Claude Code se ejecuta sin expandir la instrucción en la misma línea.
00:08:56Crea un archivo Claude.md simple de unas 90 líneas que incluye arquitectura, flujo de la aplicación,
00:08:59estructura front-end y back-end, y todos los comandos necesarios para ejecutar la aplicación.
00:09:02Mucha de esa información es redundante y no beneficia realmente al agente, razón por la
00:09:08cual no siempre es necesario conservarla toda.
00:09:12La configuración de Codex fue más refinada.
00:09:15Incluyó pautas de commit, pautas de pull request e instrucciones de seguridad adecuadamente,
00:09:18manteniendo la sección de estructura del proyecto breve en lugar de sobrecargarla de detalles.
00:09:20Ninguno fue perfecto, pero Codex manejó mejor el archivo agents.md.
00:09:24Ahora también quisimos probar cómo se desempeñan ambos en la revisión de código.
00:09:28Dimos la misma instrucción para una revisión de fiabilidad tanto a Codex como a Claude Code, pidiéndoles
00:09:32que documentaran la revisión en archivos separados mientras trabajaban en la misma base de código.
00:09:35Una vez que ambos generaron sus informes, abrimos una nueva sesión y le pedimos a Claude que mostrara la
00:09:40diferencia (diff) entre los dos archivos, comparando los hallazgos.
00:09:44La revisión de Claude fue mucho más detallada.
00:09:48Organizó cada hallazgo por prioridad e incluyó componentes, con los fragmentos de código exactos
00:09:51que causaban los problemas.
00:09:53El informe de Codex mencionaba números de línea pero no incluía los fragmentos de código reales.
00:09:57Ambos informes fueron exhaustivos, compartiendo varios hallazgos, mientras que cada uno detectó algunos que el otro
00:09:59pasó por alto.
00:10:03Claude Code también informó de problemas de seguridad como una clave de API filtrada y una vulnerabilidad.
00:10:07La tarea era una revisión de fiabilidad, sin embargo, y esos problemas estaban fuera del alcance.
00:10:08Claude Code informó de cada problema extra que encontró por el camino mientras que Codex se mantuvo estrictamente
00:10:12en la fiabilidad.
00:10:17Así que el informe de Codex estuvo más alineado con la solicitud original, mientras que el de Claude Code fue más amplio
00:10:21pero menos enfocado en la tarea específica.
00:10:22Si tuviéramos que describir a ambos en términos de construcción, GPT 5.5 se siente más como un ingeniero de backend
00:10:27centrado en entregar correctamente la funcionalidad de la aplicación primero, mientras que Opus 4.7 se siente
00:10:29más como un ingeniero full stack que intenta equilibrar tanto la funcionalidad como la experiencia del usuario.
00:10:34En cuanto a la gestión del contexto, Codex funcionó mucho mejor que Claude Code.
00:10:40Claude Code tiene edición de contexto dentro de la sesión, lo que elimina las llamadas a herramientas y los pasos de razonamiento
00:10:45que ya no importan en la conversación.
00:10:48Limpia la información redundante de la sesión para evitar que se sobrecargue.
00:10:53La compactación no es perfecta, pero al menos no guarda partes innecesarias en el contexto
00:10:55mientras se compacta.
00:10:58Codex no edita su contexto.
00:11:02Compacta toda la conversación tal y como tuvo lugar.
00:11:03Lo único que hace mejor es preservar los últimos 20.000 tokens en memoria y no compactar
00:11:05esa parte en absoluto.
00:11:08Eso ayuda a prevenir la degradación del rendimiento en Codex después de la compactación, para que la conversación
00:11:13pueda fluir sin problemas a partir de la siguiente instrucción.
00:11:14Probamos su rendimiento y Codex funcionó mejor después de la compactación que Claude Code.
00:11:18Así que, aunque Claude Code sigue un proceso de compactación de varios pasos más detallado, la cola preservada de Codex
00:11:21Probamos su rendimiento y Codex funcionó mejor tras la compactación que Claude Code.
00:11:25Así que, aunque Claude Code sigue un proceso de compactación de varios pasos más detallado,
00:11:30la parte final preservada de Codex hace que el agente sea más útil en la práctica.
00:11:33La memoria funciona de forma diferente entre ambos.
00:11:35El entorno de Claude Code es mayormente sin estado entre sesiones, lo que significa que cada una
00:11:39comienza sin ningún contexto de la anterior.
00:11:41Ahora tiene una función de memoria que puede almacenar preferencias o instrucciones persistentes.
00:11:46Si le decimos que evite hacer algo de cierta manera, lo guarda y lo aplica
00:11:50más tarde dentro del mismo proyecto.
00:11:52Eso ayuda cuando se trabaja repetidamente en un solo proyecto.
00:11:54Pero la memoria está limitada al proyecto; al cambiar de proyecto se pierde ese comportamiento.
00:11:58Codex toma la ruta opuesta.
00:12:00Consolida la información de múltiples sesiones a lo largo del tiempo y crea una memoria global
00:12:05entre interacciones para retener patrones más allá de un solo proyecto.
00:12:08Eso puede ayudar a mantener la consistencia en diferentes tareas.
00:12:11En resumen, Claude Code mantiene la memoria más contenida en un proyecto mientras que Codex
00:12:15adopta un enfoque entre sesiones y proyectos que cambia cómo se adapta cada uno
00:12:19con el tiempo.
00:12:20Como Claude Code lleva más tiempo y se desarrolla constantemente para mejorar
00:12:24la experiencia del desarrollador, tiene más que ofrecer en comparación con Codex.
00:12:27Claude Code tiene un sistema de ganchos que permite ejecutar nuestros propios scripts en puntos
00:12:32específicos del ciclo de vida del agente, como antes o después de ejecutar una herramienta,
00:12:36para bloquear comandos inseguros, ejecutar formateadores y más.
00:12:39También podemos ejecutar subagentes en un árbol de trabajo dedicado para que su rendimiento
00:12:43no se afecte entre sí.
00:12:44Podemos controlar el nivel de esfuerzo de los modelos e incluso usar palabras clave como "ultra-think"
00:12:48para llevar el razonamiento al máximo en una tarea específica.
00:12:51Nada de eso tiene un equivalente en Codex ahora mismo.
00:12:54El ecosistema es la otra victoria clara de Claude Code.
00:12:56Podemos ejecutar sesiones mediante la app de escritorio de Claude y delegar tareas desde la móvil.
00:13:01Entre Claude Code, la app de escritorio, la web y las extensiones, el alcance es mucho
00:13:06más amplio que Codex, que consiste principalmente en una web app y una de escritorio recién
00:13:11lanzada que no se sentía tan sólida cuando la probamos.
00:13:14Las sesiones también se mueven mejor entre entornos en Claude Code, lo que lo hace más
00:13:18conveniente para trabajar en diferentes interfaces.
00:13:20Codex también tiene muchas funciones interesantes.
00:13:22En la nube, tiene un indicador de intentos que ejecuta la misma tarea n veces.
00:13:26Genera varias implementaciones y selecciona la mejor.
00:13:29Claude Code puede hacer algo similar pero solo mediante configuraciones e instrucciones,
00:13:33no como un indicador directo.
00:13:34La otra función exclusiva de Codex, que lo distingue del resto, es su integración con
00:13:38los modelos de imagen de OpenAI.
00:13:39Puede usarlos directamente en la CLI para generar imágenes para los sitios en los que trabaja.
00:13:44Claude depende sobre todo de generación basada en SVG para lo visual, lo cual no compite
00:13:49en calidad porque aún no tiene ningún modelo de imagen.
00:13:52Si creamos una interfaz que necesite imágenes reales, Codex es el único que lo hace,
00:13:56incluso sin pedírselo explícitamente.
00:13:58Además, si disfrutan nuestro contenido, consideren pulsar el botón de apoyo porque nos ayuda
00:14:03a crear más contenido como este y llegar a más personas.
00:14:06Ambos usan subagentes, aunque el concepto fue introducido primero por Claude.
00:14:10Como llegó antes a Claude Code, su integración es más madura porque se ha centrado en agentes
00:14:15y en la experiencia de programación por mucho más tiempo que OpenAI.
00:14:19Admite agentes que pueden orquestarse mediante sesiones remotas, mientras que Codex
00:14:23admite principalmente flujos multiagente dentro del entorno de la terminal.
00:14:27La mayor diferencia es cómo invoca cada uno a los subagentes.
00:14:29Claude Code puede crear agentes sin invocación explícita, mientras que Codex solo crea uno
00:14:35si lo solicitamos explícitamente en el prompt.
00:14:37Cuando Codex crea agentes, los nombra y les pasa un prompt adecuado también.
00:14:41En rendimiento de código son bastante similares, pero las decisiones de diseño son distintas.
00:14:46Los subagentes de Claude Code usan una lista de permitidos, es decir, el agente padre define
00:14:51exactamente a qué herramientas accede el subagente, mientras que en Codex heredan el acceso
00:14:55del padre por defecto.
00:14:57Claude Code también da a cada subagente una ventana de contexto completamente nueva.
00:15:01Un subagente no tiene acceso al historial y solo ve el prompt del padre,
00:15:06más el prompt del sistema y reglas globales, porque Claude se enfoca en el aislamiento.
00:15:10La CLI de Codex hace lo contrario.
00:15:12Bifurca todo el historial en la sesión del subagente, con el prompt del padre encima.
00:15:17Los agentes de Codex retienen más contexto sobre lo que ya se ha discutido, lo que ayuda
00:15:22a mejorar su rendimiento.
00:15:23En la práctica, el aislamiento estricto de Claude Code perjudicó a nuestros subagentes de investigación.
00:15:27Al usarlos, los resultados no fueron suficientemente buenos porque solo veían el prompt
00:15:30inmediato y no tenían contexto previo.
00:15:33Los agentes de Codex reciben todo el historial, pueden iterar mejor y rinden más en tareas
00:15:38donde la continuidad importa.
00:15:39Esto nos lleva al final de este video.
00:15:41Si desean apoyar al canal y ayudarnos a seguir haciendo videos como este, pueden hacerlo
00:15:45usando el botón de "Súper gracias" de abajo.
00:15:48Como siempre, gracias por vernos y nos vemos en el próximo.