Cómo evitar que Mac se duerma: Codex, Claude Code y agentes de IA sin interrupciones
Actualizado el

La respuesta corta depende de lo que quieras decir con "que mi Mac no se duerma".
- Si la tapa queda abierta y solo necesitas una sesión temporal,
caffeinatesuele bastar. - Si quieres cerrar la tapa de un MacBook y que el proceso siga corriendo, necesitas controlar el reposo con tapa cerrada.
- Si estás dejando trabajando a Codex, Claude Code, agentes de Cursor, scripts locales, builds o jobs de modelos, conviene usar un interruptor visible en vez de memorizar comandos de
pmset.
Para ese tercer caso, usa Macchiato (opens in a new tab): una app pequeña de barra de menús para macOS que mantiene el Mac despierto, incluso con la tapa cerrada, con un solo interruptor.
La versión por terminal es sencilla, pero fácil de olvidar:
# Disable sleep, including lid-close sleep behavior.
sudo pmset -a disablesleep 1
# Restore normal macOS sleep behavior.
sudo pmset -a disablesleep 0El segundo comando es el que evita problemas. Lo difícil no es encontrar cómo desactivar el reposo. Lo difícil es acordarse de volver a activar el comportamiento normal cuando el agente, la compilación o la automatización ya terminaron.
Respuesta rápida según tu caso
| Intención de búsqueda | Qué suele querer el usuario | Mejor respuesta |
|---|---|---|
| "cómo evitar que Mac se duerma" | Mantener el Mac activo con la tapa abierta | Usa caffeinate o Macchiato |
| "MacBook no dormir al cerrar la tapa" | Seguir ejecutando trabajo después de cerrar la tapa | Usa Macchiato o pmset disablesleep |
| "mantener Mac despierto con la tapa cerrada" | Dejar un proceso local corriendo sin tener la pantalla abierta | Usa un control para reposo con tapa cerrada |
| "Codex se interrumpe cuando Mac entra en reposo" | Codex está trabajando localmente y el reposo corta el flujo | Activa Macchiato antes de alejarte |
| "Claude Code se para al cerrar el MacBook" | Claude Code está ejecutando una tarea larga | Usa un interruptor visible y apágalo al terminar |
| "volver a activar reposo Mac" | El reposo quedó desactivado y el Mac ya no descansa | Apaga Macchiato o ejecuta sudo pmset -a disablesleep 0 |
Muchas respuestas centradas en comandos solo resuelven la primera fila. Los flujos con agentes de IA suelen vivir en las filas del medio.
Por qué importa más el caso de uso que el comando
Quien busca este tema normalmente no quiere una clase de administración de energía en macOS. Quiere evitar una interrupción concreta:
- una tarea de Codex sigue editando o probando código;
- una sesión de Claude Code está ejecutando varios pasos;
- un agente local usa el repositorio, la terminal o el navegador;
- un job de datos, exportación, descarga o modelo sigue activo;
- necesitas cerrar la tapa y alejarte del escritorio.
Si la respuesta se limita a "usa caffeinate", puede resolver el problema equivocado. caffeinate ayuda con el reposo por inactividad. El caso más delicado es trabajar con la tapa cerrada, porque macOS suele dormir el MacBook para proteger batería y temperatura.
Por eso esta guía empieza por los casos de uso y deja los comandos como herramienta, no como única respuesta.
Qué significa realmente "que el Mac no se duerma"
En macOS hay una diferencia importante entre apagar la pantalla, entrar en reposo por inactividad y dormir al cerrar la tapa. Para trabajos en segundo plano, lo que importa es el reposo del sistema.
Si el sistema entra en reposo, procesos locales como shells, servidores de desarrollo, pruebas, navegadores automatizados o notebooks pueden pausarse o dejar de avanzar. Para un agente de IA que trabaja en tu máquina, eso se traduce en tareas incompletas, comandos a medias o sesiones que parecen haberse quedado congeladas.
Por qué caffeinate ya no siempre alcanza
caffeinate sigue siendo la respuesta clásica a "cómo evitar que Mac se duerma". Es útil cuando el Mac permanece abierto.
Por ejemplo, este comando mantiene el Mac despierto mientras la sesión esté activa:
caffeinateEste lo mantiene despierto durante una hora:
caffeinate -t 3600Y este mantiene el Mac despierto mientras corre una compilación:
caffeinate npm run buildLa limitación aparece en flujos modernos. En 2026, mucha gente no solo espera una descarga: deja a un agente de IA, un servidor local, un job de notebook, una suite de tests, una exportación de video o un modelo trabajando mientras se va.
Si la tapa sigue abierta sobre el escritorio, caffeinate puede ser suficiente. Si quieres cerrar el MacBook, guardarlo a un lado o moverte a otra sala mientras el agente sigue trabajando, el problema ya no es solo el reposo por inactividad: es el reposo con tapa cerrada.
Caso 1: evitar que el Mac se duerma con la tapa abierta
Usa este enfoque cuando sigues cerca del ordenador y solo quieres que termine un proceso.
Ejemplos razonables:
- una descarga de archivos;
- una instalación de paquetes;
- un comando de build o tests;
- una exportación corta de datos;
- un servidor local durante una reunión.
Para este caso, un comando simple es suficiente:
caffeinate -t 3600Eso mantiene el Mac despierto durante una hora. El riesgo es bajo porque no cambias el comportamiento al cerrar la tapa y el comando tiene un límite natural.
Caso 2: mantener un MacBook despierto con la tapa cerrada
Este es el punto donde muchas respuestas rápidas fallan.
Cuando cierras un MacBook, macOS interpreta ese gesto como una señal fuerte de reposo. Es una decisión razonable para ahorrar batería y controlar temperatura. No es razonable si la máquina está a mitad de una tarea local larga.
Para trabajar con la tapa cerrada, usa Macchiato o controla pmset directamente:
sudo pmset -a disablesleep 1Después restaura el comportamiento normal:
sudo pmset -a disablesleep 0Si haces esto a menudo, es mejor usar un interruptor visible que depender de la memoria.
Caso 3: mantener Codex, Claude Code o agentes locales corriendo
Los agentes de programación cambian el problema del reposo porque el trabajo continúa después de que dejas de escribir. Codex, Claude Code, agentes de Cursor, agentes de navegador locales y agentes sobre notebooks pueden seguir leyendo archivos, ejecutando tests, llamando herramientas o esperando comandos.
Un flujo práctico es este:
- Inicia la tarea del agente.
- Comprueba que es seguro dejarla corriendo.
- Activa Macchiato.
- Cierra la tapa o aléjate.
- Vuelve, revisa el resultado y apaga Macchiato.
Esto es más claro que enseñar a cada usuario un comando de terminal, porque el estado visible de la app responde a la pregunta real: "¿mi Mac puede dormir normalmente ahora mismo?".
El fallo habitual: olvidar volver al reposo normal
El riesgo no está tanto en el comando. Está en la memoria humana.
El flujo problemático suele ser así:
- Empiezas una tarea larga.
- Desactivas el reposo desde terminal.
- Cierras la tapa y te vas.
- Vuelves más tarde.
- Olvidas restaurar el reposo normal.
Ese último paso es donde aparece el coste real. Si el reposo queda desactivado, el Mac puede seguir consumiendo energía cuando esperabas que descansara. En batería, eso significa descarga innecesaria. Dentro de una funda o mochila, puede significar calor. Con el tiempo, es un mal hábito para la salud de la batería y la comodidad del hardware.
Por eso, para uso diario, una app de un botón suele ser más práctica que un comando suelto.
Recomendado: usar Macchiato
Macchiato (opens in a new tab) es una utilidad pequeña de barra de menús para macOS, creada para este flujo exacto: mantener el Mac despierto mientras un trabajo largo continúa, incluso con la tapa cerrada, y volver al reposo normal con el mismo interruptor.
El comportamiento principal es deliberadamente simple:
| Estado de Macchiato | Qué ocurre |
|---|---|
| Activado | El Mac permanece despierto, incluso con la tapa cerrada |
| Desactivado | macOS vuelve al comportamiento normal de reposo al cerrar la tapa |
Esa es la idea. No tienes que recordar si usaste caffeinate, qué pestaña de terminal sigue abierta o si pmset quedó configurado para impedir el reposo.
Cómo instalar Macchiato
- Abre el repositorio de Macchiato en GitHub (opens in a new tab).
- Entra en Releases (opens in a new tab).
- Descarga el paquete
Macchiato.dmg. - Abre el DMG e instala la app localmente.
- Lanza Macchiato y usa el icono de la barra de menús.
La primera vez, macOS puede pedirte aprobar el helper en Ajustes del Sistema. Esa aprobación permite que Macchiato haga el trabajo privilegiado de control de reposo sin pedir credenciales de administrador cada vez que cambias el interruptor.
Cómo usar Macchiato con Codex o Claude Code
Usa este flujo cuando Codex, Claude Code u otro agente local necesite continuar mientras estás fuera:
- Inicia la tarea del agente, build, ejecución de modelo o script.
- Activa Macchiato desde la barra de menús.
- Cierra la tapa cuando necesites moverte o alejarte.
- Abre el Mac y revisa el resultado.
- Desactiva Macchiato cuando el trabajo ya no necesite seguir corriendo.
Encaja especialmente bien con flujos de agentes de código porque el trabajo vive en tu máquina. Si el Mac entra en reposo, la terminal, el servidor local, la automatización del navegador o el proceso de tests pueden pausarse o detenerse.
Para usuarios de Codex, esto ayuda cuando una tarea está ejecutando comandos, editando archivos o validando cambios en el repositorio local. Para usuarios de Claude Code, es útil cuando una sesión corre una build larga, tests o una automatización. La clave no es que Codex o Claude Code tengan un ajuste especial de reposo. La clave es que el Mac donde corre el agente debe permanecer despierto.
Para ampliar el contexto sobre este tipo de trabajo, lee Cómo usar Codex, agentes de código en paralelo, Claude Code routines, las mejores herramientas de vibe coding y las mejores herramientas de IA para programar.
Qué hace Macchiato por debajo
Macchiato envuelve el comportamiento del sistema que, de otra forma, tendrías que gestionar manualmente.
El comando importante para restaurar es:
sudo pmset -a disablesleep 0Eso le dice a macOS que vuelva a permitir el reposo normal. Cuando se desactiva el reposo, el comando correspondiente es:
sudo pmset -a disablesleep 1Macchiato también usa assertions de energía de macOS para que el sistema sepa que una app está manteniendo la máquina despierta de forma intencional. Puedes comprobar ese tipo de assertion con:
pmset -g assertions | grep MacchiatoTambién puedes inspeccionar el estado actual de reposo desactivado:
pmset -g live | grep SleepDisabledLa mayoría de usuarios no necesita estos comandos en el día a día. Son útiles si estás depurando, validando la app o recuperándote después de un cierre forzado.
Cuándo usar pmset directamente
Usa pmset directamente solo si quieres control explícito desde terminal y tienes disciplina para restaurar el ajuste.
Antes de dejar una tarea larga corriendo:
sudo pmset -a disablesleep 1Cuando la tarea termine:
sudo pmset -a disablesleep 0El peligro es que ese estado puede sobrevivir a la tarea. Si ejecutas el comando para desactivar el reposo y luego lo olvidas, tu Mac puede comportarse distinto horas después. Para sesiones puntuales y controladas, es aceptable. Para trabajo repetido con agentes de IA, un interruptor visible en la barra de menús es más seguro.
Errores comunes
Error 1: confundir apagar pantalla con reposo del sistema
Que la pantalla esté apagada no significa que el Mac esté dormido. La pantalla puede estar negra mientras los procesos siguen corriendo, o el Mac puede entrar en reposo aunque la pantalla ya estuviera apagada. Para trabajos en segundo plano, lo importante es el reposo del sistema.
Error 2: asumir que caffeinate resuelve la tapa cerrada
caffeinate es útil para el reposo por inactividad. El comportamiento al cerrar la tapa es más estricto y puede interrumpir justo el trabajo que querías mantener vivo.
Error 3: olvidar el comando de restauración
Si usaste pmset directamente y quieres recuperar el comportamiento normal, ejecuta:
sudo pmset -a disablesleep 0Error 4: dejar el Mac trabajando caliente dentro de una mochila
Si un Mac hace trabajo real con la tapa cerrada, puede seguir usando CPU, red, disco y batería. Vigila temperatura y batería, sobre todo antes de meterlo en una funda o mochila.
Error 5: tratar cualquier tarea como si mereciera impedir el reposo
No todo trabajo justifica anular el reposo. Si una tarea puede reanudarse, reiniciarse o ejecutarse en la nube, el reposo normal puede ser la mejor opción por defecto.
Flujo de diagnóstico
| Síntoma | Qué revisar | Solución |
|---|---|---|
| El Mac se duerme al cerrar la tapa | ¿Macchiato está activado? ¿Aprobaste el helper? | Activa Macchiato y aprueba el helper en Ajustes del Sistema |
| El Mac ya no se duerme normalmente | ¿El reposo sigue desactivado? | Ejecuta sudo pmset -a disablesleep 0 o apaga Macchiato |
| No sabes si Macchiato está activo | Revisa la barra de menús o pmset -g assertions | Apágalo y actívalo de nuevo antes de la tarea |
| La batería se descarga sin esperarlo | Puede que el reposo esté desactivado o que haya un proceso activo | Restaura el reposo y revisa los trabajos en ejecución |
| Un comando funcionó una vez y luego no | Cambió la sesión de shell o el estado de permisos | Usa Macchiato para cambios repetidos |
Checklist de seguridad
Antes de cerrar la tapa con un Mac trabajando:
- Conéctalo a corriente si el trabajo es largo o usa mucha CPU.
- Evita fundas y mochilas cerradas durante trabajo activo.
- Confirma que la tarea realmente necesita continuar localmente.
- Apaga Macchiato cuando el trabajo haya terminado.
- Si algo parece raro, restaura el reposo con
sudo pmset -a disablesleep 0.
Ese es el equilibrio práctico: mantener la máquina despierta cuando el trabajo lo necesita de verdad y dejar que macOS proteja batería y temperatura el resto del tiempo.
FAQ
¿Cómo evito que mi Mac se duerma?
Para una sesión temporal con la tapa abierta, ejecuta caffeinate en Terminal. Para trabajo con tapa cerrada, como agentes de IA, tareas de Codex, sesiones de Claude Code o builds largas, usa Macchiato o ejecuta sudo pmset -a disablesleep 1, y luego restaura el reposo normal con sudo pmset -a disablesleep 0.
¿Cómo hago para que un MacBook no se duerma al cerrar la tapa?
Usa una herramienta de control de reposo con tapa cerrada como Macchiato, o ejecuta sudo pmset -a disablesleep 1 directamente. Acuérdate de desactivarlo después con sudo pmset -a disablesleep 0.
¿caffeinate mantiene despierto un Mac con la tapa cerrada?
caffeinate sirve sobre todo para evitar el reposo por inactividad mientras el sistema sigue activo. Para flujos con MacBook cerrado, especialmente con batería, usa un control específico para tapa cerrada o pmset.
¿Cómo mantengo Codex corriendo si mi Mac entra en reposo?
Mantén el Mac despierto a nivel de sistema. Inicia la tarea de Codex, activa Macchiato y apágalo cuando la tarea termine. Codex no necesita un comando especial de reposo; el Mac donde corre Codex necesita permanecer despierto.
¿Cómo mantengo Claude Code corriendo cuando cierro mi MacBook?
Activa Macchiato antes de cerrar la tapa, o usa sudo pmset -a disablesleep 1 si prefieres Terminal. Cuando la tarea de Claude Code termine, restaura el reposo normal apagando Macchiato o ejecutando sudo pmset -a disablesleep 0.
¿Por qué mi agente de IA se detiene cuando mi Mac se duerme?
La mayoría de agentes locales dependen de la terminal, el sistema de archivos, el navegador, el servidor de desarrollo o el proceso de tests. Si macOS entra en reposo, esos recursos pueden pausarse, desconectarse o dejar de avanzar.
¿Es malo mantener un Mac despierto con la tapa cerrada?
Está bien para sesiones controladas, pero no debería ser tu estado por defecto. Las sesiones largas con la tapa cerrada pueden gastar batería y generar calor, especialmente si el Mac no está conectado a corriente o está dentro de una mochila.
¿Qué comando restaura el reposo normal de Mac?
Ejecuta sudo pmset -a disablesleep 0. Ese es el comando para volver al comportamiento normal después de desactivar el reposo.
¿Por qué usar Macchiato en vez de comandos de Terminal?
Macchiato te da un interruptor visible de un solo botón. Eso reduce la probabilidad de olvidar que el reposo sigue desactivado después de que un agente de IA, build o script haya terminado.
Guías relacionadas
- Cómo usar Codex
- Agentes de código en paralelo
- Claude Code routines
- Mejores herramientas de vibe coding en 2026
- 15 mejores herramientas de IA para programar en 2026
- Un agente de IA convierte Jupyter Notebook en copiloto de data science