Mantén Agentes IA Activos Mientras Duermes

Lanzas una sesión de Claude Code a medianoche esperando una rama terminada por la mañana — y te despiertas con un agente detenido y una pantalla que se apagó hace tres horas. macOS se duerme con su propio cronograma, y los procesos de agentes IA no cuentan como actividad del usuario. Mantener una ejecución nocturna activa significa resolver tres problemas a la vez: prevenir el sueño, proteger la batería y saber cuándo termina el trabajo.
Por Qué macOS Interrumpe tu Agente IA por la Noche
macOS está diseñado para dormirse cuando no detecta entrada del usuario — teclado, ratón, trackpad. Un agente IA ejecutándose en una ventana de terminal no genera eventos de entrada, por lo que el temporizador de sueño de la pantalla se dispara primero, luego sigue el sueño del sistema. El agente pierde programación de CPU y acceso a red en el momento en que la máquina entra en suspensión, dejando la ejecución detenida a mitad de tarea sin recuperación limpia.
Cerrar la tapa es un disparador inmediato de sueño. Por defecto, una MacBook se suspende en el momento en que cierras la tapa, sin importar qué se esté ejecutando en segundo plano. Si cerraste la laptop e irte a dormir, tu agente casi seguramente se detuvo dentro de segundos. Herramientas simples como caffeinate -i pueden bloquear el sueño inactivo, pero no manejan el caso de cierre de tapa, y permanecen activas indefinidamente incluso después de que se complete el trabajo — lo cual importa cuando quieres que la Mac se duerma normalmente una vez que termina el trabajo.
La batería añade un tercer modo de fallo. macOS tiene su propio apagado de batería crítica, y puede forzar el sueño antes de ese umbral si decide que las condiciones lo justifican. Un agente haciendo inferencia pesada o trabajo de modelo local puede drenar una batería al 50% en tres a cuatro horas. Sin un punto de parada definido, el OS decide cuándo termina la ejecución — y no siempre elegirá un momento limpio.
El Patrón Seguro para Ejecuciones Nocturnas
El enfoque correcto es keep-awake vinculado al proceso: mantén una aserción de energía solo mientras el proceso del agente se está ejecutando, luego libéralo automáticamente cuando el proceso termina. Process Watch de LidRun hace esto — monitorea la lista de procesos de herramientas como claude, node, cursor o python y activa keep-awake cuando detecta una coincidencia. La Mac se duerme normalmente el resto del tiempo, que es exactamente lo que quieres.
Para ejecuciones con tapa cerrada, la ubicación del hardware importa. Coloca la Mac en una superficie plana y dura que permita que el aire circule debajo — un escritorio, un soporte para laptop, una mesa sólida. No en una cama, no en una bolsa, no en un recinto. El cierre de la tapa reduce la ruta de flujo de aire, por lo que el calor que normalmente se disipa a través del teclado necesita otro lugar para ir. Prefiere ejecutar conectado: la descarga de batería bajo carga sostenida genera calor adicional en comparación con ejecutar en AC. Los pasos de configuración detallados específicos para cada herramienta se cubren en las guías mantén Claude Code ejecutándose cuando MacBook está cerrado y mantén Cursor ejecutándose en Mac.
Las ejecuciones nocturnas no son completamente automáticas. Un trabajo bien estructurado con condiciones de salida definidas es más seguro que una solicitud abierta que podría entrar en bucle. Antes de dormir, confirma que el agente tiene un punto de parada claro — una lista de tareas, un timeout, un archivo específico para escribir. Los agentes que pueden entrar en bucle en errores o re-solicitudes seguirán ejecutándose y drenando recursos sin hacer progreso útil.
Guía relacionadaEl gobernador de seguridad: por qué LidRun no mantiene despierto un Mac caliente o inactivoConfigurar Límites de Batería y Térmicos
Un piso de batería al 20% es un punto de partida razonable. Mantiene la máquina muy por encima del umbral de emergencia propio de macOS, le da al agente tiempo para terminar tareas típicas, y deja suficiente carga para que uses la Mac por la mañana. Para cargas más ligeras vinculadas a API — donde el agente principalmente espera respuestas de red — el 15% puede funcionar. Para inferencia local o compilaciones pesadas, mantente al 20% o superior. La clave es establecer un piso en primer lugar: sin uno, el OS decide cuándo parar, y puede que no pare limpiamente.
Los límites térmicos vale la pena configurar incluso si confías en las protecciones propias de la máquina. macOS limitará la CPU antes de que algo crítico suceda, pero la limitación significa que el agente ralentiza a media velocidad durante horas extra en lugar de detenerse limpiamente — y eso genera más calor acumulado que un paro deliberado y reinicio. LidRun observa el estado térmico del sistema a través de la API ProcessInfo de Apple y puede detener automáticamente la sesión keep-awake cuando alcanza un umbral que estableces, lo que ayuda a mantenerse dentro de los umbrales de seguridad para ejecuciones prolongadas desatendidas. El artículo mac-keep-awake-safety-governor cubre cómo interactúan los límites de batería, térmicos y de tiempo.
En Apple Silicon, el software del espacio de usuario monitorea el estado térmico pero no puede controlar directamente la velocidad del ventilador — eso es territorio del kernel. Piénsalo como una barrera de seguridad, no como un dial. Combina el piso de batería con el límite térmico y tienes dos condiciones de auto-parada independientes: cualquier umbral que alcance la ejecución primero pone el freno, en lugar de dejar que el trabajo se ejecute hasta que el hardware o el OS intervenga.
Recibir Notificaciones Cuando Termina el Trabajo
Las notificaciones push cierran el ciclo. Sin ellas estás despertándote para verificar manualmente o adivinando. LidRun soporta ntfy.sh — un relé de notificación libre y abierto — para enviar un push a tu teléfono en el momento en que termina la sesión keep-awake. Esa sesión termina cuando el proceso del agente se cierra, por lo que la notificación es un proxy directo del trabajo terminando o deteniéndose. No se requiere integración de webhook del lado del servidor.
La notificación señala el fin de la sesión, no el éxito del trabajo. Ya sea que el agente completó su tarea, encontró un error, o se detuvo porque un piso de batería o límite térmico se activó — la notificación se ve igual. Cuando llega, abre la salida del terminal y el registro de actividad de LidRun. El registro registra cuál condición de parada se activó: salida de proceso, piso de batería, límite térmico, o parada manual. Eso toma treinta segundos y te dice si volver a dormir o levantarse a investigar.
Trata la notificación como lista para tu atención, no que todo funcionó. Una verificación rápida del archivo de salida del agente o historial de commits — incluso desde tu teléfono a través de una aplicación de alojamiento de git — te dice qué realmente pasó. La mayoría de ejecuciones que alcanzan una salida de proceso limpia dejan salida utilizable. La mayoría que se detuvieron en un límite de batería o térmico dejan trabajo parcial que puedes reanudar desde un estado conocido. La diferencia importa, y puedes verla en el registro antes incluso de levantarte de la cama.
Una función de LidRun for closed-lid Mac.
LidRun mantiene tu trabajo en marcha con la tapa cerrada, con protección de batería y temperatura integrada.
Preguntas frecuentes
macOS trata los procesos del agente IA como trabajo de fondo y aplica su temporizador de sueño normal sin importar la actividad de CPU. No se detecta entrada del usuario, por lo que el sueño de pantalla se dispara primero, luego el sueño del sistema suspende la máquina. El agente pierde programación de CPU y acceso a red en ese punto, terminando la ejecución. Las herramientas de prevención de sueño — vinculadas al proceso del agente — mantienen la máquina despierta solo durante la duración del trabajo.
Usa una herramienta keep-awake vinculada al proceso de Claude en lugar de un modo siempre activo global, para que la prevención de sueño se levante automáticamente cuando el agente termina. Configura un piso de batería alrededor del 20% y un límite térmico para que la ejecución se detenga limpiamente si las condiciones se deterioran. Ejecuta en una superficie plana dura con flujo de aire debajo, prefiere cargar sobre batería, y habilita notificaciones push para saber cuándo termina la sesión sin tener que verificar manualmente.
El 20% funciona para la mayoría de cargas de trabajo. Se mantiene muy por encima del umbral de apagado de emergencia propio de macOS y le da al agente un punto de parada limpio antes de que el OS tome medidas drásticas. Para tareas más ligeras vinculadas a API puedes bajar al 15%; para inferencia local o compilaciones pesadas, mantente al 20% o superior. La clave es establecer un piso en primer lugar — sin uno, macOS decide cuándo parar y puede no elegir un momento limpio en tu trabajo.
Ejecutar con tapa cerrada en una superficie plana dura con buen flujo de aire debajo ayuda a reducir significativamente el riesgo de calor. El peligro principal es el flujo de aire restringido — nunca ejecutes de noche en una bolsa, en una cama, o en un espacio cerrado. El manejo térmico de Apple Silicon limita la CPU antes de que algo crítico suceda, pero configurar un auto-parada térmico añade una segunda capa que mantiene la ejecución dentro de umbrales de seguridad y la detiene limpiamente si las temperaturas suben durante operación prolongada desatendida.