<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Long-Running Tasks on KnightLi Blog</title>
        <link>https://knightli.com/es/tags/long-running-tasks/</link>
        <description>Recent content in Long-Running Tasks on KnightLi Blog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>es</language>
        <lastBuildDate>Tue, 26 May 2026 23:44:37 +0800</lastBuildDate><atom:link href="https://knightli.com/es/tags/long-running-tasks/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Codex Goal en profundidad: un flujo de trabajo orientado a objetivos para que los AI Agents trabajen durante horas</title>
        <link>https://knightli.com/es/2026/05/26/codex-goal-persistent-goals-ai-agent-long-running-workflow/</link>
        <pubDate>Tue, 26 May 2026 23:44:37 +0800</pubDate>
        
        <guid>https://knightli.com/es/2026/05/26/codex-goal-persistent-goals-ai-agent-long-running-workflow/</guid>
        <description>&lt;p&gt;Los AI Agents dentro del navegador, la terminal y el IDE cada vez escriben mejor código. Pero el problema real para muchos desarrolladores ya no es &amp;ldquo;no puede hacerlo&amp;rdquo;, sino &amp;ldquo;se detiene a mitad de camino y dice que ya terminó&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Los tickets pequeños encajan muy bien con un coding agent: arreglar un botón, añadir un endpoint, cambiar un texto breve o agregar un test. El objetivo es claro, el alcance es pequeño y la verificación es directa. Pero cuando la tarea se convierte en una migración grande, un refactor entre módulos, la reparación de una suite de tests, una actualización de dependencias o la optimización de prompt evals, el Agent puede caer fácilmente en un patrón conocido:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Llega a un estado intermedio que parece razonable y se detiene demasiado pronto.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Codex Goal / Persistent Goals intentan resolver precisamente este problema de parada prematura. La idea no es hacer que el Agent ejecute más rondas. La idea es hacer que siga avanzando hacia un objetivo claro hasta cumplir criterios de finalización verificables.&lt;/p&gt;
&lt;h2 id=&#34;codex-goal-trata-de-condiciones-de-parada-no-de-bucles&#34;&gt;Codex Goal trata de condiciones de parada, no de bucles
&lt;/h2&gt;&lt;p&gt;Muchos intentos de automatización de tareas largas empiezan con una instrucción poco precisa:&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;/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;Sigue revisando el código y corrigiendo problemas hasta que no haya errores.
&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;O en una forma más mecánica:&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;Repite 10 veces:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;1. Ejecuta los tests
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2. Pide al modelo que corrija los fallos
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;3. Ejecuta los tests otra vez
&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;Este tipo de rough loop puede mantener al Agent ocupado durante más tiempo, pero tiene dos problemas serios:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;No sabe cuándo debería detenerse de verdad.&lt;/li&gt;
&lt;li&gt;No sabe si &amp;ldquo;ya no veo errores&amp;rdquo; equivale a &amp;ldquo;la tarea está completa&amp;rdquo;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;La clave de Codex Goal no es el número de iteraciones. Es la combinación de goal, state y judge stop condition. Es decir, el Agent necesita saber cuál es el objetivo, hasta dónde ha avanzado y qué evidencia demuestra que la tarea realmente terminó.&lt;/p&gt;
&lt;p&gt;Esa es la frontera importante para los Agents de larga duración: no &amp;ldquo;puede dar más pasos&amp;rdquo;, sino &amp;ldquo;puede saber qué le falta todavía&amp;rdquo;.&lt;/p&gt;
&lt;h2 id=&#34;diferencia-entre-goal-y-un-prompt-normal&#34;&gt;Diferencia entre Goal y un prompt normal
&lt;/h2&gt;&lt;p&gt;Un prompt normal se parece más a una instrucción puntual:&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;/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;Arregla los tests de este proyecto.
&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;Un Goal prompt se parece más a un pequeño contrato de tarea:&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;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&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;Objetivo: corregir los tests que fallan en el repositorio actual.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Alcance: modificar solo src/ y tests/. No cambiar scripts de build.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Criterio de finalización: npm test pasa por completo y los cambios no introducen errores de lint.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Comando de verificación: npm test &amp;amp;&amp;amp; npm run lint.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Si hay bloqueo: después de 3 intentos fallidos, informar los casos que siguen fallando, los enfoques intentados y los blockers.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Salida: resumir archivos modificados, causa raíz y resultados de verificación.
&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 diferencia principal es que el Goal prompt define qué significa &amp;ldquo;terminado&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Sin una definition of done, el Agent puede confundir &amp;ldquo;cambié el código&amp;rdquo; con &amp;ldquo;completé la tarea&amp;rdquo;. Con criterios claros de finalización, el Agent debe seguir trabajando contra evidencia externa: tests, logs, diffs, resultados de build y puntuaciones de eval.&lt;/p&gt;
&lt;h2 id=&#34;por-qué-importa-el-llm-judge-stop-condition&#34;&gt;Por qué importa el LLM judge stop condition
&lt;/h2&gt;&lt;p&gt;Lo más difícil en una tarea larga no es hacer que el Agent ejecute comandos. Es hacer que decida:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;¿La tarea está realmente completa?&lt;/li&gt;
&lt;li&gt;¿Solo pasó una prueba local?&lt;/li&gt;
&lt;li&gt;¿Arregló un problema pero introdujo otro?&lt;/li&gt;
&lt;li&gt;¿Debe seguir investigando, ejecutar otra verificación o deshacer una dirección?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ahí es donde un LLM judge stop condition resulta valioso.&lt;/p&gt;
&lt;p&gt;Idealmente, el Agent no debería mirar solo si el último comando terminó con exit code 0. También debería razonar sobre:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;si todos los criterios de finalización del usuario se cumplieron;&lt;/li&gt;
&lt;li&gt;si los cambios se mantuvieron dentro del alcance permitido;&lt;/li&gt;
&lt;li&gt;si realmente se ejecutaron tests, lint, build y evals;&lt;/li&gt;
&lt;li&gt;si los logs de fallo todavía contienen elementos sin resolver;&lt;/li&gt;
&lt;li&gt;si el cambio introduce efectos secundarios o riesgos evidentes;&lt;/li&gt;
&lt;li&gt;si el informe final ofrece suficiente evidencia para que una persona revise rápido.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En otras palabras, el judge no solo declara éxito. También evita que el Agent cierre la tarea por optimismo.&lt;/p&gt;
&lt;h2 id=&#34;tareas-que-encajan-bien-con-goal&#34;&gt;Tareas que encajan bien con Goal
&lt;/h2&gt;&lt;p&gt;Codex Goal / Persistent Goals son especialmente útiles para trabajos de código complejos que requieren varias rondas de exploración y verificación:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Migración de código: pasar de un framework antiguo a uno nuevo, de CommonJS a ESM o de una API antigua a una API nueva.&lt;/li&gt;
&lt;li&gt;Refactors grandes: dividir módulos, ordenar límites, reemplazar implementaciones duplicadas y reducir complejidad.&lt;/li&gt;
&lt;li&gt;Reparación de tests: analizar casos fallidos, identificar causas, corregirlas y verificar repetidamente.&lt;/li&gt;
&lt;li&gt;Actualizaciones de dependencias: subir frameworks, SDKs o herramientas de build mientras se manejan breaking changes.&lt;/li&gt;
&lt;li&gt;Optimización de prompt eval: ejecutar evaluaciones, revisar muestras fallidas y ajustar prompts o estrategias de tool calling.&lt;/li&gt;
&lt;li&gt;Limpieza de deuda técnica: reemplazar patrones antiguos bajo una regla clara sin cambiar el comportamiento.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Estas tareas tienen algo en común: muchos estados intermedios, causas de fallo que no siempre aparecen en el primer intento y una finalización que depende de resultados de verificación.&lt;/p&gt;
&lt;h2 id=&#34;tareas-que-no-deberían-depender-solo-de-goal&#34;&gt;Tareas que no deberían depender solo de Goal
&lt;/h2&gt;&lt;p&gt;Goal no es magia. Las siguientes tareas son arriesgadas si se manejan con un único prompt largo:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;El objetivo es muy vago, por ejemplo &amp;ldquo;mejorar el crecimiento del producto&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;El ciclo es largo, por ejemplo varias semanas de SEO, GEO u optimización de anuncios.&lt;/li&gt;
&lt;li&gt;El trabajo requiere coordinación entre sistemas: contenido, datos, anuncios, soporte y métricas de negocio.&lt;/li&gt;
&lt;li&gt;Hay riesgo de producción: cambios de base de datos, configuración en vivo, operaciones financieras o permisos de cuenta.&lt;/li&gt;
&lt;li&gt;No hay mecanismos de verificación: ni tests, ni métricas, ni logs, ni criterios de aceptación humanos.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Estas tareas se parecen más a Missions que a Goals.&lt;/p&gt;
&lt;p&gt;Un Goal funciona bien para ejecución profunda de unas horas o uno o dos días. Una Mission necesita estado, historial, planificación, aprobación humana, revisiones por etapas y métricas de largo plazo. Por ejemplo, la optimización de SEO / GEO / Ads no consiste solo en hacer que el Agent escriba contenido o ajuste parámetros en bucle. Requiere registrar estrategia, experimentos, cambios de datos y próximas acciones de forma persistente.&lt;/p&gt;
&lt;h2 id=&#34;plantilla-para-escribir-mejores-goal-prompts&#34;&gt;Plantilla para escribir mejores Goal Prompts
&lt;/h2&gt;&lt;p&gt;Un Goal prompt útil debería incluir al menos estas partes:&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;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&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;Objetivo:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Explica en una frase el resultado final esperado.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Contexto:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Describe el problema actual, archivos relacionados, restricciones de negocio e intentos previos.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Alcance:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Lista qué directorios, archivos y módulos se pueden modificar, y qué no debe tocarse.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Criterio de finalización:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Enumera una definition of done verificable.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Comandos de verificación:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Indica tests, lint, build, evals o scripts que deben ejecutarse.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Estrategia ante fallos:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Si no se puede completar, pide al Agent que informe causas, enfoques intentados y blockers restantes.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Límites de riesgo:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Exige confirmación humana para acciones destructivas, configuración de producción, secretos, bases de datos o servicios externos.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Formato de entrega:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Pide un resumen de cambios, resultados de verificación, riesgos y siguientes pasos.
&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;Lo que determina la calidad de una tarea larga no suele ser lo bonito que suena el prompt. Es si los criterios de finalización son lo bastante firmes.&lt;/p&gt;
&lt;h2 id=&#34;el-valor-de-goal-buddy&#34;&gt;El valor de Goal Buddy
&lt;/h2&gt;&lt;p&gt;Muchas tareas largas fallan no porque el Agent sea débil, sino porque la persona no definió la tarea con suficiente claridad al principio.&lt;/p&gt;
&lt;p&gt;Una herramienta como Goal Buddy aporta valor porque prepara el objetivo, los límites, los criterios de finalización y el plan de verificación antes de entregar la tarea al Agent. Funciona como una lista de preflight y pregunta:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;¿Qué resultado visible debe producir esta tarea?&lt;/li&gt;
&lt;li&gt;¿Qué directorios se pueden cambiar y cuáles están fuera de alcance?&lt;/li&gt;
&lt;li&gt;¿Qué comando prueba el éxito?&lt;/li&gt;
&lt;li&gt;Si falla, ¿el Agent debe seguir intentando? ¿Hasta dónde?&lt;/li&gt;
&lt;li&gt;¿Hace falta dividir el trabajo en commits por etapas?&lt;/li&gt;
&lt;li&gt;¿Qué acciones requieren aprobación humana?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Este paso puede parecer verboso, pero reduce mucho la probabilidad de que el Agent se desvíe, se detenga demasiado pronto o genere un diff enorme difícil de revisar.&lt;/p&gt;
&lt;h2 id=&#34;consejos-prácticos-para-usuarios-de-codex-claude-code-y-opencode&#34;&gt;Consejos prácticos para usuarios de Codex, Claude Code y OpenCode
&lt;/h2&gt;&lt;p&gt;Si usas Codex, Claude Code, OpenCode, OpenClaw o un coding agent similar, trata las tareas largas así:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Haz commit del workspace actual primero para tener un punto limpio de rollback.&lt;/li&gt;
&lt;li&gt;Escribe la petición como un Goal, no como una instrucción vaga.&lt;/li&gt;
&lt;li&gt;Define qué se puede cambiar y qué no.&lt;/li&gt;
&lt;li&gt;Proporciona comandos de verificación, idealmente comandos que el Agent pueda ejecutar tras cada ronda.&lt;/li&gt;
&lt;li&gt;Exige que el Agent informe blockers si no puede terminar, en vez de inventar un estado de éxito.&lt;/li&gt;
&lt;li&gt;Pon confirmación humana alrededor de operaciones de alto riesgo, como borrar archivos, cambiar bases de datos o tocar configuración de despliegue.&lt;/li&gt;
&lt;li&gt;Acepta solo un resultado final que incluya resultados de tests y resumen de cambios.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;La forma correcta de usar un Agent de larga duración no es &amp;ldquo;dejarlo hacer lo que quiera durante la noche&amp;rdquo;. Es darle un objetivo claro, guardrails sólidos y una salida verificable.&lt;/p&gt;
&lt;h2 id=&#34;resumen&#34;&gt;Resumen
&lt;/h2&gt;&lt;p&gt;Codex Goal / Persistent Goals llevan a los coding agents de &amp;ldquo;ejecutar una instrucción&amp;rdquo; a &amp;ldquo;seguir trabajando hacia un objetivo&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Encajan mejor con tareas de ingeniería complejas pero acotadas: migraciones, refactors, reparación de tests, actualizaciones de dependencias y optimización de evals. No encajan bien con tareas de negocio vagas, de ciclo largo y sin criterios de verificación; esas deberían diseñarse como sistemas Mission.&lt;/p&gt;
&lt;p&gt;La competencia futura entre AI Agents quizá no dependa solo de qué modelo escribe mejor código. También dependerá de qué Agent puede seguir avanzando hacia un objetivo, juzgar correctamente cuándo detenerse y dejar suficiente evidencia para que una persona revise el resultado.&lt;/p&gt;
&lt;p&gt;Referencias:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.bilibili.com/video/BV1a3LF6fE2D/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Codex Goal 深度解析：让 AI Agent 连续工作数小时，不再提前摆烂&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://openai.com/index/introducing-the-codex-app/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Introducing the Codex app&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
