@claude dans un commentaire de pull request ou d’issue pour que Claude analyse le code, implémente des modifications et pousse des commits. Vous pouvez également donner à la GitHub Action Claude Code un prompt pour s’exécuter automatiquement sur n’importe quel événement GitHub. Utilisez-la pour transformer les issues en pull requests, corriger les bugs à partir d’un commentaire ou automatiser les tâches récurrentes.
Plusieurs produits partagent le nom Claude Code. Cette page couvre l’intégration de workflow claude-code-action, que vous configurez avec des fichiers de workflow dans votre repository. Pour les produits connexes, consultez :
- Code Review : révision automatique sur chaque pull request, sans écrire de workflow
- Claude Code dans le cloud : sessions Claude Code qui s’exécutent sur une infrastructure cloud au lieu de votre machine
- Claude Agent SDK : automatisation personnalisée en dehors de GitHub Actions. La GitHub Action Claude Code est construite sur le SDK
- GitHub Enterprise Server : Claude Code avec GitHub auto-hébergé
Configuration
Vous pouvez configurer la GitHub Action Claude Code de deux manières :- Configuration rapide : exécutez
/install-github-appdepuis Claude Code. Claude Code installe la GitHub App, ajoute votre secret d’authentification et prépare la pull request du workflow pour vous - Configuration manuelle : installez l’application, ajoutez le secret et copiez vous-même le fichier de workflow dans votre dépôt. Choisissez cette option si vous n’exécutez pas Claude Code en local, si la commande échoue ou si vous souhaitez garder un contrôle total sur les fichiers de workflow
Configuration rapide
/install-github-app fonctionne uniquement avec les dépôts github.com. Si le remote Git de votre dépôt se trouve sur gitlab.com ou bitbucket.org, la commande affiche un avertissement et se termine au lieu de lancer la configuration. Pour exécuter Claude Code depuis des pipelines GitLab, consultez Claude Code GitLab CI/CD.
Avant de commencer, installez la GitHub CLI et authentifiez-la avec gh auth login. Claude Code vérifie sa présence et vous avertit si elle est absente.
Ouvrez claude dans le dépôt que vous souhaitez connecter, exécutez /install-github-app et suivez les instructions. Claude Code installe la Claude GitHub App, puis configure un secret d’authentification pour les workflows :
- Si Claude Code dispose déjà d’une clé API, il réutilise cette clé et propose de conserver le secret
ANTHROPIC_API_KEYexistant du dépôt s’il est déjà défini - Sinon, choisissez entre créer un jeton de longue durée avec votre abonnement Claude et coller une clé API
ANTHROPIC_API_KEY pour une clé API ou CLAUDE_CODE_OAUTH_TOKEN pour un jeton d’abonnement.
Claude Code pousse ensuite une branche contenant les fichiers de workflow que vous avez sélectionnés, déjà configurés pour utiliser ce secret, et ouvre GitHub dans votre navigateur avec une pull request prête à être créée. Créez et fusionnez cette pull request, et @claude fonctionne dans le dépôt.
Pour interrompre la configuration en cours de route, appuyez sur Esc. Une étape déjà en cours se termine, et aucune étape suivante ne démarre. Le message de clôture indique ce qui a déjà été effectué dans le dépôt, comme une branche poussée ou un secret enregistré.
Si vous sélectionnez le workflow de revue, Claude publie chaque revue directement sur la pull request, sous forme de commentaire inline pour chaque problème détecté, ou d’un seul commentaire récapitulatif lorsqu’il n’en trouve aucun. Claude ignore certaines pull requests, comme les brouillons. L’exemple de workflow de revue utilise le même skill et les répertorie. Avant la v2.1.229, Claude écrivait sa revue uniquement dans le log d’exécution du workflow.
Pour mettre à jour un workflow de revue généré par une version antérieure, effectuez l’une des opérations suivantes :
- Exécutez à nouveau
/install-github-app. Lorsque le dépôt contient déjà unclaude.yml, sélectionnez Update workflow file with latest version. Claude Code pousse de nouvelles copies des fichiers de workflow vers une nouvelle branche et ouvre la pull request, comme lors d’une première installation. - Ajoutez vous-même l’argument
--commentet la ligneclaude_argsde l’exemple de workflow de revue au fichier versionné, ce qui conserve toutes les autres modifications que vous y avez apportées.
/install-github-app plus tard pour terminer les étapes du workflow et du secret.
- Lorsque vous installez la GitHub App, vous lui accordez plusieurs permissions. Consultez Permissions de la GitHub App pour la liste complète
- La configuration rapide fonctionne avec l’API Claude et les abonnements Claude. Si vous utilisez Amazon Bedrock, Agent Platform de Google Cloud ou Microsoft Foundry, consultez Utiliser les GitHub Actions Claude Code avec des fournisseurs cloud
Configuration manuelle
Pour configurer la GitHub Action Claude Code sans exécuter/install-github-app, installez l’application, ajoutez un secret et copiez vous-même un fichier de workflow :
1
Installer la Claude GitHub App
Installez la Claude GitHub App sur votre dépôt. La GitHub Action Claude Code s’appuie sur trois des permissions de l’application :
- Contents : lecture et écriture, pour que Claude puisse modifier les fichiers du dépôt
- Issues : lecture et écriture, pour que Claude puisse répondre aux issues
- Pull requests : lecture et écriture, pour que Claude puisse créer des PR et pousser des modifications
2
Ajouter un secret d'authentification
Ajoutez l’un des secrets suivants à votre dépôt, selon votre mode d’authentification. Consultez le guide de GitHub sur l’utilisation des secrets dans GitHub Actions.
ANTHROPIC_API_KEY: une clé API Claude issue de la Claude ConsoleCLAUDE_CODE_OAUTH_TOKEN: un jeton OAuth qui s’authentifie avec votre abonnement Claude, disponible avec les forfaits Pro, Max, Ultra, Team et Enterprise. Générez-en un en exécutantclaude setup-tokenen local. Consultez Générer un jeton de longue durée
anthropic_api_key pour une clé API, ou claude_code_oauth_token pour un jeton OAuth.3
Copier le fichier de workflow
Copiez examples/claude.yml dans le répertoire
.github/workflows/ de votre dépôt. Ce fichier est un workflow fonctionnel, pas seulement un exemple. Tel quel, Claude répond chaque fois que quelqu’un mentionne @claude dans une issue ou une pull request, en s’authentifiant avec le secret ANTHROPIC_API_KEY. Si vous avez plutôt ajouté CLAUDE_CODE_OAUTH_TOKEN, remplacez la ligne anthropic_api_key du workflow par claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}.Configurer pour une organisation
Avec la configuration rapide ou manuelle, vous configurez un dépôt à la fois. Pour déployer la GitHub Action Claude Code dans toute une organisation :- Installez une seule fois la Claude GitHub App au niveau de l’organisation, en choisissant tous les dépôts ou une liste sélectionnée
- Stockez le secret d’authentification en tant que secret Actions au niveau de l’organisation, afin que chaque dépôt n’ait pas besoin de sa propre copie
- Ajoutez le fichier de workflow à chaque dépôt qui doit exécuter la GitHub Action Claude Code, ou définissez le job une seule fois en tant que workflow réutilisable appelé par chaque dépôt
claude setup-token.
Pour éviter complètement de stocker un secret de longue durée, authentifiez-vous via la fédération d’identité de charge de travail : la GitHub Action Claude Code échange le jeton GitHub OpenID Connect (OIDC) du workflow contre un accès à l’API Claude via un compte de service de la Claude Console. Définissez ces entrées :
anthropic_federation_rule_id: l’ID de la règle de fédération,fdrl_...anthropic_organization_id: l’ID de votre organisation Anthropicanthropic_service_account_id: l’ID du compte de service,svac_.... Facultatif, car la règle de fédération que vous créez dans la Console cible déjà un compte de serviceanthropic_workspace_id: l’ID de l’espace de travail,wrkspc_.... Facultatif lorsque la règle de fédération cible un seul espace de travail
id-token: write, dont la GitHub Action Claude Code a besoin pour l’échange de fédération, même lorsque vous transmettez votre propre github_token. Consultez le guide de configuration de la GitHub Action Claude Code pour la configuration côté Console.
Pour les questions relatives au traitement et à la conservation des données dans le cadre d’un audit de sécurité, consultez utilisation des données et sécurité.
Désinstaller
Pour supprimer la GitHub Action Claude Code, annulez chaque élément de la configuration qui s’applique à votre installation :- Fichiers de workflow : supprimez de
.github/workflows/les workflows qui utilisentanthropics/claude-code-action. Si vous avez utilisé la configuration rapide, recherchezclaude.ymlet, si vous avez sélectionné le workflow de revue,claude-code-review.yml. Une fois les workflows supprimés, la GitHub Action Claude Code ne s’exécute plus - Secrets : supprimez le secret
ANTHROPIC_API_KEYouCLAUDE_CODE_OAUTH_TOKENdu dépôt, ainsi que des secrets Actions au niveau de l’organisation si vous l’avez partagé entre plusieurs dépôts. Si vous supprimez un secret, les identifiants qu’il contenait restent valides. Pour retirer complètement une clé API, supprimez également la clé dans la Claude Console - GitHub App : désinstallez la Claude GitHub App dans les paramètres de votre dépôt ou de votre organisation, sous GitHub Apps, mais uniquement si vous ne l’utilisez pas pour une autre fonctionnalité de Claude, comme Code Review ou la correction automatique sur le web
AWS_ROLE_TO_ASSUME, les secrets GCP_* ou les secrets AZURE_*, et désinstallez la GitHub App personnalisée ainsi que ses secrets APP_ID et APP_PRIVATE_KEY.
Permissions de la GitHub App
La Claude GitHub App est partagée par toutes les fonctionnalités de Claude qui s’intègrent à GitHub, notamment la GitHub Action Claude Code, Code Review et la correction automatique des pull requests dans les sessions cloud. Une GitHub App possède un ensemble unique de permissions couvrant toutes ses fonctionnalités ; cet ensemble inclut donc certaines permissions que la GitHub Action Claude Code n’utilise pas. Lorsque vous installez l’application, vous accordez les permissions suivantes :
L’ensemble de permissions peut également évoluer avant les fonctionnalités qui l’utilisent. Lorsque l’application demande une permission dont elle ne disposait pas auparavant, GitHub invite le propriétaire du compte à l’approuver (un propriétaire de l’organisation dans le cas d’une installation au niveau de l’organisation), et l’installation conserve ses anciennes permissions jusqu’à cette approbation. Par exemple, lorsque l’accès Actions passe de la lecture à l’écriture, l’application peut relancer des workflows au lieu de seulement consulter les exécutions et les logs ; GitHub demande donc au propriétaire d’approuver ce changement.
Lorsque vous installez l’application, vous acceptez l’ensemble complet de ses permissions. GitHub ne vous permet pas d’en accepter seulement une partie. Si votre organisation n’autorise que les permissions utilisées par la GitHub Action Claude Code, créez plutôt une GitHub App personnalisée avec Contents, Issues et Pull requests, en suivant le guide de configuration de la GitHub Action Claude Code. Une application personnalisée ne couvre que la GitHub Action Claude Code. Code Review et la correction automatique sur le web nécessitent toujours l’application officielle.
Pour en savoir plus sur la manière dont la GitHub Action Claude Code limite ce que Claude peut faire avec ces permissions, consultez la documentation de sécurité.
Modes interactif et automatisation
La GitHub Action Claude Code détecte comment s’exécuter à partir de votre configuration de workflow :- Mode interactif : lorsque le workflow ne fournit pas d’entrée
prompt, Claude attend la phrase de déclenchement,@claudepar défaut, dans un commentaire d’issue ou de pull request, dans une révision de pull request ou dans le corps ou le titre d’une issue nouvellement ouverte, puis répond à cette demande. La progression et les résultats apparaissent en tant que commentaire sur l’issue ou la PR de déclenchement. - Mode automatisation : lorsque le workflow fournit une entrée
prompt, Claude s’exécute sans attendre une mention, soumis uniquement aux vérifications sur qui peut déclencher les exécutions. Par défaut, les résultats apparaissent dans le journal d’exécution du workflow plutôt qu’un commentaire. Claude peut publier sur l’issue ou la pull request lorsque le prompt le dirige et qu’il a un outil qui peut publier, comme dans l’exemple de révision de code.
Qui peut déclencher les exécutions
Dans les deux modes, la GitHub Action Claude Code exécute deux vérifications sur l’acteur de déclenchement avant que Claude ne commence, et l’exécution échoue lorsque l’une des deux vérifications la rejette :- Accès en écriture : sur les événements d’issue et de pull request, l’utilisateur de déclenchement doit avoir un accès en écriture au repository. Pour permettre à des utilisateurs spécifiques sans accès en écriture, définissez
allowed_non_write_userset passez votre propre entréegithub_token. Les événements qu’aucun utilisateur n’auteur, comme un déclencheurschedule, ignorent cette vérification. - Acteur humain : sur chaque événement, la GitHub Action Claude Code rejette un acteur bot à moins que vous le listiez dans
allowed_bots, ce qui empêche les bots de déclencher Claude dans une boucle. Cette vérification s’applique également aux exécutions programmées, que GitHub attribue à un utilisateur du repository, généralement celui qui a modifié en dernier le calendriercrondu workflow. Si cet utilisateur est un bot, listez-le dansallowed_bots.
Exemples de cas d’usage
Le répertoire d’exemples contient des workflows prêts à l’emploi pour différents scénarios. Les exemples de cette page montrent l’authentification par clé API. Si vous vous authentifiez avec un abonnement Claude, remplacez la ligneanthropic_api_key dans n’importe quel exemple par claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}.
Répondre aux mentions @claude
Ce workflow exécute la GitHub Action Claude Code en mode interactif, donc Claude répond chaque fois que quelqu’un mentionne@claude dans un commentaire d’issue ou de PR.
id-token: write: requis pour l’authentification GitHub App par défaut de la GitHub Action Claude Codeactions: read: permet à Claude de lire les résultats CI sur les PRsactions/checkout: donne à Claude une copie locale du repository pour travaillerif: empêche les runners de démarrer sur les commentaires qui ne mentionnent pas@claude. La GitHub Action Claude Code vérifie également la phrase de déclenchement elle-même avant de répondre
@claude dans n’importe quel commentaire d’issue ou de PR avec une demande :
Exécuter une skill
L’entréeprompt accepte une invocation de skill ainsi que du texte brut :
- Pour une skill dans le répertoire
.claude/skills/de votre repository, exécutezactions/checkoutavant l’étapeanthropics/claude-code-actionpour que les fichiers de skill soient disponibles sur le runner, puis passez/skill-namecommeprompt. - Pour une skill emballée dans un plugin, installez le plugin avec les entrées
plugin_marketplacesetplugins, puis passez le/plugin-name:skill-nameavec espace de noms commeprompt. L’entréepluginsprendplugin-name@marketplace-name, où le nom de la marketplace provient du manifeste de la marketplace elle-même plutôt que de l’URL de son repository.
code-review et exécute sa skill lorsqu’une pull request est ouverte, mise à jour, rouverte ou marquée comme prête pour révision. Il exécute le même plugin que le workflow de révision de la configuration rapide. Utilisez un workflow comme celui-ci lorsque vous voulez contrôler le prompt, le modèle et les déclencheurs vous-même. Pour les révisions automatiques sans maintenir un fichier de workflow, consultez Code Review. Sur les repositories publics, GitHub retient les secrets des exécutions déclenchées par des pull requests de fork, donc la révision s’exécute uniquement sur les pull requests des branches du même repository.
--comment: Claude publie sa révision sur la pull request, en tant que commentaire en ligne sur chaque problème qu’il trouve ou en tant qu’un commentaire de résumé lorsqu’il n’en trouve aucun. Sans cela, Claude ne publie rien, et vous lisez les résultats dans le journal d’exécution du workflow.claude_args: conservez cette ligne même si la frontmatterallowed-toolspropre de la skill nomme le même outil, car la GitHub Action Claude Code démarre le serveur MCP qui publie les commentaires en ligne uniquement lorsque--allowedToolsdansclaude_argsle nomme.
Exécuter selon un calendrier
Avec une entréeprompt, la GitHub Action Claude Code s’exécute en mode automatisation sur n’importe quel événement GitHub, y compris un calendrier cron. Pour un prompt en texte brut, Claude n’a pas d’accès shell ou API GitHub jusqu’à ce que vous accordiez les outils que le prompt nécessite, avec --allowedTools dans claude_args ou une règle permissions.allow dans l’entrée settings. Si vous invoquez une skill à la place, Claude peut utiliser les outils que sa frontmatter allowed-tools accorde. GitHub exécute les workflows programmés uniquement à partir de la branche par défaut et, dans les repositories publics, désactive le calendrier après 60 jours sans activité du repository.
Ce workflow génère un rapport dans le journal d’exécution du workflow à 09:00 UTC chaque jour. Sa ligne claude_args passe les arguments CLI qui sélectionnent le modèle et permettent deux outils MCP GitHub. Claude lit les commits et les issues via l’API GitHub avec ces outils, donc vous pouvez omettre l’étape de checkout :
Bonnes pratiques
Définir les normes du projet dans CLAUDE.md
Créez un fichierCLAUDE.md à la racine de votre repository pour définir les directives de style de code, les critères de révision, les règles spécifiques au projet et les modèles préférés. Claude suit ces directives lors de la création de PRs et de la réponse aux demandes. Consultez la documentation de mémoire pour plus de détails.
Protéger vos credentials
Accordez au workflow uniquement les permissions dont il a besoin et examinez les modifications de Claude avant de fusionner. Pour des conseils de sécurité incluant les permissions et l’authentification, consultez la documentation de sécurité de la GitHub Action Claude Code.Gérer les coûts
Chaque exécution consomme deux types de ressources :- Minutes GitHub Actions : la GitHub Action Claude Code s’exécute sur les runners hébergés par GitHub, qui consomment vos minutes GitHub Actions. Consultez la documentation de facturation de GitHub pour les tarifs et les limites de minutes.
- Tokens API : chaque interaction consomme des tokens en fonction de la longueur des prompts et des réponses, de la complexité des tâches et de la taille de la base de code. Consultez la page de tarification de Claude pour les tarifs actuels des tokens. Si vous vous authentifiez avec un token OAuth, les exécutions utilisent votre abonnement Claude au lieu de la facturation API.
- Écrivez des demandes
@claudespécifiques pour que Claude ait besoin de moins de tours pour terminer - Utilisez les modèles d’issue pour fournir du contexte à l’avance
- Gardez votre
CLAUDE.mdconcis, car Claude le lit à chaque exécution - Définissez
--max-turnsdansclaude_argspour limiter les itérations - Définissez les délais d’attente au niveau du workflow pour éviter les jobs qui s’exécutent indéfiniment
- Utilisez les contrôles de concurrence de GitHub pour limiter les exécutions parallèles
Utiliser un fournisseur cloud
Par défaut, la GitHub Action Claude Code appelle l’API Claude directement avec votre clé API ou token OAuth. Pour acheminer l’inférence via votre propre compte cloud à la place, définissez l’entrée pour votre fournisseur et suivez Utiliser Claude Code GitHub Actions avec les fournisseurs cloud :- Amazon Bedrock :
use_bedrock: "true" - Google Cloud’s Agent Platform :
use_vertex: "true" - Microsoft Foundry :
use_foundry: "true"
Dépannage
Claude ne répond pas aux commandes @claude
- Vérifiez que la GitHub App est installée sur le repository
- Vérifiez que les workflows sont activés pour le repository
- Assurez-vous que votre clé API ou token OAuth est défini dans les secrets du repository
- Confirmez que le commentaire contient
@claudecomme mot complet, pas/claudeou@claude-bot - Confirmez que l’utilisateur qui commente a un accès en écriture au repository. Consultez Qui peut déclencher les exécutions pour les exceptions
CI ne s’exécute pas sur les commits de Claude
- GitHub ne déclenche pas les workflows sur les commits effectués avec le
GITHUB_TOKENpar défaut. Si vous passezgithub_token: ${{ secrets.GITHUB_TOKEN }}à la GitHub Action Claude Code, supprimez-le pour qu’il s’authentifie en tant que Claude GitHub App, ou passez un token d’app personnalisé à la place - Vérifiez que les déclencheurs du workflow CI incluent les événements que les pushes de Claude produisent, comme
pushoupull_request
Erreurs d’authentification
- Confirmez que la clé API ou le token OAuth est valide en le testant localement avec
claudeavant de déboguer le workflow - Pour Bedrock, Agent Platform et Foundry, consultez la section dépannage de la page du fournisseur cloud
Configuration avancée
Paramètres de l’action
Ce sont les entrées les plus couramment utilisées. Chacune correspond à une cléwith: dans l’étape anthropics/claude-code-action.
Pour la liste complète des entrées, consultez la référence de configuration de la GitHub Action Claude Code.
Passer les arguments CLI
Le paramètreclaude_args accepte n’importe quel argument CLI Claude Code :
--max-turns: limiter le nombre de tours de conversation--model: modèle à utiliser, par exempleclaude-sonnet-5. Sans cet argument, la GitHub Action Claude Code utilise le modèle par défaut de Claude Code--mcp-config: chemin vers la configuration MCP--allowedTools: liste séparée par des virgules des outils autorisés. L’alias--allowed-toolsfonctionne également--debug: activer la sortie de débogage
Mettre à niveau depuis la version bêta
Si vos workflows font toujours référence àanthropics/claude-code-action@beta, mettez-les à jour vers v1 :
- Changez
@betaen@v1dans la ligneuses - Supprimez l’entrée
mode, car la GitHub Action Claude Code détecte maintenant le mode automatiquement - Remplacez
direct_promptparprompt - Déplacez les options CLI telles que
max_turnsetmodeldansclaude_args.custom_instructionsn’a pas de flag de même nom et devient--append-system-prompt
Prochaines étapes
- Utiliser Claude Code GitHub Actions avec les fournisseurs cloud : acheminer l’inférence via Amazon Bedrock, Google Cloud’s Agent Platform ou Microsoft Foundry
- Référence de configuration : la liste complète des entrées de l’action
- Répertoire d’exemples : workflows prêts à l’emploi pour plus de scénarios
- Code Review : révision automatique des pull requests sans maintenir un fichier de workflow