feat(statusline): estado 'preguntando', DoD junto al objetivo y comando pausa
- Nuevo estado de reposo 'preguntando' (❓ esperando respuesta), distinto de pendiente_revision: lo usa el Stop worker cuando la respuesta termina con preguntas concretas al usuario en vez de dejar un resultado para revisar. - DoD corto opcional junto al objetivo: se fija con "dod: <texto>" ("dod: clear" lo borra) y se muestra atenuado con 🏁 tras el objetivo. Re-fijar el objetivo preserva el DoD existente. - Comando "pausa" (prompt) marca la fase en en_pausa. Es la alternativa manual a Ctrl-C: Claude Code no dispara ningun hook al interrumpir un turno (el Stop hook solo corre en finalizacion normal; feature pedido, sin implementar), asi que no es posible detectar la interrupcion automaticamente. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -72,7 +72,7 @@ LAST=$(printf '%s' "$LAST" | tail -c 4000)
|
||||
[ -z "$LAST" ] && exit 0
|
||||
USER_MSG=$(printf '%s' "$USER_MSG" | tail -c 1500)
|
||||
|
||||
SYS="El asistente acaba de PARAR y cede el control al usuario. Clasifica el estado de REPOSO en que queda la tarea. Responde UNA sola palabra, sin nada mas, de: hecho pendiente_revision bloqueado en_pausa sin_cambio. hecho=el objetivo esta completo y verificado; pendiente_revision=el asistente espera que el humano revise un resultado o decida algo importante; bloqueado=no puede avanzar por un error o por falta de informacion del usuario; en_pausa=hizo un avance y espera la siguiente indicacion, sin estar terminado ni bloqueado ni a la espera de revision; sin_cambio=el turno no altera el estado de reposo actual (charla irrelevante). Usa 'hecho' SOLO si el trabajo esta completo y confirmado, nunca si queda algo pendiente."
|
||||
SYS="El asistente acaba de PARAR y cede el control al usuario. Clasifica el estado de REPOSO en que queda la tarea. Responde UNA sola palabra, sin nada mas, de: hecho pendiente_revision preguntando bloqueado en_pausa sin_cambio. hecho=el objetivo esta completo y verificado; pendiente_revision=el asistente termino un trabajo y espera que el humano lo revise o apruebe (no hace una pregunta directa); preguntando=el asistente termina formulando una o varias PREGUNTAS concretas al usuario y necesita su respuesta o decision para continuar; bloqueado=no puede avanzar por un error o por falta de informacion/acceso; en_pausa=hizo un avance y espera la siguiente indicacion, sin estar terminado ni preguntar ni bloqueado; sin_cambio=el turno no altera el estado de reposo actual (charla irrelevante). Distingue: si la respuesta acaba con preguntas al usuario es 'preguntando'; si deja un resultado para que lo mire es 'pendiente_revision'. Usa 'hecho' SOLO si el trabajo esta completo y confirmado."
|
||||
|
||||
PROMPT="OBJETIVO DE LA TAREA: ${GOAL}
|
||||
|
||||
@@ -89,10 +89,11 @@ RAW=$("$PY" "$ASK" --model claude-haiku-4-5-20251001 --system "$SYS" "$PROMPT" 2
|
||||
|
||||
case "$RAW" in
|
||||
*sin_cambio*|*sincambio*|*ninguna*|*charla*) exit 0 ;;
|
||||
*pendiente*revis*|*revis*) PHASE=pendiente_revision ;;
|
||||
*pregunt*|*consulta*|*respuesta*) PHASE=preguntando ;;
|
||||
*pendiente*revis*|*revis*|*aprob*) PHASE=pendiente_revision ;;
|
||||
*bloque*) PHASE=bloqueado ;;
|
||||
*hecho*|*complet*|*termin*|*done*) PHASE=hecho ;;
|
||||
*pausa*|*pause*|*espera*|*siguiente*) PHASE=en_pausa ;;
|
||||
*pausa*|*pause*|*siguiente*) PHASE=en_pausa ;;
|
||||
# Si por error devuelve un estado activo al parar, lo tratamos como pausa.
|
||||
investigando|planificando|haciendo|testeando|puliendo) PHASE=en_pausa ;;
|
||||
*) exit 0 ;;
|
||||
|
||||
Reference in New Issue
Block a user