Documentation Index
Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Les tâches planifiées nécessitent Claude Code v2.1.72 ou version ultérieure. Vérifiez votre version avec
claude --version./goal.
Les tâches sont limitées à la session : elles vivent dans la conversation actuelle et s’arrêtent quand vous en commencez une nouvelle. La reprise avec --resume ou --continue ramène toute tâche qui n’a pas expiré : une tâche récurrente créée au cours des 7 derniers jours, ou une tâche ponctuelle dont l’heure planifiée n’a pas encore passé. Pour une planification qui survit indépendamment de toute session, utilisez Routines, Tâches planifiées sur le bureau ou GitHub Actions.
Comparer les options de planification
Claude Code offers three ways to schedule recurring or one-off work:| Cloud | Desktop | /loop | |
|---|---|---|---|
| Runs on | Anthropic cloud | Your machine | Your machine |
| Requires machine on | No | Yes | Yes |
| Requires open session | No | No | Yes |
| Persistent across restarts | Yes | Yes | Restored on --resume if unexpired |
| Access to local files | No (fresh clone) | Yes | Yes |
| MCP servers | Connectors configured per task | Config files and connectors | Inherits from session |
| Permission prompts | No (runs autonomously) | Configurable per task | Inherits from session |
| Customizable schedule | Via /schedule in the CLI | Yes | Yes |
| Minimum interval | 1 hour | 1 minute | 1 minute |
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.
| Ce que vous fournissez | Exemple | Ce qui se passe |
|---|---|---|
| Intervalle et prompt | /loop 5m check the deploy | Votre prompt s’exécute selon un calendrier fixe |
| Prompt uniquement | /loop check the deploy | Votre prompt s’exécute à un intervalle choisi par Claude à chaque itération |
| Intervalle uniquement, ou rien | /loop | Le prompt de maintenance intégré s’exécute, ou votre loop.md s’il en existe un |
/loop 20m /review-pr 1234, pour réexécuter un flux de travail empaqueté à chaque itération.
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.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 :/loop dynamique, Claude peut utiliser l’outil Monitor directement. 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. Les règles de gigue ne s’appliquent pas à elle, mais l’expiration de sept jours s’applique : la boucle se termine automatiquement sept jours après son démarrage.
Sur Bedrock, Vertex AI et Microsoft Foundry, un prompt sans intervalle s’exécute selon un calendrier fixe de 10 minutes à la place.
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
/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.
Sur Bedrock, Vertex AI et Microsoft Foundry,
/loop sans prompt imprime le message d’utilisation au lieu de démarrer la boucle de maintenance.Personnaliser le prompt par défaut avec loop.md
Un fichierloop.md remplace 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 est ignoré 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.
| Chemin | Portée |
|---|---|
.claude/loop.md | Au niveau du projet. Prend la priorité quand les deux fichiers existent. |
~/.claude/loop.md | Au niveau de l’utilisateur. S’applique dans tout projet qui ne définit pas le sien. |
/loop directement. L’exemple suivant maintient une branche de version saine :
.claude/loop.md
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 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 en ne planifiant pas le prochain réveil une fois que la tâche est manifestement terminée. Les boucles selon un intervalle fixe continuent de s’exécuter jusqu’à ce que vous les arrêtiez 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.
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.| Outil | Objectif |
|---|---|
CronCreate | Planifier une nouvelle tâche. Accepte une expression cron à 5 champs, le prompt à exécuter et si elle est récurrente ou s’exécute une seule fois. |
CronList | Lister toutes les tâches planifiées avec leurs ID, leurs calendriers et leurs prompts. |
CronDelete | Annuler une tâche par ID. |
CronDelete. Une session peut contenir jusqu’à 50 tâches planifiées à la fois.
Comment les tâches planifiées s’exécutent
Le planificateur vérifie chaque seconde les tâches dues et les met en file d’attente à faible priorité. Un prompt planifié s’exécute entre vos tours, pas pendant que Claude répond. Si Claude est occupé quand une tâche arrive à échéance, le prompt attend la fin du tour actuel. Tous les horaires sont interprétés dans votre fuseau horaire local. Une expression cron comme0 9 * * * signifie 9h là où vous exécutez Claude Code, pas UTC.
Gigue
Pour éviter que chaque session ne frappe l’API au même moment mural, le planificateur ajoute un petit décalage déterministe aux heures d’exécution :- Les tâches récurrentes s’exécutent jusqu’à 30 minutes après l’heure planifiée (ou jusqu’à la moitié de l’intervalle, pour les tâches qui s’exécutent plus souvent qu’une fois par heure). Une tâche horaire planifiée pour
:00peut s’exécuter n’importe où jusqu’à:30. - Les tâches ponctuelles planifiées pour le haut ou le bas de l’heure s’exécutent jusqu’à 90 secondes plus tôt.
:00 ou :30, par exemple 3 9 * * * au lieu de 0 9 * * *, et la gigue ponctuelle ne s’appliquera pas.
Expiration de sept jours
Les tâches récurrentes expirent automatiquement 7 jours après leur création. La tâche s’exécute une dernière fois, puis se supprime. Cela limite la durée pendant laquelle une boucle oubliée peut s’exécuter. Si vous avez besoin qu’une tâche récurrente dure plus longtemps, annulez et recréez-la avant son expiration, ou utilisez Routines ou Tâches planifiées sur le bureau pour une planification durable.Référence d’expression cron
CronCreate accepte les expressions cron standard à 5 champs : minute heure jour-du-mois mois jour-de-la-semaine. Tous les champs prennent en charge les caractères génériques (*), les valeurs uniques (5), les étapes (*/15), les plages (1-5) et les listes séparées par des virgules (1,15,30).
| Exemple | Signification |
|---|---|
*/5 * * * * | Toutes les 5 minutes |
0 * * * * | Chaque heure à l’heure pile |
7 * * * * | Chaque heure à 7 minutes passées |
0 9 * * * | Chaque jour à 9h local |
0 9 * * 1-5 | Jours de semaine à 9h local |
30 14 15 3 * | 15 mars à 14h30 local |
0 ou 7 pour dimanche jusqu’à 6 pour samedi. La syntaxe étendue comme L, W, ? et les alias de noms tels que MON ou JAN ne sont pas pris en charge.
Lorsque le jour du mois et le jour de la semaine sont tous deux contraints, une date correspond si l’un ou l’autre champ correspond. Cela suit la sémantique standard de vixie-cron.
Désactiver les tâches planifiées
DéfinissezCLAUDE_CODE_DISABLE_CRON=1 dans votre environnement pour désactiver complètement le planificateur. Les outils cron et /loop deviennent indisponibles, et toutes les tâches déjà planifiées cessent de s’exécuter. Consultez Variables d’environnement pour la liste complète des drapeaux de désactivation.
Limitations
La planification limitée à la session a des contraintes inhérentes :- Les tâches ne s’exécutent que pendant que Claude Code s’exécute et est inactif. Fermer le terminal ou laisser la session se terminer arrête leur exécution.
- Pas de rattrapage pour les exécutions manquées. Si l’heure planifiée d’une tâche passe pendant que Claude est occupé par une demande longue, elle s’exécute une fois quand Claude devient inactif, pas une fois par intervalle manqué.
- Démarrer une nouvelle conversation efface toutes les tâches limitées à la session. La reprise avec
claude --resumeouclaude --continuerestaure les tâches qui n’ont pas expiré : les tâches récurrentes dans les sept jours suivant leur création, et les tâches ponctuelles dont l’heure planifiée n’a pas encore passé. Les tâches Bash en arrière-plan et les tâches de surveillance ne sont jamais restaurées à la reprise.
- Routines : s’exécutent sur l’infrastructure gérée par Anthropic selon un calendrier, via un appel API ou sur des événements GitHub
- GitHub Actions : utilisez un déclencheur
scheduledans CI - Tâches planifiées sur le bureau : s’exécutent localement sur votre machine