Skip to main content
Les tâches planifiées permettent à Claude de réexécuter automatiquement un prompt à intervalles réguliers. Utilisez-les pour interroger un déploiement, surveiller une PR, vérifier une compilation longue ou vous rappeler de faire quelque chose plus tard dans la session. Pour réagir aux événements au fur et à mesure qu’ils se produisent au lieu d’interroger, consultez Channels : votre CI peut pousser l’échec directement dans la session. Pour maintenir la session en fonctionnement tour après tour jusqu’à ce qu’une condition soit remplie plutôt que sur un intervalle, consultez /goal. Les tâches sont limitées à la session. Lorsque vous reprenez avec --resume ou --continue, Claude Code restaure les tâches qui n’ont pas expiré, à l’exception de celles énumérées sous Limitations. Pour une planification qui survit indépendamment de toute session, utilisez Routines pour créer une routine sur le cloud, configurez une Tâche planifiée sur le bureau ou utilisez GitHub Actions.

Comparer les options de planification

Claude Code offre trois façons de planifier des tâches récurrentes ou ponctuelles :
Utilisez les tâches cloud pour les travaux qui doivent s’exécuter de manière fiable sans votre machine. Utilisez les tâches Desktop lorsque vous avez besoin d’accès aux fichiers et outils locaux. Utilisez /loop pour un sondage rapide pendant une session.

Exécuter un prompt de manière répétée avec /loop

La compétence groupée /loop est le moyen le plus rapide d’exécuter un prompt de manière répétée pendant que la session reste ouverte. L’intervalle et le prompt sont tous deux optionnels, et ce que vous fournissez détermine le comportement de la boucle. Vous pouvez également passer une compétence en tant que prompt, par exemple /loop 20m /review-pr 1234, pour réexécuter cette compétence à chaque itération. Un déclenchement planifié n’exécute que les compétences que Claude est autorisé à invoquer de lui-même. Les éléments suivants parviennent à Claude sous forme de texte brut au lieu de s’exécuter :

Exécuter selon un intervalle fixe

Lorsque vous fournissez un intervalle, Claude le convertit en expression cron, planifie la tâche et confirme la cadence et l’ID de la tâche.
L’intervalle peut précéder le prompt en tant que jeton nu comme 30m, ou le suivre en tant que clause comme every 2 hours. Les unités prises en charge sont s pour les secondes, m pour les minutes, h pour les heures et d pour les jours. Les secondes sont arrondies à la minute la plus proche puisque cron a une granularité d’une minute. Les intervalles qui ne correspondent pas à une étape cron propre, comme 7m ou 90m, sont arrondis à l’intervalle le plus proche et Claude vous indique ce qu’il a choisi.

Laisser Claude choisir l’intervalle

Lorsque vous omettez l’intervalle, Claude en choisit un dynamiquement au lieu de s’exécuter selon un calendrier cron fixe. Après chaque itération, il choisit un délai entre une minute et une heure en fonction de ce qu’il a observé : des attentes courtes pendant qu’une compilation se termine ou qu’une PR est active, des attentes plus longues quand rien n’est en attente. Le délai choisi et la raison de ce choix sont imprimés à la fin de chaque itération. L’exemple ci-dessous vérifie CI et les commentaires d’examen, Claude attendant plus longtemps entre les itérations une fois que la PR devient silencieuse :
Dans une session où l’outil Monitor est disponible, Claude peut l’utiliser directement lorsque vous demandez un calendrier /loop dynamique. Monitor exécute un script en arrière-plan et diffuse chaque ligne de sortie, ce qui évite complètement l’interrogation et est souvent plus efficace en termes de jetons et plus réactif que de réexécuter un prompt à intervalles réguliers. Une boucle planifiée dynamiquement apparaît dans votre liste de tâches planifiées comme n’importe quelle autre tâche, vous pouvez donc la lister ou l’annuler de la même manière. La liste affiche son réveil en attente sous forme de tâche ponctuelle, de sorte qu’un réveil planifié pour :00 ou :30 peut s’exécuter un peu en avance. L’expiration de sept jours s’applique également à la boucle.
Les intervalles choisis dynamiquement et le prompt de maintenance intégré fonctionnent sur tous les fournisseurs, et avec récupération de drapeau de fonctionnalité désactivée. Sur Amazon Bedrock, Claude Platform on AWS, Google Cloud’s Agent Platform et Microsoft Foundry, ou avec récupération désactivée, les deux nécessitent Claude Code v2.1.248 ou ultérieur.

Exécuter le prompt de maintenance intégré

Lorsque vous omettez le prompt, Claude utilise un prompt de maintenance intégré au lieu d’un que vous fournissez. À chaque itération, il travaille sur les éléments suivants, dans l’ordre :
  • continuer tout travail inachevé de la conversation
  • s’occuper de la demande de fusion de la branche actuelle : examiner les commentaires, les exécutions CI échouées, les conflits de fusion
  • exécuter des passes de nettoyage telles que la chasse aux bogues ou la simplification quand rien d’autre n’est en attente
Claude ne lance pas de nouvelles initiatives en dehors de cette portée, et les actions irréversibles telles que pousser ou supprimer ne procèdent que lorsqu’elles continuent quelque chose que la transcription a déjà autorisé.
Un /loop nu exécute ce prompt à un intervalle choisi dynamiquement. Ajoutez un intervalle, par exemple /loop 15m, pour l’exécuter selon un calendrier fixe à la place. Pour remplacer le prompt intégré par le vôtre, consultez Personnaliser le prompt par défaut avec loop.md.

Personnaliser le prompt par défaut avec loop.md

Créez un fichier loop.md pour remplacer le prompt de maintenance intégré par vos propres instructions. Il définit un seul prompt par défaut pour un /loop nu, pas une liste de tâches planifiées séparées, et Claude Code l’ignore chaque fois que vous fournissez un prompt sur la ligne de commande. Pour planifier des prompts supplémentaires à côté de celui-ci, utilisez /loop <prompt> ou demandez directement à Claude. Claude recherche le fichier dans deux emplacements et utilise le premier qu’il trouve. Le fichier est du Markdown simple sans structure requise. Écrivez-le comme si vous tapiez le prompt /loop directement. L’exemple suivant maintient une branche de version saine :
.claude/loop.md
Les modifications apportées à loop.md prennent effet à la prochaine itération, vous pouvez donc affiner les instructions pendant qu’une boucle s’exécute. Quand aucun loop.md n’existe dans l’un ou l’autre emplacement, la boucle revient au prompt de maintenance intégré. Gardez le fichier concis : le contenu au-delà de 25 000 octets est tronqué.

Arrêter une boucle

Pour arrêter un /loop autonome pendant qu’il attend la prochaine itération, appuyez sur Esc. Cela efface le réveil en attente afin que la boucle ne se déclenche pas à nouveau. Les tâches que vous avez planifiées en demandant directement à Claude ne sont pas affectées par Esc et restent en place jusqu’à ce que vous les supprimiez. En mode autonome, Claude peut également terminer la boucle de lui-même une fois que la tâche est terminée. Claude appelle l’outil ScheduleWakeup avec stop: true, ce qui annule le réveil en attente immédiatement. Si une itération se termine sans reprogrammer ni arrêter, Claude Code planifie un réveil de secours environ 20 minutes plus tard et termine la boucle quand cette itération ne reprogramme pas non plus. Les boucles selon un intervalle fixe continuent de s’exécuter jusqu’à ce que vous les annuliez comme n’importe quelle autre tâche planifiée ou que sept jours s’écoulent.

Définir un rappel ponctuel

Pour les rappels ponctuels, décrivez ce que vous voulez en langage naturel au lieu d’utiliser /loop. Claude planifie une tâche à usage unique qui se supprime après son exécution.
Claude épingle l’heure d’exécution à une minute et une heure spécifiques en utilisant une expression cron et confirme quand elle s’exécutera.

Gérer les tâches planifiées

Demandez à Claude en langage naturel de lister ou d’annuler les tâches, ou référencez directement les outils sous-jacents.
Voici les outils sous-jacents que Claude utilise : Chaque tâche planifiée a un ID de 8 caractères que vous pouvez passer à CronDelete. Une session peut contenir jusqu’à 50 tâches planifiées à la fois.