asiai daemon
Gestiona servicios en segundo plano mediante LaunchAgents de macOS launchd.
Servicios
| Servicio | Descripción | Modelo |
|---|---|---|
monitor |
Recopila métricas del sistema e inferencia a intervalos regulares | Periódico (StartInterval) |
web |
Ejecuta el panel web como servicio persistente | Larga ejecución (KeepAlive) |
Uso
# Daemon de monitoreo (por defecto)
asiai daemon start # Iniciar monitoreo (cada 60s)
asiai daemon start --interval 30 # Intervalo personalizado
asiai daemon start --alert-webhook URL # Activar alertas por webhook
# Servicio del panel web
asiai daemon start web # Iniciar web en 127.0.0.1:8899
asiai daemon start web --port 9000 # Puerto personalizado
asiai daemon start web --host 0.0.0.0 # Exponer en la red (¡sin autenticación!)
# Estado (muestra todos los servicios)
asiai daemon status
# Detener
asiai daemon stop # Detener monitor
asiai daemon stop web # Detener web
asiai daemon stop --all # Detener todos los servicios
# Logs
asiai daemon logs # Logs del monitor
asiai daemon logs web # Logs del web
asiai daemon logs web -n 100 # Últimas 100 líneas
Cómo funciona
Cada servicio instala un plist de LaunchAgent de launchd separado en ~/Library/LaunchAgents/:
- Monitor: ejecuta
asiai monitor --quieten el intervalo configurado (por defecto: 60s). Los datos se almacenan en SQLite. Si se proporciona--alert-webhook, las alertas se envían por POST en transiciones de estado (presión de memoria, térmica, motor caído). - Web: ejecuta
asiai web --no-opencomo proceso persistente. Se reinicia automáticamente si falla (KeepAlive: true,ThrottleInterval: 10s).
Ambos servicios se inician automáticamente al iniciar sesión (RunAtLoad: true).
Seguridad
- Los servicios se ejecutan a nivel de usuario (no requieren root)
- El panel web se enlaza a
127.0.0.1por defecto (solo localhost) - Se muestra una advertencia al usar
--host 0.0.0.0— no hay autenticación configurada - Los logs se almacenan en
~/.local/share/asiai/