← Claude Code Hub
May 6, 2026 · 7 min de lectura ✦ Tip #062

Tareas programadas en Claude Code (antes Routines): tu agente sigue trabajando con el portátil cerrado

Cierras el portátil y tu agente Claude Code sigue corriendo. Cron, GitHub events, webhooks externos: cualquiera de los tres puede disparar una sesión completa que haga su trabajo, abra PRs, te postee en Slack — todo sin que tú tengas que estar.

Diagrama de las tareas programadas (antes Routines) en Claude Code: 3 triggers (Schedule, GitHub event, API webhook) disparan una sesión cloud que ejecuta el prompt y devuelve outcomes (PR comments, Slack post, draft PR fix) — todo con el portátil cerrado

TL;DR Una tarea programada (scheduled task, antes Routine) es un Claude Code guardado (prompt + repos + connectors MCP) con uno o más triggers: cron, GitHub event, o un endpoint HTTP que cualquier sistema puede pegar. Anthropic la ejecuta en su cloud, así que sigue funcionando con tu Mac cerrado. Disponible en planes Pro / Max / Ultra / Team / Enterprise con Claude Code on the web habilitado. Es una de las cuatro formas de mandar Claude Code a background — junto con Agent View, headless y /loop — y la única que sobrevive a apagar la máquina; el mapa completo las coloca a las cuatro en una tabla de decisión.

Actualización, 1 de noviembre de 2026: Anthropic ha renombrado las Routines a tareas programadas (scheduled tasks), disponibles también en el plan Ultra, y un trigger de GitHub ya se puede añadir desde el CLI (v2.1.225+). Claude pushea a una rama claude/ salvo que tu prompt le indique otra, y a qué ramas puede pushear lo deciden tus branch protection rules o rulesets de GitHub.

Actualización, 31 de octubre de 2026: Las routines ya no tienen un límite diario propio de runs incluidas: cada run cuenta contra tus límites de uso normales de la suscripción, y el indicador de runs incluidas ha desaparecido.

/loop hace que Claude vigile algo dentro de tu sesión activa, pero muere cuando cierras el terminal. Monitor reacciona a eventos en stdout, pero también vive y muere con la sesión. Las tareas programadas son el escalón de arriba: llevan ese mismo patrón de "Claude trabaja por mí" al cloud de Anthropic, donde no depende de que tu portátil esté encendido ni de que el terminal esté abierto. Si quieres ver dónde encajan junto a /loop, Monitor y Channels, hay un mapa que lo coloca todo en una matriz 2×3.

Anthropic las lanzó como Routines en v2.1.105+ (Week 16, abril 2026) y aún están en research preview — el endpoint API ship bajo header beta experimental-cc-routine-2026-04-01.

Qué es exactamente una tarea programada

Anthropic las llamaba Routines, y el nombre sigue a la vista en varios sitios: la URL claude.ai/code/routines, el alias /routines de /schedule, las respuestas de Claude al crear una, el endpoint /fire con su beta header y, en algunas cuentas, la propia barra lateral. Todo es la misma función.

Tres piezas + uno o más disparadores:

  1. Prompt: las instrucciones que Claude ejecuta cada vez que se dispara la tarea (autónoma — sin permission prompts en mitad de la run)
  2. Repos: uno o más repositorios de GitHub que Claude clona en cada run; pushea a una rama con prefijo claude/ salvo que tu prompt le indique otra
  3. Connectors: tus MCP conectados (Slack, Linear, Sentry, etc.) — Claude puede usar cualquier tool de los connectors incluidos sin pedir permiso
  4. Triggers: cuándo arranca la tarea. Una misma tarea puede combinar varios.

Cada disparo crea una sesión Claude Code completa en VMs de Anthropic. Te aparece en tu lista de sesiones (web, Desktop, CLI) como una más. Puedes abrirla a posteriori, ver lo que hizo, revisar diffs, abrir PR. Si necesitas que corra en tu máquina, con tus archivos, eso es una tarea Local de Desktop, que tiene sus propios fallos.

Cada tarea programada corre en un entorno en la nube, el mismo tipo que creas desde Claude Code Desktop.

Los 3 tipos de trigger

1. Schedule trigger — cron en el cloud

# Desde el CLI:
> /schedule daily PR review at 9am

# O desde web/Desktop: presets (hourly, daily, weekdays, weekly)
# o cron expression custom (mínimo: cada 1 hora)

Las horas se interpretan en tu timezone local. Hay un stagger automático de pocos minutos para no saturar la API. Ya no hay un cap diario de runs: tanto las recurrentes como las one-off ("recuérdame en 2 semanas") cuentan contra tus límites de uso normales, y comparten un tope de 100 runs programadas por hora en tu cuenta.

2. GitHub event trigger — reacciona a PRs y releases

Se configura desde la web o pidiéndoselo a Claude en el CLI, que necesita Claude Code v2.1.225 o posterior (por ejemplo, /schedule add a GitHub trigger to my nightly review for pull requests opened in acme/webapp). Eventos soportados: pull_request.* y release.*. Filtros disponibles: autor, base/head branch, labels, título, regex.

# Ejemplo: solo PRs ready-for-review tocando el módulo auth
event: pull_request.opened
filter: is_draft = false AND head_branch contains "auth-"

Requiere instalar la Claude GitHub App en el repo, lo configures desde donde lo configures (no basta /web-setup, que solo da permisos para clonar). La web te la ofrece si falta; desde el CLI, instálala antes en su página de GitHub.

3. API trigger — webhook único por tarea

Cada tarea tiene su /fire endpoint con bearer token único. Cualquier sistema externo puede dispararlo:

curl -X POST https://api.anthropic.com/v1/claude_code/routines/trig_01ABC.../fire \
  -H "Authorization: Bearer sk-ant-oat01-xxxxx" \
  -H "anthropic-beta: experimental-cc-routine-2026-04-01" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{"text": "Sentry alert SEN-4521 fired in prod. Stack trace attached."}'

El text opcional llega a la tarea como contexto literal del run. La respuesta devuelve claude_code_session_id y URL para seguir la run en el navegador en tiempo real.

Las 6 plantillas que da Anthropic

Caso Trigger Qué hace
Mantenimiento de backlog Schedule (entre semana, noches) Lee issues nuevos, etiqueta, asigna owners, postea resumen en Slack
Triaje de alertas API Sentry/Datadog dispara con stack trace → Claude correla con commits y abre draft PR con fix propuesto
Code review a tu medida GitHub pull_request.opened Aplica el checklist de tu equipo, deja comments inline de seguridad/perf/estilo
Verificación de deploy API (desde tu CD) Smoke checks tras cada deploy, escanea logs, postea go/no-go al canal de release
Drift de docs Schedule semanal Escanea PRs mergeados, flagea docs que referencian APIs cambiadas, abre PRs de update
Port entre SDKs GitHub pull_request.closed (merged) Cuando se mergea cambio en SDK-A, lo porta a SDK-B y abre PR matching

Resultado

> /schedule daily PR review at 9am

⏺ Routine creada: pr-review-daily
  Trigger: schedule, daily 09:00 (local)
  Repo: juanwmedia/ai-infra
  Connectors: GitHub, Slack
  Push: rama claude/* (salvo que el prompt indique otra)

[Al día siguiente, sin tu Mac encendido]

⏺ Routine ejecutándose en cloud session_01HJK...
  ✓ Cloned juanwmedia/ai-infra
  ✓ 4 PRs abiertos analizados
  ✓ 7 inline comments dejados en PR #421
  ✓ Slack #releases posteado: resumen de revisión

Done in 4m 22s.

Caveats que debes saber antes

  • Research preview: el endpoint /fire y los formats pueden cambiar; dos versiones del beta header conviven a la vez para dar tiempo de migrar
  • Las tareas programadas son personales, no del equipo: lo que hagan aparece como tú (commits, comments, mensajes de Slack)
  • Sin cap diario propio: las runs cuentan contra tus límites de uso normales, como una sesión interactiva; ver consumo en claude.ai/settings/usage. Aparte, cada forma de arrancar una run tiene su límite por hora
  • GitHub triggers tienen cap horario por tarea y por cuenta durante la preview
  • Ramas: Claude pushea a una rama claude/* salvo que tu prompt le indique otra. Lo que limita a qué ramas puede pushear son tus branch protection rules o rulesets en GitHub, aplicados al acceso de GitHub que conectaste: una regla que ese acceso puede saltarse no bloquea el push
  • El /fire body es texto opaco: si mandas JSON, llega como string literal al prompt
  • Min interval recurring: 1 hora. Cron expressions más rápidos se rechazan
  • Solo planes Pro / Max / Ultra / Team / Enterprise con Claude Code on the web habilitado

Referencia

Aspecto Detalle
Versión mínima Claude Code v2.1.105 (v2.1.225 para añadir un GitHub trigger desde el CLI)
Crear desde claude.ai/code/routines, Desktop app, o /schedule (alias /routines) en CLI
Triggers Schedule (cron), GitHub event, API HTTP
Beta header experimental-cc-routine-2026-04-01 (solo /fire)
Min interval 1 hora (recurring); one-off ilimitado
Ramas claude/* salvo que el prompt indique otra; el límite lo ponen tus branch protection rules o rulesets en GitHub
Connectors Tus MCP conectados, configurables por tarea
Pricing Cuenta contra tu subscription usage normal
Pairs con /loop (su cousin intra-sesión), Monitor (eventos dentro de la sesión). Mapa de las 6 primitivas: autonomous map. Mapa de los 4 mecanismos background (con Agent View y headless): background agents map

Documentación oficial: Automate work with scheduled tasks

¿Te ha servido? Haz que wmedia.es te salga antes en Google.

Añadir wmedia.es como fuente preferida en Google
GUÍA GRATUITA

No necesitas Opus siempre.

Modelo y effort son dos ajustes, no uno. 8 páginas con la configuración que de verdad mueve la factura, el diagnóstico en tres preguntas cuando algo falla y la escalera de precios.

  • 1. Qué es «mejor» capacidad, tiempo y dinero
  • 2. Modelo a quién mandas
  • 3. Effort cuánta cuerda le das
  • 4. Diagnóstico tres preguntas cuando algo falla
  • 5. La factura por dónde llega
¿Eres desarrollador/a Web profesional?

Te llega por email · Te unes a la newsletter Gravitas · Cancela cuando quieras

Deja de pagar de más en Claude Code
GUÍA GRATUITA

No necesitas Opus siempre.

¿Eres desarrollador/a Web profesional? · Cancela cuando quieras
Workshop para equipos

Multiplica el output de tu equipo sin sacrificar calidad: workshop AI First de 6 a 8 horas, online, sobre la plataforma Claude.

Ver el workshop

¿Usas Opus para todo? Mira cuándo no hace falta.