Saltar al contenido
Curso Claude Code
53/57 Automatizar fuera de la sesión /loop y /goal: dejar a Claude Code trabajando solo
Tu lectura Quedan 16 min
Lección 53 de 57 · Automatizar fuera de la sesión

/loop y /goal: dejar a Claude Code trabajando solo

16 min de lectura Claude Code 2.1.283

Hola, bienvenido. En la lección anterior sacamos Claude Code de la sesión interactiva con claude -p, y en esta lección vamos a hacer lo contrario: dejar la sesión abierta y que Claude siga trabajando sin que tengas que escribir cada paso. Para eso hay 2 comandos que parecen iguales y resuelven problemas distintos. /loop repite un prompt a intervalos mientras la sesión sigue abierta, y /goal fija una condición de fin para que Claude encadene turnos hasta cumplirla. Vamos a ver cómo funciona cada uno, cómo pararlos, qué gastan y cuándo tiene sentido usar uno, el otro o ninguno.

¿Por qué no basta con auto mode? Porque auto mode te quita los avisos de permiso dentro de un turno, pero cuando Claude cree que ha terminado, se para y te devuelve el control. Si la tarea necesita volver a mirar algo cada cierto tiempo, como un despliegue o un pipeline que tarda, o si necesita seguir hasta que se cumpla algo que se puede comprobar, como que el análisis estático quede limpio, alguien tiene que escribir el siguiente prompt. Con /loop lo escribe el reloj, y con /goal lo decide un segundo modelo que comprueba tu condición al final de cada turno.

Para seguir la lección necesitas claude-tasks con el último commit, los contenedores de Sail levantados y una sesión de Claude Code abierta en la raíz del proyecto. /loop existe desde la versión 2.1.71 y /goal desde la 2.1.139, así que con la 2.1.283 del curso tienes los 2, y te indico la versión mínima de lo que ha llegado después.

Qué diferencia hay entre /loop y /goal

La documentación los compara con una tercera forma de mantener viva una sesión, un hook Stop, y la diferencia está en qué hace que empiece el siguiente turno y en cuándo se para:

Forma El siguiente turno empieza cuando Se para cuando
/goal Termina el turno anterior Un modelo confirma que la condición se cumple o que es imposible, un error que tienes que arreglar tú borra el objetivo o lo quitas con /goal clear
/loop Pasa un intervalo de tiempo Lo paras tú o Claude decide que el trabajo está hecho
Hook Stop Termina el turno anterior Lo decide tu propio script o prompt

Fíjate en la primera columna, porque es la que decide cuál usar. /loop mira el reloj: tiene sentido cuando lo que esperas pasa fuera de Claude, como un build que termina o un comentario que llega a una pull request, y quieres que Claude lo revise cada cierto tiempo. /goal mira el trabajo: tiene sentido cuando Claude es quien tiene que llegar a un estado concreto, y quieres que no se pare hasta conseguirlo.

La tercera fila ya la conoces de la sección de hooks. Un hook Stop vive en un archivo de configuración y se aplica a todas las sesiones de su ámbito, mientras que /goal es un atajo para la sesión actual. Por debajo, /goal es eso mismo: un hook Stop basado en un prompt, de ámbito de sesión, que Claude Code monta por ti.

Lo que queda de esta lección
  1. 02Repetir un prompt con /loop
  2. 03Fijar una condición de fin con /goal
  3. 04Cuándo usar cada uno
Sigue leyendo con tu suscripción El curso completo, con el certificado y el foro con los planes trimestral y anual, está incluido en la suscripción. Ver los planes