--- title: "Agentes del sitio" description: "Qué hacen solos el vigía, el agente diario y el bot de standup en drogheda.helgen.online, qué dejan listo para que Leo lo apruebe y qué nunca hacen." date: 2026-10-27 --- # Agentes del sitio Desde el 27-oct-2026 el sitio tiene tres ayudantes que trabajan solos. Todo lo que hacen queda aquí mismo: en [Incidencias](tableros/incidencias.md), en el [Standup](tableros/standup.md), en el historial de cada pendiente y en la [Bitácora](bitacora.md). Si algo de esto no te gusta, dilo en una incidencia. | Agente | Qué es | Cuándo corre | Dónde se ve | |---|---|---|---| | **Vigía** | Un programa en el servidor, sin IA (`backend/vigia.py`) | Cada hora, en el minuto 7 | [Incidencias](tableros/incidencias.md) con origen «vigía» | | **Agente diario** | Claude, como tarea programada en la Mac de Leo | Lunes a viernes, 6:37 pm | Comentarios en cada incidencia, ramas `agente/…` en git.helgen.online, lote del día | | **Bot de standup** | El mismo agente diario | En la misma corrida: deja listo el standup del siguiente día hábil | [Standup](tableros/standup.md) y la franja azul de arriba | ## El vigía Revisa cada hora y abre una incidencia cuando algo se repite (si ya hay una abierta igual, le suma una ocurrencia): - **Entradas:** alguien con 3 o más intentos fallidos en 24 horas y ninguno bueno después. La incidencia dice el motivo y una pista (Bloq Mayús, mayúscula que puso el teléfono, espacio de más). **Nunca guarda contraseñas.** - **Servidor:** errores de Python y respuestas 5xx del backend. - **Navegadores:** el mismo error de JavaScript, o la misma llamada que falla, 3 veces o por 2 personas. - **Salud:** que el backend conteste, que el archivo de usuarios tenga sus permisos (`leo:www-data 640`), que haya disco. - **Configuración:** que el servicio instalado en el servidor diga lo mismo que el del repositorio (administradores, actas repetibles). Así se habría visto el 27-oct que el servicio instalado a mano dejó fuera la prueba Ethernet/serie. ## El agente diario Cada tarde lee las incidencias abiertas, el reporte del vigía y los errores, y actúa con estas reglas: ### Lo hace solo (no necesita autorización) 1. **Atender:** clasificar (tipo y gravedad), decir quién la atiende, juntar duplicadas y **contestar en la incidencia** qué encontró y qué sigue. Si falta información, la pide ahí mismo a quien reportó. 2. **Reproducir** la falla en una copia del sitio con datos de prueba y escribir la causa. 3. **Arreglar lo que es solo de páginas** — textos, ligas rotas, estilos, el JavaScript de los tableros — en una copia limpia del repositorio: prueba (`mkdocs build --strict`, pruebas del backend, vista en claro, oscuro y teléfono), guarda el cambio en git.helgen.online con el folio de la incidencia y **publica solo las páginas** si la comparación con el servidor muestra que no se lleva nada más. Después comenta en la incidencia qué cambió y cómo deshacerlo. 4. **Cerrar** como resuelta cuando el arreglo ya está publicado y el vigía no ve la falla en 24 horas. 5. **Avisar en la entrada** (aviso público, sin datos internos) cuando una falla impide entrar a varias personas. ### Lo deja listo para que Leo lo apruebe - Cualquier cambio del **backend** (`backend/*.py`), de **nginx**, del **servicio** o del servidor; reinicios y `sudo`. - Lo que toca **cuentas, contraseñas o permisos** (también restablecer una contraseña). - Lo que cambia **datos**: actas, inventario, pendientes. Los cambios del tablero van en un **lote** que Leo aplica (`./scripts/tablero.sh revisar` → `aplicar`), como siempre. - Lo de la **página de entrada** y de las **actas de campo** (`entrar.html`, `cuenta.html`, `formularios/`): aunque sean páginas, si fallan nadie puede trabajar. Lo deja en una rama `agente/AAAA-MM-DD-INC-xxxx` con su prueba, y en el resumen del día dice exactamente qué comando correr. ### Nunca Borrar nada · ver, guardar o pedir contraseñas · cambiar permisos · mandar mensajes o correos a nombre de alguien · publicar datos del proyecto en la página de entrada · tocar el archivo de parámetros 4G/NTRIP. ## El bot de standup 1. **Prepara** para cada persona con pendientes abiertos su parte del día siguiente: instrucciones concretas (qué hacer, en qué orden, con la liga al documento) y una pregunta por pendiente. Lee el tablero, las decisiones de Ingeniería, la última junta y lo que esa persona contestó ayer. 2. **Pregunta** en el [Standup](tableros/standup.md): ¿qué terminaste?, ¿qué te falta?, ¿qué te bloquea? Cada quien contesta en 2 minutos y, si lo deja marcado, sus tarjetas se mueven solas (a su nombre). 3. **Resume** para Leo y Adriana (pestaña Equipo): quién contestó, qué se terminó y los bloqueos con quién los destraba. Lo que falte en el tablero (comentarios, pendientes nuevos por un bloqueo) va en el lote del día para que Leo lo aplique. ## Para ingeniería - Código: `backend/vigia.py`, `backend/incidencias.py`, `backend/standup.py`, `backend/acceso.py` (página de entrada); instrucciones del agente: `agentes/agente-diario.md` en el repositorio `hbox-docs`; ayuda para llamar la API desde la Mac: `scripts/agente-api.sh`. - El agente entra a la API por el servidor (`127.0.0.1:8081`, usuario `claude`); el vigía, como `vigia`. - Cambiar estas reglas = editar esta página y `agentes/agente-diario.md` en el mismo cambio.