@claude dans n’importe quel PR ou problème, Claude peut analyser votre code, créer des demandes de tirage, implémenter des fonctionnalités et corriger des bogues - tout en respectant les normes de votre projet.
Claude Code GitHub Actions est construit sur le Claude Code
SDK, qui permet l’intégration programmatique de
Claude Code dans vos applications. Vous pouvez utiliser le SDK pour créer des flux de travail d’automatisation personnalisés au-delà de GitHub Actions.
Pourquoi utiliser Claude Code GitHub Actions ?
- Création instantanée de PR : Décrivez ce dont vous avez besoin, et Claude crée un PR complet avec tous les changements nécessaires
- Implémentation de code automatisée : Transformez les problèmes en code fonctionnel avec une seule commande
- Respecte vos normes : Claude respecte vos directives
CLAUDE.mdet les modèles de code existants - Configuration simple : Commencez en quelques minutes avec notre installateur et clé API
- Sécurisé par défaut : Votre code reste sur les exécuteurs de Github
Que peut faire Claude ?
Claude Code fournit une GitHub Action puissante qui transforme votre façon de travailler avec le code :Claude Code Action
Cette GitHub Action vous permet d’exécuter Claude Code dans vos flux de travail GitHub Actions. Vous pouvez l’utiliser pour créer n’importe quel flux de travail personnalisé sur Claude Code. Voir le référentiel →Configuration
Configuration rapide
Le moyen le plus simple de configurer cette action est via Claude Code dans le terminal. Ouvrez simplement claude et exécutez/install-github-app.
Cette commande vous guidera dans la configuration de l’application GitHub et des secrets requis.
- Vous devez être administrateur du référentiel pour installer l’application GitHub et ajouter des secrets
- L’application GitHub demandera des autorisations de lecture et d’écriture pour Contents, Issues et Pull requests
- Cette méthode de démarrage rapide n’est disponible que pour les utilisateurs directs de l’API Claude. Si vous utilisez AWS Bedrock ou Google Vertex AI, veuillez consulter la section Utilisation avec AWS Bedrock et Google Vertex AI.
Configuration manuelle
Si la commande/install-github-app échoue ou si vous préférez une configuration manuelle, veuillez suivre ces instructions de configuration manuelle :
-
Installez l’application Claude GitHub sur votre référentiel : https://github.com/apps/claude
L’application Claude GitHub nécessite les autorisations de référentiel suivantes :
- Contents : Lecture et écriture (pour modifier les fichiers du référentiel)
- Issues : Lecture et écriture (pour répondre aux problèmes)
- Pull requests : Lecture et écriture (pour créer des PR et pousser les changements)
- Ajoutez ANTHROPIC_API_KEY aux secrets de votre référentiel (Apprenez à utiliser les secrets dans GitHub Actions)
-
Copiez le fichier de flux de travail depuis examples/claude.yml dans le répertoire
.github/workflows/de votre référentiel
Après avoir complété la configuration rapide ou manuelle, testez l’action en
marquant
@claude dans un commentaire de problème ou de PR !Mise à niveau depuis la version bêta
Claude Code GitHub Actions v1.0 introduit des changements de rupture qui nécessitent de mettre à jour vos fichiers de flux de travail pour passer de la version bêta à v1.0.
Changements essentiels
Tous les utilisateurs bêta doivent apporter ces modifications à leurs fichiers de flux de travail pour effectuer la mise à niveau :- Mettez à jour la version de l’action : Changez
@betaen@v1 - Supprimez la configuration du mode : Supprimez
mode: "tag"oumode: "agent"(maintenant détecté automatiquement) - Mettez à jour les entrées de prompt : Remplacez
direct_promptparprompt - Déplacez les options CLI : Convertissez
max_turns,model,custom_instructions, etc. enclaude_args
Référence des changements de rupture
| Ancienne entrée bêta | Nouvelle entrée v1.0 |
|---|---|
mode | (Supprimé - détecté automatiquement) |
direct_prompt | prompt |
override_prompt | prompt avec variables GitHub |
custom_instructions | claude_args: --system-prompt |
max_turns | claude_args: --max-turns |
model | claude_args: --model |
allowed_tools | claude_args: --allowedTools |
disallowed_tools | claude_args: --disallowedTools |
claude_env | settings format JSON |
Exemple avant et après
Version bêta :L’action détecte maintenant automatiquement s’il faut s’exécuter en mode interactif (répond aux mentions
@claude) ou en mode automatisation (s’exécute immédiatement avec un prompt) en fonction de votre configuration.Exemples de cas d’usage
Claude Code GitHub Actions peut vous aider avec une variété de tâches. Le répertoire d’exemples contient des flux de travail prêts à l’emploi pour différents scénarios.Flux de travail de base
Utilisation de commandes slash
Automatisation personnalisée avec prompts
Cas d’usage courants
Dans les commentaires de problème ou de PR :Meilleures pratiques
Configuration CLAUDE.md
Créez un fichierCLAUDE.md à la racine de votre référentiel pour définir les directives de style de code, les critères d’examen, les règles spécifiques au projet et les modèles préférés. Ce fichier guide la compréhension de Claude des normes de votre projet.
Considérations de sécurité
Ne validez jamais les clés API directement dans votre référentiel !
- Ajoutez votre clé API en tant que secret de référentiel nommé
ANTHROPIC_API_KEY - Référencez-la dans les flux de travail :
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} - Limitez les autorisations d’action à seulement ce qui est nécessaire
- Examinez les suggestions de Claude avant de fusionner
${{ secrets.ANTHROPIC_API_KEY }}) plutôt que de coder en dur les clés API directement dans vos fichiers de flux de travail.
Optimisation des performances
Utilisez des modèles de problème pour fournir du contexte, gardez votreCLAUDE.md concis et ciblé, et configurez des délais d’attente appropriés pour vos flux de travail.
Coûts CI
Lorsque vous utilisez Claude Code GitHub Actions, soyez conscient des coûts associés : Coûts GitHub Actions :- Claude Code s’exécute sur des exécuteurs hébergés par GitHub, qui consomment vos minutes GitHub Actions
- Consultez la documentation de facturation de GitHub pour les tarifs détaillés et les limites de minutes
- Chaque interaction Claude consomme des jetons API en fonction de la longueur des prompts et des réponses
- L’utilisation des jetons varie selon la complexité de la tâche et la taille de la base de code
- Consultez la page de tarification de Claude pour les tarifs actuels des jetons
- Utilisez des commandes
@claudespécifiques pour réduire les appels API inutiles - Configurez
--max-turnsapproprié dansclaude_argspour éviter les itérations excessives - Définissez des délais d’attente au niveau du flux de travail pour éviter les tâches qui s’échappent
- Envisagez d’utiliser les contrôles de concurrence de GitHub pour limiter les exécutions parallèles
Exemples de configuration
Claude Code Action v1 simplifie la configuration avec des paramètres unifiés :- Interface de prompt unifiée - Utilisez
promptpour toutes les instructions - Commandes slash - Prompts prédéfinis comme
/reviewou/fix - Passage CLI - N’importe quel argument CLI de Claude Code via
claude_args - Déclencheurs flexibles - Fonctionne avec n’importe quel événement GitHub
Lors de la réponse aux commentaires de problème ou de PR, Claude répond automatiquement aux mentions @claude. Pour les autres événements, utilisez le paramètre
prompt pour fournir des instructions.Utilisation avec AWS Bedrock et Google Vertex AI
Pour les environnements d’entreprise, vous pouvez utiliser Claude Code GitHub Actions avec votre propre infrastructure cloud. Cette approche vous donne le contrôle sur la résidence des données et la facturation tout en maintenant les mêmes fonctionnalités.Prérequis
Avant de configurer Claude Code GitHub Actions avec des fournisseurs cloud, vous avez besoin de :Pour Google Cloud Vertex AI :
- Un projet Google Cloud avec Vertex AI activé
- Workload Identity Federation configuré pour GitHub Actions
- Un compte de service avec les autorisations requises
- Une application GitHub (recommandée) ou utilisez le GITHUB_TOKEN par défaut
Pour AWS Bedrock :
- Un compte AWS avec Amazon Bedrock activé
- Fournisseur d’identité OIDC GitHub configuré dans AWS
- Un rôle IAM avec les autorisations Bedrock
- Une application GitHub (recommandée) ou utilisez le GITHUB_TOKEN par défaut
1
Créer une application GitHub personnalisée (recommandée pour les fournisseurs tiers)
Pour un meilleur contrôle et une meilleure sécurité lors de l’utilisation de fournisseurs tiers comme Vertex AI ou Bedrock, nous recommandons de créer votre propre application GitHub :Alternative pour l’API Claude ou si vous ne voulez pas configurer votre propre application Github : Utilisez l’application Anthropic officielle :
- Allez à https://github.com/settings/apps/new
- Remplissez les informations de base :
- Nom de l’application GitHub : Choisissez un nom unique (par exemple, “YourOrg Claude Assistant”)
- URL de la page d’accueil : Le site Web de votre organisation ou l’URL du référentiel
- Configurez les paramètres de l’application :
- Webhooks : Décochez “Active” (non nécessaire pour cette intégration)
- Définissez les autorisations requises :
- Autorisations du référentiel :
- Contents : Lecture et écriture
- Issues : Lecture et écriture
- Pull requests : Lecture et écriture
- Autorisations du référentiel :
- Cliquez sur “Create GitHub App”
- Après la création, cliquez sur “Generate a private key” et enregistrez le fichier
.pemtéléchargé - Notez votre ID d’application à partir de la page des paramètres de l’application
- Installez l’application sur votre référentiel :
- À partir de la page des paramètres de votre application, cliquez sur “Install App” dans la barre latérale gauche
- Sélectionnez votre compte ou organisation
- Choisissez “Only select repositories” et sélectionnez le référentiel spécifique
- Cliquez sur “Install”
- Ajoutez la clé privée en tant que secret à votre référentiel :
- Allez à Settings → Secrets and variables → Actions de votre référentiel
- Créez un nouveau secret nommé
APP_PRIVATE_KEYavec le contenu du fichier.pem
- Ajoutez l’ID d’application en tant que secret :
- Créez un nouveau secret nommé
APP_IDavec l’ID de votre application GitHub
Cette application sera utilisée avec l’action actions/create-github-app-token pour générer des jetons d’authentification dans vos flux de travail.
- Installez depuis : https://github.com/apps/claude
- Aucune configuration supplémentaire nécessaire pour l’authentification
2
Configurer l'authentification du fournisseur cloud
Choisissez votre fournisseur cloud et configurez l’authentification sécurisée :
AWS Bedrock
AWS Bedrock
Configurez AWS pour permettre à GitHub Actions de s’authentifier de manière sécurisée sans stocker les identifiants.Consultez la documentation AWS pour les instructions détaillées de configuration OIDC.
Note de sécurité : Utilisez des configurations spécifiques au référentiel et accordez uniquement les autorisations minimales requises.Configuration requise :
-
Activez Amazon Bedrock :
- Demandez l’accès aux modèles Claude dans Amazon Bedrock
- Pour les modèles inter-régions, demandez l’accès dans toutes les régions requises
-
Configurez le fournisseur d’identité OIDC GitHub :
- URL du fournisseur :
https://token.actions.githubusercontent.com - Audience :
sts.amazonaws.com
- URL du fournisseur :
-
Créez un rôle IAM pour GitHub Actions :
- Type d’entité de confiance : Web identity
- Fournisseur d’identité :
token.actions.githubusercontent.com - Autorisations : politique
AmazonBedrockFullAccess - Configurez la politique de confiance pour votre référentiel spécifique
- AWS_ROLE_TO_ASSUME : L’ARN du rôle IAM que vous avez créé
OIDC est plus sûr que l’utilisation de clés d’accès AWS statiques car les identifiants sont temporaires et automatiquement renouvelés.
Google Vertex AI
Google Vertex AI
Configurez Google Cloud pour permettre à GitHub Actions de s’authentifier de manière sécurisée sans stocker les identifiants.Pour les instructions de configuration détaillées, consultez la documentation Google Cloud Workload Identity Federation.
Note de sécurité : Utilisez des configurations spécifiques au référentiel et accordez uniquement les autorisations minimales requises.Configuration requise :
-
Activez les API dans votre projet Google Cloud :
- API des identifiants IAM
- API Security Token Service (STS)
- API Vertex AI
-
Créez des ressources Workload Identity Federation :
- Créez un Workload Identity Pool
- Ajoutez un fournisseur OIDC GitHub avec :
- Émetteur :
https://token.actions.githubusercontent.com - Mappages d’attributs pour le référentiel et le propriétaire
- Recommandation de sécurité : Utilisez des conditions d’attribut spécifiques au référentiel
- Émetteur :
-
Créez un compte de service :
- Accordez uniquement le rôle
Vertex AI User - Recommandation de sécurité : Créez un compte de service dédié par référentiel
- Accordez uniquement le rôle
-
Configurez les liaisons IAM :
- Autorisez le Workload Identity Pool à emprunter l’identité du compte de service
- Recommandation de sécurité : Utilisez des ensembles de principaux spécifiques au référentiel
- GCP_WORKLOAD_IDENTITY_PROVIDER : Le nom complet de la ressource du fournisseur
- GCP_SERVICE_ACCOUNT : L’adresse e-mail du compte de service
Workload Identity Federation élimine le besoin de clés de compte de service téléchargeables, améliorant la sécurité.
3
Ajouter les secrets requis
Ajoutez les secrets suivants à votre référentiel (Settings → Secrets and variables → Actions) :
Pour l’API Claude (Direct) :
-
Pour l’authentification API :
ANTHROPIC_API_KEY: Votre clé API Claude depuis console.anthropic.com
-
Pour l’application GitHub (si vous utilisez votre propre application) :
APP_ID: L’ID de votre application GitHubAPP_PRIVATE_KEY: Le contenu de la clé privée (.pem)
Pour Google Cloud Vertex AI
-
Pour l’authentification GCP :
GCP_WORKLOAD_IDENTITY_PROVIDERGCP_SERVICE_ACCOUNT
-
Pour l’application GitHub (si vous utilisez votre propre application) :
APP_ID: L’ID de votre application GitHubAPP_PRIVATE_KEY: Le contenu de la clé privée (.pem)
Pour AWS Bedrock
-
Pour l’authentification AWS :
AWS_ROLE_TO_ASSUME
-
Pour l’application GitHub (si vous utilisez votre propre application) :
APP_ID: L’ID de votre application GitHubAPP_PRIVATE_KEY: Le contenu de la clé privée (.pem)
4
Créer des fichiers de flux de travail
Créez des fichiers de flux de travail GitHub Actions qui s’intègrent à votre fournisseur cloud. Les exemples ci-dessous montrent des configurations complètes pour AWS Bedrock et Google Vertex AI :
Flux de travail AWS Bedrock
Flux de travail AWS Bedrock
Prérequis :
- Accès AWS Bedrock activé avec autorisations de modèle Claude
- GitHub configuré en tant que fournisseur d’identité OIDC dans AWS
- Rôle IAM avec autorisations Bedrock qui fait confiance à GitHub Actions
| Nom du secret | Description |
|---|---|
AWS_ROLE_TO_ASSUME | ARN du rôle IAM pour l’accès à Bedrock |
APP_ID | Votre ID d’application GitHub (à partir des paramètres de l’application) |
APP_PRIVATE_KEY | La clé privée que vous avez générée pour votre application GitHub |
Le format d’ID de modèle pour Bedrock inclut le préfixe de région (par exemple,
us.anthropic.claude...) et le suffixe de version.Flux de travail Google Vertex AI
Flux de travail Google Vertex AI
Prérequis :
- API Vertex AI activée dans votre projet GCP
- Workload Identity Federation configurée pour GitHub
- Compte de service avec autorisations Vertex AI
| Nom du secret | Description |
|---|---|
GCP_WORKLOAD_IDENTITY_PROVIDER | Nom de ressource du fournisseur d’identité de charge de travail |
GCP_SERVICE_ACCOUNT | E-mail du compte de service avec accès à Vertex AI |
APP_ID | Votre ID d’application GitHub (à partir des paramètres de l’application) |
APP_PRIVATE_KEY | La clé privée que vous avez générée pour votre application GitHub |
L’ID de projet est automatiquement récupéré à partir de l’étape d’authentification Google Cloud, vous n’avez donc pas besoin de le coder en dur.
Dépannage
Claude ne répond pas aux commandes @claude
Vérifiez que l’application GitHub est correctement installée, vérifiez que les flux de travail sont activés, assurez-vous que la clé API est définie dans les secrets du référentiel et confirmez que le commentaire contient@claude (pas /claude).
CI ne s’exécute pas sur les commits de Claude
Assurez-vous d’utiliser l’application GitHub ou l’application personnalisée (pas l’utilisateur Actions), vérifiez que les déclencheurs de flux de travail incluent les événements nécessaires et vérifiez que les autorisations de l’application incluent les déclencheurs CI.Erreurs d’authentification
Confirmez que la clé API est valide et dispose des autorisations suffisantes. Pour Bedrock/Vertex, vérifiez la configuration des identifiants et assurez-vous que les secrets sont nommés correctement dans les flux de travail.Configuration avancée
Paramètres d’action
Claude Code Action v1 utilise une configuration simplifiée :| Paramètre | Description | Requis |
|---|---|---|
prompt | Instructions pour Claude (texte ou commande slash) | Non* |
claude_args | Arguments CLI passés à Claude Code | Non |
anthropic_api_key | Clé API Claude | Oui** |
github_token | Jeton GitHub pour l’accès API | Non |
trigger_phrase | Phrase de déclenchement personnalisée (par défaut : “@claude”) | Non |
use_bedrock | Utiliser AWS Bedrock au lieu de l’API Claude | Non |
use_vertex | Utiliser Google Vertex AI au lieu de l’API Claude | Non |
**Requis pour l’API Claude directe, pas pour Bedrock/Vertex
Utilisation de claude_args
Le paramètreclaude_args accepte n’importe quel argument CLI de Claude Code :
--max-turns: Nombre maximum de tours de conversation (par défaut : 10)--model: Modèle à utiliser (par exemple,claude-sonnet-4-5-20250929)--mcp-config: Chemin vers la configuration MCP--allowed-tools: Liste séparée par des virgules des outils autorisés--debug: Activer la sortie de débogage
Méthodes d’intégration alternatives
Bien que la commande/install-github-app soit l’approche recommandée, vous pouvez également :
- Application GitHub personnalisée : Pour les organisations ayant besoin de noms d’utilisateur personnalisés ou de flux d’authentification personnalisés. Créez votre propre application GitHub avec les autorisations requises (contents, issues, pull requests) et utilisez l’action actions/create-github-app-token pour générer des jetons dans vos flux de travail.
- GitHub Actions manuel : Configuration directe du flux de travail pour une flexibilité maximale
- Configuration MCP : Chargement dynamique des serveurs Model Context Protocol
Personnalisation du comportement de Claude
Vous pouvez configurer le comportement de Claude de deux façons :- CLAUDE.md : Définissez les normes de codage, les critères d’examen et les règles spécifiques au projet dans un fichier
CLAUDE.mdà la racine de votre référentiel. Claude suivra ces directives lors de la création de PR et de la réponse aux demandes. Consultez notre documentation Memory pour plus de détails. - Prompts personnalisés : Utilisez le paramètre
promptdans le fichier de flux de travail pour fournir des instructions spécifiques au flux de travail. Cela vous permet de personnaliser le comportement de Claude pour différents flux de travail ou tâches.