¿Qué hace Loop It?
Convierte un objetivo de codificación abierto en un bucle acotado y verificable. Loop It también es una biblioteca de bucles: elige el bucle inicial adecuado, adáptalo al contexto del usuario y haz un seguimiento del progreso para que el siguiente bucle sea obvio.
Decisión
Primero decide qué modo necesita el usuario:
- Buscar en la biblioteca: selecciona un bucle predefinido para el objetivo del usuario.
- Siguiente desde el progreso: inspecciona
.loop-it/progress.jsono.loop-it/LOOP.mdy recomienda qué hacer a continuación. - Solo diseño: produce un prompt de bucle reutilizable o un archivo de bucle local al proyecto.
- Ejecutar ahora: ejecuta una iteración acotada a la vez, verifícala y decide si otra iteración está justificada.
- Exportar/instalar: adapta el mismo bucle para Codex, Claude Code, Cursor u otro agente compatible con SKILL.md.
Si la tarea es vaga, no hagas un cuestionario amplio de descubrimiento. Primero recomienda el mejor bucle de la biblioteca y expón la suposición. Haz hasta tres preguntas específicas solo cuando el objetivo, la verificación de éxito, el alcance del repositorio o el límite de aprobación realmente lo bloqueen.
Contrato
Cada bucle necesita estos campos antes de ejecutarse:
- Objetivo: el resultado concreto, no un tema.
- Alcance: repositorio, archivos, área de funcionalidad, fuente de datos o entorno.
- Verificación de éxito: comando, benchmark, inspección manual, criterio de revisión o umbral medible.
- Límite de iteraciones: pases máximos o presupuesto de tiempo.
- Condiciones de parada: éxito, ninguna mejora significativa, fallo repetido, acceso bloqueado, acción insegura o requisito de aprobación.
- Evidencia: qué registrar después de cada pase.
- Puertas de aprobación: escrituras en producción, mensajes externos, pagos, operaciones destructivas de git, credenciales, despliegues o cambios irreversibles de datos.
Rechaza cuando el bucle solicitado sea simplemente "sigue mejorando" sin una verificación. Ofrece un bucle más pequeño con una verificación clara.
Seleccionar un Bucle
Prefiere la biblioteca predefinida en lugar de inventar un bucle desde cero.
Usa el script selector cuando esté disponible:
node <dir-habilidad>/scripts/select-loop.mjs list
node <dir-habilidad>/scripts/select-loop.mjs search "ci fallando"
node <dir-habilidad>/scripts/select-loop.mjs recommend --goal "arreglar prueba de checkout que falla"
node <dir-habilidad>/scripts/select-loop.mjs next --cwd <proyecto>
Resuelve <dir-habilidad> a la carpeta de esta habilidad. En Claude Code, CLAUDE_SKILL_DIR puede estar disponible. En otros agentes, localiza el directorio que contiene este SKILL.md.
Al seleccionar:
- Revisa
.loop-it/progress.jsonprimero cuando el usuario pregunte qué hacer a continuación. - Si no hay progreso, compara el objetivo del usuario con
references/library/loops.json. - Recomienda un bucle, más como máximo dos alternativas.
- Explica la coincidencia en una frase.
- Haz las preguntas principales del bucle solo si es necesario.
- Si ningún bucle de la biblioteca encaja, diseña un bucle personalizado y di que debería considerarse para la biblioteca después de que demuestre su utilidad.
Lee references/library/loops.json solo cuando el script selector no esté disponible o se necesite inspección manual. Lee references/loop-template.md cuando la tarea necesite la forma genérica del archivo de estado duradero.
Las categorías actuales de la biblioteca incluyen:
- Ticket a corrección verificada: reproducir, diagnosticar, parchear, añadir cobertura de regresión, verificar.
- Reparación de CI fallida: inspeccionar salida fallida, reproducir, parchear, re-ejecutar la comprobación fallida.
- Barrido de documentación: comparar documentación con implementación, actualizar documentación obsoleta, verificar ejemplos o enlaces.
- Evaluación de producto: definir escenarios y criterios, probar, corregir fallos, re-ejecutar comprobaciones afectadas y completas.
- Bucle de rendimiento: medir línea base, hacer un cambio enfocado, volver a medir, conservar solo las mejoras probadas.
- Bucle de reparación de revisión: revisar diff, corregir hallazgos bloqueantes, re-ejecutar comprobaciones, repetir hasta que solo queden riesgos aceptados.
- Bucle de configuración desde cero: empezar desde un entorno limpio, seguir la configuración documentada, corregir suposiciones ocultas, reintentar limpiamente.
- Preparación para lanzamiento: verificar paquete, despliegue o rutas de instalación pública antes de publicar.
- Pulido de UX, actualización de dependencias, endurecimiento de seguridad, contención de refactorización y bucles de cobertura de pruebas.
Redactar el Bucle
Usa esta estructura para los prompts y archivos de estado del bucle:
- Indica el objetivo y los no-objetivos.
- Define la acción repetida en un ciclo ajustado: inspeccionar, actuar, verificar, registrar, decidir.
- Nombra el comando de verificación exacto o la comprobación manual.
- Define el límite de iteraciones y las condiciones de parada.
- Define qué debe incluir el informe final.
Mantén la versión 1 limitada: un repositorio, un rol principal, una verificación de éxito principal. Retrasa la planificación, los paneles, la orquestación multi-agente y la automatización de producción hasta que un bucle manual haya demostrado su utilidad.
Cuando sea útil un archivo de estado duradero, crea .loop-it/LOOP.md a partir de references/loop-template.md o ejecuta:
node <dir-habilidad>/scripts/create-loop.mjs --name "Nombre del bucle" --objective "Resultado concreto" --check "Comando de verificación o criterio"
node <dir-habilidad>/scripts/create-loop.mjs --from reparacion-ci-fallida
Los archivos de bucle respaldados por la biblioteca también crean .loop-it/progress.json a menos que se pase --no-progress.
Ejecutar el Bucle
Para cada iteración:
- Vuelve a leer el objetivo, la verificación de éxito, el límite y las puertas de aprobación.
- Inspecciona solo el contexto necesario para la siguiente acción acotada.
- Haz el cambio creíble más pequeño.
- Ejecuta la verificación más relevante primero, luego comprobaciones más amplias solo si es necesario.
- Registra la evidencia en
.loop-it/LOOP.mdcuando exista un archivo de estado y actualiza.loop-it/progress.jsonsi está presente. - Decide: parar, continuar, pedir aprobación o reportar bloqueo.
Detente inmediatamente cuando continuar requeriría suposiciones ocultas sobre seguridad, credenciales, datos de producción, facturación, mensajería de usuario, operaciones destructivas de git o aprobación de despliegue.
No describas un bucle agotado, bloqueado o parcialmente verificado como completo. Di exactamente qué condición lo detuvo y qué evidencia existe.
Exportar
Usa el mismo texto del bucle en todas las herramientas, cambiando solo la invocación:
- Codex: instala en
.agents/skills/loop-it/o como plugin de Codex, luego invoca con$loop-it. - Claude Code: instala en
.claude/skills/loop-it/, luego invoca con/loop-it. - Cursor: instala en
.cursor/skills/loop-it/, luego invoca desde el chat del Agente con/loop-ito pidiendo un bucle. Usa las reglas de Cursor para convenciones de proyecto siempre activas, no para este bucle procedural.
Al exportar, mantén un cuerpo de bucle canónico y evita la sintaxis específica de la herramienta a menos que esa herramienta lo requiera.