Les routines sont en aperçu de recherche. Le comportement, les limites et la surface de l’API peuvent changer.
- Planifiée : s’exécute selon une cadence récurrente comme toutes les heures, chaque nuit ou chaque semaine, ou une seule fois à un moment futur spécifique
- API : se déclenche à la demande en envoyant une requête HTTP POST à un point de terminaison par routine avec un jeton porteur
- GitHub : s’exécute automatiquement en réponse aux événements du référentiel tels que les demandes de tirage ou les versions
/schedule.
Les propriétaires Team et Enterprise peuvent désactiver les routines pour tous les membres avec le bouton bascule Routines sur claude.ai/admin-settings/claude-code. Lorsqu’elles sont désactivées, les routines existantes cessent de s’exécuter et les membres ne peuvent pas en créer de nouvelles.
Cette page couvre la création d’une routine, la configuration de chaque type de déclencheur, la gestion des exécutions et la façon dont les limites d’utilisation s’appliquent.
Exemples de cas d’usage
Chaque exemple associe un type de déclencheur au type de travail pour lequel les routines sont adaptées : sans surveillance, répétable et lié à un résultat clair. Maintenance du carnet de commandes. Un déclencheur de calendrier s’exécute chaque soir en semaine sur votre suivi des problèmes via un connecteur. La routine lit les problèmes ouverts depuis la dernière exécution, applique des étiquettes, assigne les propriétaires en fonction de la zone de code référencée, et publie un résumé sur Slack afin que l’équipe commence la journée avec une file d’attente organisée. Triage des alertes. Votre outil de surveillance appelle le point de terminaison API de la routine lorsqu’un seuil d’erreur est dépassé, en transmettant le corps de l’alerte en tant quetext. La routine extrait la trace de pile, la met en corrélation avec les commits récents du référentiel, et ouvre une demande de tirage brouillon avec un correctif proposé et un lien vers l’alerte. L’équipe d’astreinte examine la PR au lieu de commencer à partir d’un terminal vierge.
Examen du code sur mesure. Un déclencheur GitHub s’exécute sur pull_request.opened. La routine applique la liste de contrôle d’examen de votre équipe, laisse des commentaires en ligne pour les problèmes de sécurité, de performance et de style, et ajoute un commentaire récapitulatif afin que les examinateurs humains puissent se concentrer sur la conception plutôt que sur les vérifications mécaniques.
Vérification du déploiement. Votre pipeline CD appelle le point de terminaison API de la routine après chaque déploiement en production. La routine exécute des vérifications de fumée sur la nouvelle version, analyse les journaux d’erreurs pour détecter les régressions, et publie un feu vert ou un feu rouge sur le canal de version avant la fermeture de la fenêtre de déploiement.
Dérive de la documentation. Un déclencheur de calendrier s’exécute chaque semaine. La routine analyse les PR fusionnées depuis la dernière exécution, signale la documentation qui référence les API modifiées, et ouvre des PR de mise à jour par rapport au référentiel de documentation pour qu’un éditeur les examine.
Portage de bibliothèque. Un déclencheur GitHub s’exécute sur pull_request.closed filtré pour les PR fusionnées dans un référentiel SDK. La routine porte la modification vers un SDK parallèle dans une autre langue et ouvre une PR correspondante, en gardant les deux bibliothèques synchronisées sans qu’un humain ne réimplémente chaque modification.
Créer une routine
Créez une routine à partir du web sur claude.ai/code/routines, à partir de l’application de bureau, ou à partir de la CLI. Les trois surfaces écrivent dans le même compte cloud, de sorte qu’une routine que vous créez dans l’une d’elles apparaît immédiatement dans les autres. Dans l’onglet Code de l’application de bureau, cliquez sur Routines dans la barre latérale ou dans le menu More de la barre latérale, puis sur New routine, et choisissez Cloud ; choisir Local à la place crée une tâche planifiée de bureau, qui s’exécute sur votre machine plutôt que dans le cloud. Le formulaire de création configure l’invite de la routine, les référentiels, l’environnement, les connecteurs et les déclencheurs. Les routines s’exécutent de manière autonome en tant que sessions cloud Claude Code complètes : il n’y a pas de sélecteur de mode de permission, et la session exécute des commandes shell, utilise des skills commités dans le dépôt cloné, et appelle tous les connecteurs que vous incluez, le tout sans s’arrêter pour approbation en dehors de certaines actions sur les artefacts. Ce qu’une routine peut atteindre est déterminé par les référentiels que vous sélectionnez, l’accès réseau et les variables de l’environnement, et les connecteurs que vous incluez. Limitez chacun de ces éléments à ce dont la routine a réellement besoin. Les routines appartiennent à votre compte claude.ai individuel. Elles ne sont pas partagées avec les coéquipiers, et leurs exécutions comptent dans l’utilisation et les limites de votre compte. Tout ce qu’une routine fait via votre identité GitHub connectée ou les connecteurs apparaît comme vous : les commits et les demandes de tirage portent votre utilisateur GitHub, et les messages Slack, les tickets Linear ou d’autres actions de connecteur utilisent vos comptes liés pour ces services.Créer à partir du web
1
Ouvrir le formulaire de création
Visitez claude.ai/code/routines et cliquez sur New routine.
2
Nommer la routine et écrire l'invite
Donnez à la routine un nom descriptif et écrivez l’invite que Claude exécute à chaque fois. L’invite est la partie la plus importante : la routine s’exécute de manière autonome, donc l’invite doit être autonome et explicite sur ce qu’il faut faire et à quoi ressemble le succès.Quand un déclencheur se déclenche, la session reçoit l’invite sauvegardée de la routine comme sa tâche assignée et l’exécute, plutôt que de la traiter comme du contenu non fiable qui est arrivé au milieu d’une conversation. Le déclencheur atteste seulement que l’invite a été stockée à l’avance par une session autorisée sur votre compte, donc l’invite déclenchée n’est pas une entrée utilisateur en direct et ne peut pas agir comme approbation ou consentement pour les actions pendant l’exécution. Le contenu que la session récupère pendant l’exécution conserve sa gestion normale. Avant la v2.1.213, la session recevait la même invite encadrée comme une notification de fond non fiable et pouvait refuser d’agir dessus.L’entrée d’invite inclut un sélecteur de modèle. Claude utilise le modèle sélectionné à chaque exécution.
3
Sélectionner les dépôts
Ajoutez un ou plusieurs dépôts GitHub pour que Claude y travaille. Chaque dépôt est cloné au début d’une exécution. Claude crée des branches préfixées par
claude/ pour ses modifications.4
Sélectionner un environnement
Choisissez un environnement cloud pour la routine. Les environnements contrôlent ce à quoi la session cloud a accès :
- Network access : définissez le niveau d’accès à Internet disponible pendant chaque exécution
- Environment variables : fournissez des valeurs que Claude peut utiliser pendant chaque exécution. Elles sont visibles à quiconque utilise l’environnement, donc dans un environnement hébergé par Anthropic, stockez plutôt les clés pour les API que Claude appelle pendant une exécution en tant que secrets réseau. Cette section liste également les requêtes qui ne reçoivent jamais de secret
- Setup script : installez les dépendances et les outils dont la routine a besoin. Le résultat est mis en cache, de sorte que le script ne se réexécute pas à chaque session
5
Sélectionner un déclencheur
Sous Select a trigger, choisissez comment la routine démarre. Vous pouvez choisir un type de déclencheur ou en combiner plusieurs.
- Schedule
- GitHub event
- API
Choisissez une fréquence prédéfinie pour une exécution récurrente, ou planifiez une exécution unique à un moment précis. Consultez Add a schedule trigger pour la gestion des fuseaux horaires, l’échelonnement, les intervalles cron personnalisés et les exécutions uniques.
6
Examiner les connecteurs
Sous Connectors en bas du formulaire, tous vos connecteurs MCP connectés sont inclus par défaut. Supprimez tous ceux dont la routine n’a pas besoin : Claude peut utiliser tous les outils d’un connecteur inclus, y compris les écritures, sans demander de permission pendant une exécution.
7
Créer la routine
Cliquez sur Create. La routine apparaît dans la liste et s’exécute la prochaine fois que l’un de ses déclencheurs correspond. Pour démarrer une exécution immédiatement, cliquez sur Run now sur la page de détail de la routine.Chaque exécution crée une nouvelle session aux côtés de vos autres sessions, où vous pouvez voir ce que Claude a fait, examiner les modifications et créer une demande de tirage.
Créer à partir de la CLI
Exécutez/schedule dans n’importe quelle session pour créer une routine planifiée de manière conversationnelle. Vous pouvez également transmettre une description directement, pour une routine récurrente comme /schedule daily PR review at 9am ou une exécution unique comme /schedule clean up feature flag in one week. Claude parcourt les mêmes informations que le formulaire web collecte, puis enregistre la routine sur votre compte. La commande est également disponible sous l’alias /routines.
Une exécution réussie ressemble à une conversation : Claude pose des questions de suivi sur l’horaire, les référentiels et l’invite avant d’enregistrer. Si Claude répond plutôt que vous devez vous authentifier ou qu’il ne peut pas se connecter à votre compte claude.ai distant, aucune routine n’a été créée ; consultez Troubleshooting.
/schedule dans la CLI crée des routines planifiées. Pour ajouter un déclencheur API, modifiez la routine sur le web sur claude.ai/code/routines. Vous pouvez ajouter un déclencheur GitHub à partir du web ou à partir de la CLI. Le chemin CLI nécessite Claude Code v2.1.225 ou ultérieur.
Une routine sans déclencheur de planification, comme une routine démarrée uniquement par des appels API ou des événements GitHub, n’a pas de prochain temps d’exécution, et la CLI n’en affiche aucun quand Claude l’enregistre ou la met à jour. Avant la v2.1.211, la CLI signalait un prochain temps d’exécution dans l’année 1 pour ces routines.
Configurer les déclencheurs
Une routine démarre lorsque l’un de ses déclencheurs correspond. Vous pouvez attacher n’importe quelle combinaison de déclencheurs de calendrier, API et GitHub à la même routine, et les ajouter ou les supprimer à tout moment à partir de la section Select a trigger du formulaire d’édition de la routine.Ajouter un déclencheur de calendrier
Un déclencheur de calendrier exécute la routine selon une cadence récurrente, ou une seule fois à un moment futur spécifique. Choisissez une fréquence prédéfinie dans la section Select a trigger : toutes les heures, quotidienne, les jours de semaine ou hebdomadaire. Les heures sont entrées dans votre fuseau horaire local et converties automatiquement, de sorte que la routine s’exécute à cette heure murale indépendamment de l’endroit où se trouve l’infrastructure cloud. Si vous planifiez une exécution exactement à l’heure, par exemple 9:00, elle peut démarrer plusieurs minutes en retard. Pour démarrer près de l’heure planifiée, choisissez quelques minutes après l’heure, par exemple 9:07. Pour un intervalle personnalisé tel que toutes les deux heures ou le premier de chaque mois, choisissez la prédéfinie la plus proche dans le formulaire, puis exécutez/schedule update dans la CLI pour définir une expression cron spécifique. L’intervalle minimum est d’une heure ; les expressions qui s’exécutent plus fréquemment sont rejetées.
Planifier une exécution unique
Une exécution unique planifiée déclenche la routine une seule fois à un horodatage spécifique. Utilisez-la pour vous rappeler plus tard dans la semaine, pour ouvrir une PR de nettoyage après la fin d’un déploiement, ou pour lancer une tâche de suivi lorsqu’une modification en amont arrive. Après le déclenchement de la routine, elle se désactive automatiquement et l’interface utilisateur web la marque comme Ran. Pour l’exécuter à nouveau, modifiez la routine et définissez une nouvelle heure unique. Créez une exécution unique à partir de la CLI en décrivant l’heure en langage naturel. Claude résout la phrase par rapport à l’heure actuelle et confirme l’horodatage absolu avant d’enregistrer.Ajouter un déclencheur API
Un déclencheur API donne à une routine un point de terminaison HTTP dédié. POSTer sur le point de terminaison avec le jeton porteur de la routine démarre une nouvelle session et retourne une URL de session. Utilisez ceci pour intégrer Claude Code dans les systèmes d’alerte, les pipelines de déploiement, les outils internes ou n’importe où vous pouvez faire une requête HTTP authentifiée. Les déclencheurs API sont ajoutés à une routine existante à partir du web. La CLI ne peut actuellement pas créer, régénérer ou supprimer des jetons.1
Ouvrir la routine pour l'édition
Allez sur claude.ai/code/routines, cliquez sur la routine que vous souhaitez déclencher via API, puis ouvrez le menu à côté du nom de la routine et sélectionnez Edit.
2
Ajouter un déclencheur API
Faites défiler jusqu’à la section Select a trigger sous la boîte Instructions, cliquez sur Add another trigger, et choisissez API.
3
Copier l'URL et générer un jeton
La fenêtre modale affiche l’URL de cette routine ainsi qu’un exemple de commande curl. Copiez l’URL, puis cliquez sur Generate token et copiez le jeton immédiatement. Le jeton est affiché une seule fois et ne peut pas être récupéré ultérieurement, alors stockez-le quelque part de sécurisé comme le magasin de secrets de votre outil d’alerte.
4
Appeler le point de terminaison
Envoyez le jeton dans l’en-tête
Authorization: Bearer lorsque vous POSTez sur l’URL. La section Trigger a routine ci-dessous montre un exemple complet.- Désactiver l’accès API : cliquez sur Delete token, l’icône de corbeille à côté de Regenerate
- Faire tourner le jeton : cliquez sur Regenerate
Déclencher une routine
Envoyez une requête POST au point de terminaison/fire avec le jeton porteur dans l’en-tête Authorization. Le corps de la requête accepte un champ text optionnel pour le contexte spécifique à l’exécution tel qu’un corps d’alerte ou un journal défaillant, transmis à la routine aux côtés de son invite enregistrée. La valeur est du texte libre et n’est pas analysée : si vous envoyez JSON ou une autre charge utile structurée, la routine la reçoit comme une chaîne littérale.
La valeur text n’atteint pas la routine en tant que message nu. Elle arrive enveloppée dans un bloc <routine-fire-payload> qui l’étiquette comme données non fiables et indique à Claude de ne pas suivre les instructions à l’intérieur sauf si l’invite propre de la routine le dit. Le même enveloppement s’applique au texte fourni avec Run now dans l’interface utilisateur web.
Cela signifie que l’invite enregistrée d’une routine doit accepter d’agir sur le texte de déclenchement : écrivez l’invite pour référencer explicitement la charge utile, par exemple « Enquêter sur l’alerte décrite dans le bloc routine-fire-payload », sinon la routine traite le texte comme un contexte inerte. Quiconque détient le jeton porteur peut envoyer text, donc l’enveloppe fait que le texte de déclenchement d’un jeton divulgué arrive étiqueté comme données non fiables plutôt que comme instructions directes à votre routine.
L’exemple ci-dessous déclenche une routine à partir d’un shell. L’ID de routine et le jeton affichés sont des espaces réservés : remplacez-les par l’URL et le jeton que vous avez copiés lors de l’ajout du déclencheur API, sinon la requête échoue avec une erreur d’authentification 401 :
Référence API
Pour la référence API complète, y compris toutes les réponses d’erreur, les règles de validation et les limites de champs, consultez Trigger a routine via API dans la documentation de la plateforme Claude. Le point de terminaison/fire est disponible pour les utilisateurs de claude.ai uniquement et ne fait pas partie de la surface de l’API Claude Platform.
Ajouter un déclencheur GitHub
Un déclencheur GitHub démarre une nouvelle session automatiquement lorsqu’un événement correspondant se produit sur un référentiel connecté. Claude Code ne réutilise pas les sessions entre les événements, de sorte que deux mises à jour de PR produisent deux sessions indépendantes.Les événements webhook GitHub sont soumis à des limites horaires par routine et par compte. Les événements au-delà de la limite sont supprimés jusqu’à la réinitialisation de la fenêtre.
- Configurez les déclencheurs GitHub à partir de l’interface utilisateur web, qui vous invite à installer l’application si elle est manquante. Suivez les étapes ci-dessous pour en configurer une sur le web.
- À partir de la CLI, installez l’application à partir de la page de l’application GitHub d’abord, puis demandez à Claude d’attacher un déclencheur GitHub à une routine existante, par exemple
/schedule add a GitHub trigger to my nightly review for pull requests opened in acme/webapp. Le chemin CLI nécessite Claude Code v2.1.225 ou ultérieur. Lorsque Claude ajoute le déclencheur, il répond avec un lien vers la routine que le déclencheur déclenche.
1
Ouvrir la routine pour l'édition
Allez sur claude.ai/code/routines, cliquez sur la routine, puis ouvrez le menu à côté du nom de la routine et sélectionnez Edit.
2
Ajouter un déclencheur d'événement GitHub
Faites défiler jusqu’à la section Select a trigger, cliquez sur Add another trigger, et choisissez GitHub event.
L’exécution de
/web-setup dans la CLI accorde l’accès au référentiel pour le clonage, mais elle n’installe pas l’application Claude GitHub et n’active pas la livraison des webhooks.3
Configurer le déclencheur
Sélectionnez le référentiel, choisissez un événement dans la liste des événements pris en charge, et ajoutez éventuellement des filtres. Enregistrez le déclencheur.
Événements pris en charge
Les déclencheurs GitHub peuvent s’abonner à l’une des catégories d’événements suivantes. Dans chaque catégorie, vous pouvez choisir une action spécifique, commepull_request.opened, ou réagir à toutes les actions de la catégorie.
Filtrer les demandes de tirage
Utilisez les filtres pour affiner les demandes de tirage qui démarrent une nouvelle session. Toutes les conditions de filtre doivent correspondre pour que la routine se déclenche. Les champs de filtre disponibles sont :
Chaque filtre associe un champ à un opérateur : égal à, contient, commence par, est l’un de, n’est pas l’un de, ou correspond à regex.
L’opérateur
matches regex teste la valeur de champ entière, pas une sous-chaîne à l’intérieur. Pour correspondre à n’importe quel titre contenant hotfix, écrivez .*hotfix.*. Sans le .* environnant, le filtre correspond uniquement à un titre qui est exactement hotfix sans rien avant ou après. Pour la correspondance de sous-chaîne littérale sans syntaxe regex, utilisez l’opérateur contains à la place.
Quelques exemples de combinaisons de filtres :