TL;DR Antes de fiarte de una tarea local, pulsa Run now una vez y responde "always allow" a cada permiso. Si tiene que correr con el portátil cerrado, no es Local: es una routine remota.
En Claude Code Desktop, la página Routines crea dos tipos de tarea programada. Una Local corre en tu máquina, con tus archivos, tus herramientas y tus servidores MCP, pero solo mientras la app está abierta y el ordenador despierto. Una Remote es una routine en la nube: corre con el portátil apagado, sobre un clon limpio del repo y con un mínimo de una hora entre ejecuciones. La comparación completa con /loop está en este otro tip.
Los tres fallos de abajo son de las tareas locales. Todos pasan cuando no estás delante, que es justo para lo que las programas.
Qué recibe cada ejecución
Creé una tarea de prueba y la lancé con Run now. Cada ejecución es una sesión nueva, en la carpeta de la tarea, y tu prompt llega envuelto en un aviso de Claude Code:
<scheduled-task name="wmedia-tip-test" file="[...]/scheduled-tasks/wmedia-tip-test/SKILL.md">
This is an automated run of a scheduled task. The user is not present to answer questions.
...
Claude sabe que no estás y no te pregunta nada: si algo es ambiguo, decide solo. Escribe el prompt pensando en eso.
Fallo 1: se queda parada esperando un permiso
Cada tarea tiene su propio modo de permisos. Si corre en modo Manual y necesita una herramienta sin permiso, la ejecución se para hasta que la apruebes. La sesión se queda abierta en la barra lateral, esperando a que vuelvas.
Solución: en cuanto crees la tarea, pulsa Run now, mira qué permisos pide y responde "always allow" a cada uno. Las siguientes ejecuciones aprueban esas herramientas solas. Las ves y las revocas en el panel Always allowed de la tarea. Las reglas allow de tu ~/.claude/settings.json también se aplican.
Hay una excepción que no tiene arreglo por esta vía: una herramienta MCP marcada con requiresUserInteraction pregunta en cada llamada y no ofrece "always allow". Una tarea que la use se parará siempre.
Fallo 2: no se ejecutó
Abre la tarea y mira Review history. Las ejecuciones saltadas aparecen en la lista y, al pasar el ratón por encima, dicen por qué: el ordenador estaba dormido, la ejecución anterior seguía en marcha u otras tareas programadas ya estaban corriendo.
Solución: si fue el sueño, la documentación indica activar Keep computer awake en Settings, Desktop app → General. No lo confundas con "Keep computer awake while Claude works" de la pestaña Code: ese solo mantiene el ordenador despierto mientras una sesión trabaja, y a las 9:00 no hay ninguna trabajando. En los dos casos se evita el sueño por inactividad, pero cerrar la tapa lo duerme igual (lo que sigue vivo con la tapa cerrada). Si la tarea tiene que correr con el portátil cerrado, pásala a Remote.
Fallo 3: la de las 9 de la mañana sale a las 11 de la noche
Cuando la app arranca o el ordenador despierta, Desktop mira si cada tarea se saltó alguna ejecución en los últimos siete días. Si es así, lanza una sola de recuperación, la de la hora perdida más reciente, y descarta las anteriores. Una tarea diaria que se perdió seis días corre una vez al despertar, aunque sean las 11 de la noche. Además, cada tarea sale unos minutos después de su hora, siempre con el mismo retraso, para repartir el tráfico.
Solución: si la hora importa, pon la condición en el prompt:
Revisa solo los commits de hoy. Si son más de las 17:00, no hagas la revisión:
resume lo que se quedó sin revisar y para.
Los tres de un vistazo
| Síntoma | Causa | Solución |
|---|---|---|
| Sesión abierta y parada | Permiso sin aprobar en modo Manual | Run now y "always allow" a cada permiso |
| No hay ejecución | Dormido, ejecución anterior en marcha u otras tareas corriendo | Review history; Keep computer awake o Remote |
| Sale a deshoras | Una ejecución de recuperación al despertar | Condición de hora en el prompt |
Dónde se guarda la tarea
Cada tarea local es un archivo ~/.claude/scheduled-tasks/<nombre>/SKILL.md, con name y description en el frontmatter y el prompt como cuerpo. Los cambios valen desde la siguiente ejecución. La programación, la carpeta, el modelo y si está activa no están en ese archivo: se cambian en Edit o pidiéndoselo a Claude. Al borrar la tarea, marca Also delete files on disk si quieres que desaparezca también el archivo. Cuando la borré pidiéndoselo a Claude, el SKILL.md se quedó en el disco.
Documentación oficial: Schedule recurring tasks in Claude Code Desktop
Requisitos
- Claude Desktop 1.1.5368 o posterior para las tareas locales, según la documentación. Probado en la app de escritorio con Claude Code v2.1.282 el 27 de septiembre de 2026.