Olvida Codex vs Claude Code, Goal Buddy finalmente soluciona ambos

AAI LABS
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00este es Gary el caracol y ha identificado una brecha en el mercado para crear una plataforma de citas para caracoles
00:00:04pero como es súper lento quiere que Claude Code maneje autónomamente sus tareas de larga duración
00:00:09afortunadamente para él, los agentes se han vuelto muy buenos en tareas de larga duración, Claude Code tiene un
00:00:13comando de objetivo que simplemente mantiene al agente ejecutándose hasta que la tarea se completa, pero durante nuestras
00:00:18pruebas descubrimos muchos problemas con el comando de objetivo, ya que Gary pasó recientemente por un
00:00:22divorcio y queremos que sea feliz, encontramos esta herramienta de código abierto que realmente soluciona el problema
00:00:28y no solo funciona con Claude Code, sino también con Codex, repartiendo amor justo como tu mamá, a quien estoy
00:00:32seguro que te quiere tanto como a tu hermano empleado, Claude Code lanzó previamente un comando llamado
00:00:38objetivo que mantiene al agente trabajando hasta que se cumple una condición, no cubrimos este en nuestro
00:00:42canal, pero probablemente ya lo conozcas, antes de esto había un plugin llamado Ralph Wiggum
00:00:47que ganó mucha tracción, el cual esencialmente hacía lo mismo, usaba hooks para alimentar el prompt
00:00:52de vuelta a Claude Code hasta que la condición se cumplía realmente, pero la cosa es que estas condiciones necesitan ser una
00:00:57coincidencia exacta porque el bucle de Ralph usa un script de shell para comprobar la condición literalmente, como
00:01:02el guardia del aeropuerto que no te deja pasar porque tu spray corporal masculino supera el límite
00:01:06de equipaje, el comando de objetivo funciona diferente, toma la condición y la conversación hasta el momento y se la da
00:01:11a un modelo pequeño que es Haiku, y este modelo evalúa inteligentemente si la tarea está hecha o no
00:01:17devuelve una decisión de sí o no, y un no le dice a Claude que siga iterando en la misma tarea, como cuando tu jefe
00:01:22te dice que mejores la experiencia de usuario porque él simplemente no puede encontrar un botón en la página, así que esto hace
00:01:27que la evaluación sea subjetiva y, para cosas que no podemos cuantificar por sí mismas, esa es una mejora real
00:01:32el objetivo funciona bien para muchas tareas, pero todavía tiene muchos problemas, el primer problema es que
00:01:37no utiliza ninguna base de conocimiento o sistema de archivos que rastree el progreso de la tarea, y como
00:01:42no hace eso, la única fuente de verdad para el agente se convierte en el contexto del chat, esto podría disparar
00:01:47tu memoria ya que fue tu papá quien escribió la fortuna en cripto en una nota adhesiva que se cayó del refrigerador en
00:01:522017, una vez que la sesión termina por cualquier razón y el objetivo no se completó, seguro puedes reanudarlo usando
00:01:58el comando de reanudación de Claude, el objetivo no se perderá, pero la única forma en que sabe dónde se quedó es el
00:02:03contexto del chat, y como este comando está pensado para tareas de larga duración, no simples, las cosas pueden
00:02:08estropearse en medio, y por supuesto con el objetivo ejecutándose durante horas, la hinchazón del contexto y alcanzar la compactación
00:02:13está destinado a convertirse en un problema real en algún momento, después de la compactación la salida del agente empeora
00:02:18empezará a comportarse como mi abuela que, debido a su demencia, está empezando a olvidar el nombre de este
00:02:22canal, necesito que vean el último video por ella, otro problema es que no
00:02:27divide las tareas en otras más pequeñas, en su lugar, simplemente usa el agente principal y hace el desglose de la tarea
00:02:32por sí solo, de la forma en que Claude Code normalmente lo hace, así que no hay un plan estructurado y el agente puede perder la pista
00:02:37de lo que queda por hacer, y aunque esto podría funcionar bien para algunos casos, una definición poco clara
00:02:42de cómo se ve el “hecho” para los agentes nunca es lo correcto, el objetivo depende enteramente de
00:02:47el modelo para evaluar la finalización, así que podría no ser tan efectivo en algunos casos, es mejor que
00:02:52Ralph Wiggum siendo completamente estricto al usar scripts, pero al menos debería haber alguna métrica
00:02:56que le diga al agente cómo podría verse el “hecho”, justo como tu fotógrafo de bodas que seguía diciendo
00:03:01una foto más hasta que todo el evento terminó, así que aquí es donde el objetivo se queda corto y estas cosas
00:03:05podrían no parecer mucho, pero cuando se ponen en flujos de trabajo pesados reales pueden traer serios problemas
00:03:10ahora, Goal Buddy es una herramienta que se construyó con un propósito: hacer que el comando objetivo realmente funcione
00:03:16como debería, resuelve todos los problemas de los que acabamos de hablar, pero no está recibiendo tanta
00:03:20atención como debería dada su utilidad, es como la niñera atractiva, excepto que en lugar de coquetear
00:03:25contigo, ella simplemente está cuidando tus tareas de larga duración, el objetivo no conserva el estado del trabajo
00:03:30localmente, así que esta herramienta soluciona eso y realmente obliga al objetivo a leer y actualizar el estado local en lugar de depender del
00:03:36historial del chat, y también termina con pruebas para que el agente realmente sepa cómo se ve el “hecho” antes de que
00:03:42empiece, para rastrear el progreso también incluye todo un tablero donde puedes vigilar
00:03:46a tu agente trabajar mientras lo hace, y para manejar todo esto está construido sobre tres agentes que son el
00:03:51explorador, el trabajador y el juez, básicamente un equipo de inicio de Y Combinator donde uno hace todo el trabajo, uno
00:03:56lo observa hacerlo y uno los juzga a ambos en Twitter, la instalación es bastante sencilla, solo
00:04:01copia el comando de instalación y pégalo en la carpeta de tu proyecto, se instalará como un plugin
00:04:06disponible para Claude Code y Codex, una vez que inicias una nueva sesión puedes ver el comando
00:04:10disponible para usar, así que estos tres agentes tienen un rol y nivel de acceso estrictamente definidos, ya que esta
00:04:16herramienta está construida para Codex también, los agentes están definidos en TOML en lugar del Markdown estándar, el
00:04:21primer agente es el juez, que solo tiene acceso de lectura, analiza escépticamente decisiones difíciles como el alcance arriesgado,
00:04:26fuentes contradictorias y otros patrones para asegurarse de que la tarea se complete de forma segura, sus
00:04:31instrucciones prohíben editar porque existe solo para hacer juicios, nada más, y como su
00:04:36tarea es altamente crítica, el razonamiento de este agente se establece al máximo para que las decisiones se tomen adecuadamente
00:04:42es exactamente como cuando has estado componiendo ese mensaje a tu crush durante cuatro horas seguidas en
00:04:47la mitad de la noche, después de que termina de trabajar devuelve una estructura JSON con las decisiones aprobadas y
00:04:52rechazadas junto con la lógica, el explorador es otro agente de solo lectura que mapea una tarea activa
00:04:57y crea un recibo de evidencia compacto para ella, como su trabajo es solo comprobar el estado de la tarea
00:05:02su esfuerzo de razonamiento se mantiene bajo, justo como el portero de tu club de striptease favorito, realmente no le importa
00:05:07tanto, y luego está el agente trabajador, el único con acceso de edición, hace el trabajo real y
00:05:12solo se le permite ejecutar una tarea a la vez, también existe el rol de PM que es el hilo principal que
00:05:17coordina el flujo de trabajo, se comporta como un gerente de proyecto real haciendo el mínimo trabajo posible
00:05:22es la única autoridad que puede marcar realmente la tarea como hecha, el flujo de trabajo central comienza expresando
00:05:27la intención de la tarea en palabras adecuadas, no vagamente como nosotros los homo sapiens solemos hacer, sino de una forma que el
00:05:33agente pueda entender correctamente, y luego se define el oráculo, el oráculo es básicamente una señal observable
00:05:38que identifica el resultado, es contra lo que el sistema itera para ver si la tarea puede ser
00:05:43marcada como hecha o no, podría ser cualquier cosa: una suite de pruebas, un recorrido por navegador, cualquier artefacto, benchmarks o el código
00:05:49que convierte mi microondas en una máquina del tiempo, porque ¿por qué no? los agentes de IA están haciendo cualquier cosa a estas alturas
00:05:54luego el siguiente paso es surface, desglosa la tarea en pasos accionables, crea el tablero y mapea
00:06:00las tareas en un formato visual, la última pieza es el PM, él es el gerente en este caso y mantiene el objetivo funcionando
00:06:06hasta que la auditoría final marca que el objetivo se cumplió, para usar Goal Buddy simplemente ejecutas el comando de preparación de objetivo
00:06:11este es el que inicializa el flujo de trabajo y defines el objetivo que quieres que logre, primero
00:06:16asegura que los agentes estén instalados y listos para ser usados, luego inicia el flujo de trabajo, pero a diferencia
00:06:21del comando objetivo nativo, es extremadamente autoconsciente y primero elimina sus propias ambigüedades haciendo
00:06:27preguntas para que puedas definir claramente la implementación, y justo como tu esposa sospechosa
00:06:32seguirá haciendo preguntas hasta que haya entendido, el primer paso se enfoca en crear los archivos de objetivo, coloca
00:06:38la solicitud original junto con nuestras respuestas y luego lo mapea al objetivo adecuado en un lenguaje que el agente
00:06:43pueda entender, contiene un resumen de toda la información y luego define el oráculo
00:06:48que es la parte más importante, el oráculo para esta tarea es sencillo: todas las pruebas deben pasar con
00:06:53un comportamiento adecuado, este tipo de objetivo es específico porque puede ser evaluado
00:06:57programáticamente, a diferencia de tu historia de encubrimiento de anoche que tu esposa no está comprando, Goal Buddy desglosa todo el flujo de trabajo
00:07:03en tareas pequeñas y realizables, estas se llaman “slices”, pero a diferencia del mundo real, el tamaño no importa aquí
00:07:08porque un “slice” pequeño no significa una tarea pequeña, significa algo que es seguro, que se puede verificar fácilmente
00:07:14y que se puede ejecutar individualmente, también define explícitamente el tamaño de división segura en el documento, crea
00:07:19el archivo state.yaml que rastrea el proyecto y las tareas y define cómo se vería el bucle PM, el state.yaml consiste en
00:07:26todos los objetivos y reglas con todas las tareas desglosadas por sus IDs y el agente asignado, contiene
00:07:31un campo para rastrear la tarea activa también, menciona el tablero vinculado, enumera todos los “por hacer”
00:07:36y las tareas en curso, en nuestro caso, el agente explorador está actualmente en curso y está mapeando todos
00:07:42los archivos y endpoints, así que para iniciar el bucle simplemente copia este comando y ejecútalo, le instruye a Claude a
00:07:47establecer el objetivo de hacer todo en el archivo goal.md, desde ahí elegirá la primera
00:07:52tarea activa como un rey y luego llamará a sus agentes subordinados para realizarla, una vez que el explorador ha completado
00:07:58el trabajo, actualiza el archivo de progreso con todos sus hallazgos y los documenta en un directorio separado
00:08:03también actualiza el tablero de activo a completado, luego el bucle elige la siguiente tarea, la marca como
00:08:08activa e inicia el agente juez, el juez revisa críticamente los hallazgos y secuencia el informe
00:08:13en la menor cantidad posible de divisiones verticales, que es el desglose de tareas para que el trabajador lleve a cabo
00:08:18independientemente, luego actualiza el recuento de divisiones y actualiza el archivo de estado en consecuencia, cada tarea
00:08:22enumera explícitamente los archivos permitidos, cómo verificarlos y cuándo detenerse, así es como define cada división
00:08:28para que los agentes tengan una salida esperada clara, comprobaciones y todos los detalles necesarios, luego uno por uno
00:08:33inicializa el agente trabajador y comienza con la primera división, el progreso de cada agente puede ser rastreado
00:08:39usando el tablero, sabrás qué está haciendo cada tarea, qué agente está activo, qué tareas están en cola y
00:08:44cuáles están completadas, así que no tienes que monitorear las cosas tú mismo y puedes darle a tus hijos
00:08:48el tiempo que necesitan, una vez que todas las tareas se han completado, realiza la última auditoría como PM
00:08:53asegurándose de que todas las pruebas se han realizado adecuadamente, una vez que la auditoría está hecha, marca al juez
00:08:58la tarea de auditoría final del agente como hecha y luego marca el objetivo como completado, después de esto tienes que empezar
00:09:03a rezar y esperar que esos agentes no hayan alucinado, en general, esto funcionó considerablemente bien dada la
00:09:09complejidad y la escala de la aplicación que le dimos, pero creemos que se podría añadir una paralelización más efectiva
00:09:13porque hizo todo secuencialmente, manejó una tarea a la vez y no hizo uso de
00:09:18las capacidades de paralelización de Claude Code en absoluto, Dario se habría sentido decepcionado al ver esto
00:09:23pero dado lo bien que planificó el flujo de trabajo, funcionó bastante bien, también si estás disfrutando nuestro contenido
00:09:28considera presionar el botón de “hype” porque nos ayuda a crear más contenido como este y llegar a más
00:09:33personas, también queríamos probar Goal Buddy en algo más genérico como diseñar una interfaz para ver cómo
00:09:38maneja tareas que no se pueden evaluar programáticamente, la prueba anterior fue sobre un flujo de trabajo específico con
00:09:44criterios claros de aprobado y reprobado, pero justo como tú al recibir ese corte fresco de tu barbero, algunas tareas
00:09:49simplemente no tienen eso, así que primero le dimos al comando objetivo habitual un prompt vago, inicializó el objetivo
00:09:54las tareas consultaron al asesor y dieron un sitio web en poco tiempo, siendo perezoso simplemente creó una página HTML simple
00:10:00y no optó por ningún framework, pero la página de aterrizaje no se veía mal, así que le dimos exactamente el mismo prompt a
00:10:05Goal Buddy también, una vez que empezó, siguió el mismo flujo de trabajo y dio una sesión de preguntas similar
00:10:10para aclarar la intención con nosotros, aquí Goal Buddy realmente pidió el stack tecnológico también, normalmente
00:10:14llamaría a esto “hacer la pelota”, pero como me tomo en serio a mi agente de IA, lo llamaré ser meticuloso, de manera similar
00:10:20creó el tablero y el archivo goal.md y tradujo nuestra solicitud original en un objetivo adecuado, también
00:10:26identificó correctamente el oráculo, pero el oráculo en la tarea anterior era simple: solo necesitaba pasar todas las
00:10:31pruebas, este tenía objetivos diferentes, definió la tarea como completa cuando el servidor de desarrollo estuviera arriba y
00:10:36funcionando y los recorridos por el navegador confirmaran que todas las secciones funcionan según lo definido, así es como convirtió una
00:10:41tarea no cuantificable en algo cuantificable, también creó el state.yaml de nuevo con el oráculo,
00:10:47reglas, agentes y todas las tareas enumeradas y luego comenzó a trabajar de la misma manera, tomó un tiempo más
00:10:52largo que el comando objetivo normal, pero terminó implementando la aplicación adecuadamente, este no será un
00:10:57problema para Gary el caracol, pero deberías hacer algunas flexiones mientras tanto, puedo ver que has engordado
00:11:02comparativamente todo el sitio web funcionó significativamente mejor que lo que creó el simple comando objetivo
00:11:07si realmente quieres ser un fundador de B2B SaaS de IA al que le gusta construir en lugar de solo ver tutoriales
00:11:12entonces deberías ser un AI Labs Pro, realmente tendrás nerds de ideas afines como nuestro equipo allí con
00:11:17recursos de los videos y muchos otros regalos también, el enlace estará en la descripción y
00:11:22puedes echarle un vistazo, eso nos lleva al final de este video, si te gustaría apoyar el canal
00:11:27y ayudarnos a seguir haciendo videos como este, puedes hacerlo usando el botón de “super thanks” de abajo, como siempre
00:11:32gracias por ver y te veré en el próximo

Key Takeaway

Goal Buddy mejora la autonomía de los agentes en tareas de larga duración al reemplazar la dependencia del historial de chat con un sistema de estados local, agentes especializados y validaciones mediante oráculos configurables.

Highlights

  • Goal Buddy soluciona las limitaciones del comando 'objetivo' nativo de Claude Code mediante el uso de un estado persistente y pruebas programables.

  • El flujo de trabajo de Goal Buddy se divide entre tres agentes especializados: un juez, un explorador y un trabajador, coordinados por un gestor de proyectos.

  • Goal Buddy permite definir condiciones de finalización claras mediante un 'oráculo', superando la dependencia exclusiva del historial de chat.

  • A diferencia del comando nativo, Goal Buddy utiliza archivos state.yaml para rastrear el progreso y permite el uso de herramientas de código abierto con Codex y Claude Code.

  • Las pruebas demuestran que Goal Buddy logra implementaciones más robustas y estructuradas, especialmente en tareas sin criterios de validación programáticos inmediatos.

Timeline

Limitaciones del comando objetivo nativo

  • El comando nativo de Claude Code sufre por la hinchazón del contexto al ejecutarse durante horas.
  • La falta de un sistema de archivos para rastrear el progreso obliga al agente a depender únicamente del historial de chat.
  • La evaluación subjetiva de 'hecho' realizada por el modelo Haiku es propensa a errores en flujos de trabajo complejos.

El comando nativo carece de estructura para dividir tareas grandes y no mantiene un estado local del progreso. Esto provoca que el agente olvide detalles o pierda el hilo en tareas extensas debido a las limitaciones de la ventana de contexto. La evaluación se basa en el juicio del modelo, careciendo de métricas estrictas.

Funcionamiento de Goal Buddy

  • Goal Buddy opera con tres agentes: un juez (análisis crítico), un explorador (mapeo de estado) y un trabajador (ejecución).
  • La herramienta utiliza archivos de configuración TOML y garantiza la persistencia del estado fuera del historial de chat.
  • Un gestor de proyectos coordina el flujo de trabajo basándose en una definición clara de la intención y del estado final.

Goal Buddy instala un plugin en el proyecto que permite una gestión estructurada. El juez tiene solo acceso de lectura y valida decisiones, el explorador mapea las tareas, y el trabajador es el único con acceso de edición. Esta separación de roles garantiza que las tareas se ejecuten de forma segura y verificable.

Implementación y ejecución del flujo de trabajo

  • La configuración inicial requiere definir un 'oráculo', una señal observable como pruebas o recorridos de navegador para validar la tarea.
  • El estado del proyecto se gestiona mediante un archivo state.yaml que desglosa el trabajo en 'slices' o tareas verificables.
  • Los resultados muestran que Goal Buddy genera aplicaciones más completas frente a prompts vagos en comparación con el comando nativo.

El proceso comienza con la preparación del objetivo y la clarificación de ambigüedades. Luego, se crean archivos de progreso y un tablero visual para monitorear el trabajo de los agentes en tiempo real. Aunque la ejecución actual es secuencial, la estructura permite una mayor fiabilidad y calidad en el producto final al convertir requisitos vagos en criterios cuantificables.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video