# dev-scripts

Scripts bash para operaciones del día a día con los bots Matrix.

Todos los scripts comparten funciones comunes definidas en `_common.sh` (colores, helpers de proceso, descubrimiento de agentes, carga de `.env`).

## Estructura

```
dev-scripts/
├── _common.sh       funciones compartidas (sourced por todos los scripts)
├── server/          gestión del launcher (ciclo de vida del servidor)
└── agent/           gestión de agentes individuales (setup, registro, E2EE)
```

## server/

Scripts para controlar el launcher unificado que ejecuta todos los agentes.

| Script | Descripción |
|--------|-------------|
| `start.sh` | Inicia el launcher (compila si es necesario) |
| `stop.sh` | Detiene el launcher (SIGTERM, espera 5s, SIGKILL) |
| `restart.sh` | Reinicia el launcher (stop + start) |
| `ps.sh` | Muestra el proceso del launcher con detalle (PID, mem, CPU, uptime) |
| `logs.sh [lines]` | Tail -f de los logs del launcher |
| `dashboard.sh` | Abre la TUI interactiva de gestión |
| `server.sh <cmd>` | CLI unificado que enruta a los scripts anteriores |

## agent/

Scripts para crear, registrar, verificar y gestionar agentes individuales.

| Script | Descripción |
|--------|-------------|
| `new-agent.sh <id> [name]` | Genera scaffold completo (config, agent.go, prompts) |
| `register.sh <id> [name]` | Registra bot en Matrix via Synapse admin API |
| `verify.sh [id]` | Verifica/regenera dispositivos E2EE (cross-signing) |
| `avatar.sh <id> <img>` | Sube avatar y sincroniza displayname |
| `reset-password.sh <id>` | Resetea password sin invalidar el token |
| `remove.sh <id>` | Deshabilita un agente (enabled: false, no borra datos) |
| `list.sh` | Muestra todos los agentes y su estado |
