<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Oh-My-Codex on KnightLi Blog</title>
        <link>https://knightli.com/es/tags/oh-my-codex/</link>
        <description>Recent content in Oh-My-Codex on KnightLi Blog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>es</language>
        <lastBuildDate>Mon, 25 May 2026 07:41:45 +0800</lastBuildDate><atom:link href="https://knightli.com/es/tags/oh-my-codex/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>oh-my-codex: flujos de trabajo, skills y guardrails de runtime para Codex CLI</title>
        <link>https://knightli.com/es/2026/05/25/oh-my-codex-codex-cli-workflow-layer/</link>
        <pubDate>Mon, 25 May 2026 07:41:45 +0800</pubDate>
        
        <guid>https://knightli.com/es/2026/05/25/oh-my-codex-codex-cli-workflow-layer/</guid>
        <description>&lt;p&gt;&lt;code&gt;Yeachan-Heo/oh-my-codex&lt;/code&gt;, abreviado como OMX, es una capa de flujo de trabajo alrededor de OpenAI Codex CLI.&lt;/p&gt;
&lt;p&gt;Proyecto: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;No intenta resolver el problema creando “otro coding agent”. Su objetivo es dar a quienes ya usan Codex CLI una forma de trabajo diaria más estable: iniciar sesiones con instrucciones del proyecto, aclarar antes de planificar cuando la tarea se vuelve compleja, mantener durable goals y estado durante la ejecución, y cerrar con review y QA para controlar el resultado.&lt;/p&gt;
&lt;p&gt;En el momento de escribir esto, la página de GitHub muestra unas 29.4k stars, y el release más reciente es &lt;code&gt;v0.18.1&lt;/code&gt;, publicado el 21 de mayo de 2026. El README también deja claro que el proyecto oficial es &lt;code&gt;Yeachan-Heo/oh-my-codex&lt;/code&gt; y que el paquete npm oficial es &lt;code&gt;oh-my-codex&lt;/code&gt;. Los proyectos de terceros con nombres como “OMX v2” no deben tratarse como continuaciones oficiales salvo que este repositorio lo indique.&lt;/p&gt;
&lt;h2 id=&#34;qué-es-exactamente&#34;&gt;Qué es exactamente
&lt;/h2&gt;&lt;p&gt;OMX no sustituye a Codex.&lt;/p&gt;
&lt;p&gt;Mantiene Codex CLI como motor real de ejecución y añade principalmente tres cosas:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Un flujo de tareas más consistente.&lt;/li&gt;
&lt;li&gt;Prompts, skills y specialist agents reutilizables.&lt;/li&gt;
&lt;li&gt;Planes, logs, estado y registros de runtime bajo &lt;code&gt;.omx/&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Dicho de otra forma, Codex hace el trabajo y OMX intenta que ese trabajo se parezca más a un proceso de ingeniería. Esa es también la gran diferencia frente a un paquete común de prompts: no se limita a meter reglas dentro de un system prompt. Divide la aclaración, planificación, ejecución, comprobación, coordinación de equipo y diagnóstico de runtime en superficies invocables.&lt;/p&gt;
&lt;h2 id=&#34;instalación-recomendada&#34;&gt;Instalación recomendada
&lt;/h2&gt;&lt;p&gt;El README y la documentación Getting Started enfatizan que la ruta recomendada por defecto es macOS o Linux con Codex CLI. Windows nativo y Codex App no son hoy la experiencia principal, y pueden comportarse de forma inconsistente o tener soporte menos completo.&lt;/p&gt;
&lt;p&gt;Si ya tienes Codex CLI instalado, puedes empezar así:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;codex --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g oh-my-codex
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;omx setup
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;omx doctor
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Si todavía no tienes Codex CLI y quieres que npm lo gestione:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g @openai/codex
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g oh-my-codex
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;omx setup
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;omx doctor
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Hay un detalle importante: no combines &lt;code&gt;@openai/codex&lt;/code&gt; y &lt;code&gt;oh-my-codex&lt;/code&gt; en un único comando de instalación global en una máquina donde Homebrew ya posee el binario &lt;code&gt;codex&lt;/code&gt;. El README menciona que npm puede chocar con &lt;code&gt;EEXIST&lt;/code&gt; cuando intenta crear un binario que ya gestiona Homebrew. OMX solo necesita un comando &lt;code&gt;codex&lt;/code&gt; funcional, autenticado y disponible en &lt;code&gt;PATH&lt;/code&gt;; no exige que Codex haya sido instalado con npm.&lt;/p&gt;
&lt;p&gt;Después de instalar, conviene ejecutar una prueba real:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;codex login status
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;omx &lt;span class=&#34;nb&#34;&gt;exec&lt;/span&gt; --skip-git-repo-check -C . &lt;span class=&#34;s2&#34;&gt;&amp;#34;Reply with exactly OMX-EXEC-OK&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;omx doctor&lt;/code&gt; puede demostrar que la forma de la instalación local parece correcta, pero no prueba que la cuenta de Codex, el proxy, la base URL y la autenticación del shell/profile actual puedan realizar una llamada real al modelo. Esta diferencia importa mucho al cambiar entre distintos HOME, contenedores, entornos remotos o proxies locales compatibles con OpenAI.&lt;/p&gt;
&lt;h2 id=&#34;flujo-por-defecto&#34;&gt;Flujo por defecto
&lt;/h2&gt;&lt;p&gt;El flujo principal de OMX es aproximadamente:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$deep-interview &amp;#34;clarify the authentication change&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ralplan &amp;#34;approve the auth plan and review tradeoffs&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$prometheus-strict &amp;#34;stress-test the plan before durable execution&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$ultragoal &amp;#34;turn the approved plan into durable Codex goals&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;La ruta más común tiene tres pasos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;$deep-interview&lt;/code&gt;: pregunta por límites, objetivos y no-objetivos cuando la petición aún no está clara.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;$ralplan&lt;/code&gt;: convierte la petición en un plan y lo confirma desde una mirada arquitectónica y crítica.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;$ultragoal&lt;/code&gt;: convierte el plan aprobado en objetivos y checkpoints más duraderos.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si una tarea necesita coordinación en paralelo, se puede usar &lt;code&gt;$team&lt;/code&gt; dentro de una Ultragoal story. Si basta con un único responsable persistente, se puede usar &lt;code&gt;$ralph&lt;/code&gt;. Los nombres pueden parecer pesados al principio, pero la idea es simple: no dejar que el agent empiece a modificar archivos apenas escucha una petición. Primero hay que escribir qué se hará, cómo se hará, cómo se verificará y cuándo debe detenerse.&lt;/p&gt;
&lt;h2 id=&#34;qué-aportan-skills-y-agents&#34;&gt;Qué aportan skills y agents
&lt;/h2&gt;&lt;p&gt;La documentación de OMX agrupa las skills en varias familias.&lt;/p&gt;
&lt;p&gt;Canonical Workflow incluye &lt;code&gt;$deep-interview&lt;/code&gt;, &lt;code&gt;$ralplan&lt;/code&gt;, &lt;code&gt;$prometheus-strict&lt;/code&gt;, &lt;code&gt;$ultragoal&lt;/code&gt;, &lt;code&gt;$code-review&lt;/code&gt; y &lt;code&gt;$ultraqa&lt;/code&gt;. Están orientadas a tareas de ingeniería completas: aclarar, planificar, ejecutar, revisar y pasar QA.&lt;/p&gt;
&lt;p&gt;Execution Modes incluye &lt;code&gt;$team&lt;/code&gt;, &lt;code&gt;$ralph&lt;/code&gt;, &lt;code&gt;$autopilot&lt;/code&gt;, &lt;code&gt;$ultrawork&lt;/code&gt; y otros modos. Definen si la tarea avanza en una sola línea, con ejecución de equipo o mediante un bucle autónomo más fuerte.&lt;/p&gt;
&lt;p&gt;El Agent Catalog se parece más a una biblioteca de roles. Incluye &lt;code&gt;analyst&lt;/code&gt;, &lt;code&gt;planner&lt;/code&gt;, &lt;code&gt;architect&lt;/code&gt;, &lt;code&gt;debugger&lt;/code&gt;, &lt;code&gt;executor&lt;/code&gt;, &lt;code&gt;verifier&lt;/code&gt;, &lt;code&gt;security-reviewer&lt;/code&gt;, &lt;code&gt;performance-reviewer&lt;/code&gt;, &lt;code&gt;code-reviewer&lt;/code&gt;, &lt;code&gt;test-engineer&lt;/code&gt;, &lt;code&gt;designer&lt;/code&gt;, &lt;code&gt;researcher&lt;/code&gt; y otros. No hace falta invocar estos roles manualmente todos los días, pero muestran que OMX no es “un gran prompt universal”. Descompone el proceso de ingeniería en roles y fases reutilizables.&lt;/p&gt;
&lt;p&gt;Esto importa en proyectos largos. Muchos fallos en AI Coding no ocurren porque el modelo sea incapaz de escribir código. Ocurren porque entra demasiado rápido en ejecución y salta la confirmación de requisitos, los límites de arquitectura, la línea base de tests y la revisión final. OMX intenta fijar esos pasos mediante skills y roles.&lt;/p&gt;
&lt;h2 id=&#34;forma-de-plugin-y-estado-de-runtime&#34;&gt;Forma de plugin y estado de runtime
&lt;/h2&gt;&lt;p&gt;El README menciona que el repositorio también incluye un Codex plugin layout oficial en &lt;code&gt;plugins/oh-my-codex&lt;/code&gt;, con marketplace metadata.&lt;/p&gt;
&lt;p&gt;La documentación también insiste en que esta forma de plugin no sustituye a &lt;code&gt;npm install -g oh-my-codex&lt;/code&gt; más &lt;code&gt;omx setup&lt;/code&gt;. El plugin se parece más a un empaquetado de hooks, skill surface e integración con el ciclo de vida de Codex. En runtime sigue dependiendo del CLI &lt;code&gt;omx&lt;/code&gt; instalado.&lt;/p&gt;
&lt;p&gt;El release más reciente, &lt;code&gt;v0.18.1&lt;/code&gt;, también se centra en esta línea: las instalaciones de plugin usan un pinned OMX launcher, los fallos de hooks son más seguros, las mutaciones de estado de Ultragoal se serializan, el empaquetado de release excluye caches &lt;code&gt;.omx&lt;/code&gt; locales de crates, y npm, Cargo workspace, lockfiles y el plugin manifest declaran la misma versión.&lt;/p&gt;
&lt;p&gt;Estos cambios muestran que OMX ya no es solo un repositorio de prompts. Empieza a tratar en serio la forma de instalación, la seguridad de hooks, la escritura de estado, el contenido del paquete de release y la consistencia entre runtimes. Para una herramienta de desarrollo, estos detalles no son vistosos, pero son importantes.&lt;/p&gt;
&lt;h2 id=&#34;para-quién-encaja&#34;&gt;Para quién encaja
&lt;/h2&gt;&lt;p&gt;OMX encaja mejor con desarrolladores que ya usan Codex CLI de forma seria, especialmente en estos casos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pides a Codex tareas de varios archivos y varios pasos con frecuencia.&lt;/li&gt;
&lt;li&gt;Quieres que el agent aclare requisitos antes de editar código.&lt;/li&gt;
&lt;li&gt;Quieres separar planificación, ejecución, comprobación, review y QA.&lt;/li&gt;
&lt;li&gt;Necesitas conservar estado, planes y logs bajo &lt;code&gt;.omx/&lt;/code&gt; en el proyecto.&lt;/li&gt;
&lt;li&gt;Quieres probar tmux/team runtime o formas más fuertes de ejecutar tareas largas.&lt;/li&gt;
&lt;li&gt;Tu equipo quiere convertir sus hábitos de ingeniería en skills y prompts reutilizables.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si solo usas Codex de vez en cuando para cambiar una línea de configuración, generar un script pequeño o explicar un fragmento de código, OMX puede sentirse pesado. Es más una caja de herramientas para usuarios frecuentes de AI Coding que una primera capa obligatoria para principiantes.&lt;/p&gt;
&lt;h2 id=&#34;qué-conviene-vigilar&#34;&gt;Qué conviene vigilar
&lt;/h2&gt;&lt;p&gt;Primero, no trates OMX como una garantía de “ejecución autónoma hasta completar todo”. Puede reforzar el proceso, pero no decide por ti si un requisito es razonable, si una arquitectura debe cambiar o si un riesgo es aceptable.&lt;/p&gt;
&lt;p&gt;Segundo, revisa los límites de plataforma. El README recomienda actualmente macOS/Linux + Codex CLI. La ruta de Windows nativo existe, pero no es la mejor experiencia por defecto. Si usas Windows, WSL2 suele ser una opción más estable.&lt;/p&gt;
&lt;p&gt;Tercero, &lt;code&gt;omx doctor&lt;/code&gt; no es una validación final. La prueba más fuerte es una llamada real al modelo, como &lt;code&gt;codex login status&lt;/code&gt; más &lt;code&gt;omx exec&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Cuarto, cuanto más fuerte es el flujo, más claros deben ser los límites de la tarea. &lt;code&gt;$ultragoal&lt;/code&gt;, &lt;code&gt;$team&lt;/code&gt; y &lt;code&gt;$autopilot&lt;/code&gt; encajan con tareas que tienen criterios de aceptación concretos. Si la petición todavía es ambigua, conviene usar &lt;code&gt;$deep-interview&lt;/code&gt; o una conversación normal para aclararla primero.&lt;/p&gt;
&lt;h2 id=&#34;resumen&#34;&gt;Resumen
&lt;/h2&gt;&lt;p&gt;El valor de oh-my-codex no está en convertir Codex en otra herramienta, sino en añadir a Codex CLI una capa de trabajo más orientada a ingeniería.&lt;/p&gt;
&lt;p&gt;Mueve el AI Coding de “te digo algo y haces una pasada” hacia “aclarar, planificar, ejecutar, comprobar y registrar estado”. Para tareas ligeras puede ser demasiado. Para quienes usan Codex en proyectos reales con frecuencia, flujos estables, skills reutilizables, diagnósticos de runtime y durable goals pueden ser justo lo que reduce fricción.&lt;/p&gt;
&lt;p&gt;Si Codex CLI ya forma parte de tu desarrollo diario, OMX merece una prueba. Incluso si no lo instalas directamente, su forma de dividir skills, agents, planificación y criterios de aceptación sirve para mejorar tu propio flujo de AI Coding.&lt;/p&gt;
&lt;h2 id=&#34;referencias&#34;&gt;Referencias
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Yeachan-Heo/oh-my-codex: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Getting Started: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/getting-started.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/getting-started.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Agent Catalog: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/agents.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/agents.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Skills Reference: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/skills.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex/blob/main/docs/skills.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;v0.18.1 release: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Yeachan-Heo/oh-my-codex/releases/tag/v0.18.1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Yeachan-Heo/oh-my-codex/releases/tag/v0.18.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
