4.5 KiB
AGENTS.md — Repo INFRAESTRUCTURA (infraestructura compartida Prolongo)
Repo hermano de
biblioteca_negocio_prolongo. Aquí vive todo lo que hace funcionar los equipos (sobremesa, portátil, VPS): watchers, automatizaciones, plugins, configuración de servicios y el changelog global.Regla 31: si algo sirve para "hacer funcionar" o automatizar la infraestructura → este repo. Si es "conocer el negocio" o memoria → biblioteca.
Estructura
| Ruta | Qué es |
|---|---|
changelog_infra.json |
Fuente de verdad del changelog global (por equipo) |
CHANGELOG_INFRA.md |
Versión legible (generada; no editar a mano) |
AGENTS.md |
Este fichero: reglas del repo de infraestructura |
estado/ |
Estado y memoria de infraestructura (ver abajo) |
estado/ESTADO_DIARIO.md |
Diario de cambios de infraestructura |
estado/pendientes_infra.json |
Pendientes propios de infraestructura |
estado/telegram_mensajes.log |
Log del watcher de Telegram (runtime, gitignored) |
estado/recordatorios_msgbox.json |
Recordatorios locales del message box |
estado/telegram_tracked_users.json |
Config del watcher (contactos vigilados, etc.) |
scripts/infra_changelog.py |
Añadir / consultar / marcar cambios del changelog |
scripts/infra_paths.py |
Resolución de rutas compartidas (INFRAESTRUCTURA ↔ biblioteca) |
scripts/instalar_global.ps1 |
Instalador global del equipo (OmniRoute + OpenCode + watchers) |
scripts/instalar_watchers.ps1 |
Registra las tareas programadas de los watchers |
scripts/telegram_watcher.py |
Watcher de Telegram (chats → estado/telegram_mensajes.log) |
scripts/recordatorios_msgbox.py |
Recordatorios con message box de Windows |
scripts/recordatorio.cmd |
Comando corto recordatorio (listar/done/add/test/sync) |
omniroute/ |
Vigilante y autostart de OmniRoute |
opencode/ |
Plugin global de OpenCode |
vps/ |
Configuración de servicios del VPS (Gitea, etc.) |
Reglas del repo
- Solo se versiona infraestructura. Nada de conocimiento de negocio.
- Todo cambio de infraestructura se anota en el changelog (abajo) con
transferible: si|nopara que el otro equipo sepa si debe replicarlo. - Nunca guardar secretos/tokens en el repo (van a
.envo variables de usuario;.gitignoreya cubre lo típico). - Los watchers se ejecutan como tareas programadas al iniciar sesión; si se
caen, relanzarlos a mano y, si hace falta, reinstalar con
scripts/instalar_watchers.ps1. - Este repo está registrado en Engram (proyecto
INFRAESTRUCTURA), Gitea (jjminguez/INFRAESTRUCTURA) y Obsidian (03-IT/).
Watchers
Los watchers viven en scripts/ y su estado en estado/:
# Instalar/reinstalar tareas programadas (AtLogOn + reinicio si falla)
powershell -ExecutionPolicy Bypass -File scripts\instalar_watchers.ps1
# Verificar que corren
Get-CimInstance Win32_Process -Filter "Name='python.exe'" |
Where-Object { $_.CommandLine -match 'telegram_watcher|recordatorios_msgbox' }
telegram_watcher.py y recordatorios_msgbox.py resuelven las rutas con
scripts/infra_paths.py:
- Estado →
INFRAESTRUCTURA/estado/ - Datos de negocio (
pendientes.json) y módulos aún compartidos (idd_channel,netatmo_tool,alarma_twilio) → repobiblioteca_negocio_prolongo(hermano; override conBIBLIOTECA_REPO).
Changelog global (sobremesa ↔ portátil ↔ VPS)
# Añadir un cambio (detecta el equipo automáticamente)
python scripts\infra_changelog.py add --titulo "..." --categoria watchers --transferible si --detalle "..."
# Ver qué falta replicar en ESTE equipo
python scripts\infra_changelog.py pendientes
# Marcar como aplicado aquí
python scripts\infra_changelog.py aplicado <id>
# Resumen
python scripts\infra_changelog.py estado
El protocolo re de cada equipo lee este fichero (paso 4b) y avisa de lo pendiente.
Instalación en un equipo nuevo (p. ej. el portátil)
git clone https://git.v-encore-lab.com/jjminguez/INFRAESTRUCTURA.git
cd INFRAESTRUCTURA
powershell -ExecutionPolicy Bypass -File scripts\instalar_global.ps1
Prerrequisitos: Python en el PATH; Node.js + npm i -g omniroute para OmniRoute.
Copiar además ~/.omniroute (credenciales), ~/.config/opencode/opencode.jsonc y
~/.telegram-agent (sesión de Telegram) desde el otro equipo.
Al arrancar el portátil por primera vez, el
reavisará de los cambios transferibles pendientes (incluida esta migración de watchers) y se aplican coninstalar_global.ps1.