¿Qué hace Goalkeeper-Claude-skill?
Bucle de flujo de trabajo Fable 5; Una habilidad de Claude Code: bucle autónomo de construcción/auditoría/verificación que se ejecuta hasta que un contrato verificable por máquina pasa, con condiciones de parada anti-bucle deterministas (sin progreso, reintento, oscilación, presupuesto) y escalamiento humano en disco.
¿Qué hace esta habilidad?
Esta habilidad ejecuta un bucle de trabajo autónomo que:
- Construye el proyecto o componente actual.
- Audita el resultado contra un conjunto de reglas o contratos.
- Verifica si el contrato se cumple.
- Si no se cumple, reintenta con información de retroalimentación hasta que:
- Se cumpla el contrato, o
- Se alcance una condición de parada (sin progreso, máximo de reintentos, oscilación detectada, o presupuesto agotado).
- Si se alcanza una condición de parada, escala el problema a un humano mediante un archivo de escalamiento en disco.
¿Por qué es útil?
- Automatización: Reduce la intervención manual en tareas repetitivas de verificación.
- Determinismo: Las condiciones de parada evitan bucles infinitos y garantizan un comportamiento predecible.
- Escalabilidad: Permite que los desarrolladores se centren en problemas complejos mientras la habilidad maneja verificaciones rutinarias.
- Integración: Funciona dentro de Claude Code y se puede integrar en flujos CI/CD.
Plataformas soportadas
- Claude Code (primariamente)
- Compatible con sistemas Unix/Linux y macOS (probado en entornos de terminal)
- Requiere acceso a
bash,git, y herramientas de construcción relevantes (por ejemplo,make,npm,cargo)
Cómo funciona
Configuración
La habilidad lee un archivo de configuración YAML (goalkeeper.yaml) en el directorio raíz del proyecto. Este archivo define:
contract: El comando o script que verifica el contrato (debe devolver código 0 para pasar).build: El comando para construir el proyecto.max_retries: Número máximo de reintentos (por defecto 5).budget: Tiempo máximo total en segundos (por defecto 300).progress_threshold: Umbral mínimo de progreso entre iteraciones para evitar bucles de oscilación.escalation_file: Ruta al archivo donde se escribe la solicitud de escalamiento humano.
Ejecución
Al activarse, la habilidad ejecuta el siguiente flujo:
# 1. Construir
comando_build
# 2. Auditar
comando_auditoria
# 3. Verificar
comando_verificacion
exit_code=$?
# 4. Decidir
if [ $exit_code -eq 0 ]; then
echo "Contrato cumplido. Terminando."
exit 0
else
# Verificar condiciones de parada
#... si alguna se cumple, escribir archivo de escalamiento y salir con código 1
#... si no, reintentar con retroalimentación
fi
Condiciones de parada
| Condición | Descripción | Acción |
|---|---|---|
| Sin progreso | El resultado de la verificación no mejora en N iteraciones consecutivas | Escalar |
| Máximo de reintentos | Se alcanzó el número máximo de reintentos | Escalar |
| Oscilación | El resultado oscila entre dos estados (por ejemplo, pasa/no pasa) | Escalar |
| Presupuesto agotado | Se superó el tiempo máximo total | Escalar |
Escalamiento humano
Cuando se alcanza una condición de parada, la habilidad:
- Escribe un archivo de escalamiento en la ruta especificada (
escalation_file). - Incluye información contextual: estado actual, historial de iteraciones, y sugerencias.
- Sale con código de error (no cero).
El desarrollador puede entonces revisar el archivo, modificar el contrato o la configuración, y reiniciar la habilidad.
Ejemplo de configuración
# goalkeeper.yaml
test: "make test" # Comando de prueba que verifica el contrato
build: "make build" # Comando de construcción
max_retries: 3 # Reintentar hasta 3 veces
budget: 120 # Tiempo máximo en segundos
progress_threshold: 0.1 # Umbral de mejora mínima (10%)
escalation_file: ".goalkeeper_escalation.md" # Archivo de escalamiento
Notas
- Asegúrese de que los comandos de construcción y verificación estén disponibles en el PATH.
- El archivo de configuración debe estar en el directorio raíz del proyecto.
- La habilidad registra su progreso en archivos de log para depuración.
Habilidad original: Mikhail-Za/Goalkeeper-Claude-skill