Claude Code GitHub Actions
Apprenez à intégrer Claude Code dans votre flux de travail de développement avec Claude Code GitHub Actions
Claude Code GitHub Actions apporte l’automatisation alimentée par l’IA à votre flux de travail GitHub. Avec une simple mention @claude
dans n’importe quelle PR ou issue, Claude peut analyser votre code, créer des pull requests, implémenter des fonctionnalités et corriger des bugs - tout en suivant les standards 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 construire 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 une PR complète avec tous les changements nécessaires
- Implémentation automatisée de code : Transformez les issues en code fonctionnel avec une seule commande
- Suit vos standards : Claude respecte vos directives
CLAUDE.md
et 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 runners de Github
Que peut faire Claude ?
Claude Code fournit une GitHub Action puissante qui transforme la façon dont vous travaillez 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 construire n’importe quel flux de travail personnalisé sur Claude Code.
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 un administrateur de dépôt pour installer l’application GitHub et ajouter des secrets - Cette méthode de démarrage rapide n’est disponible que pour les utilisateurs directs de l’API Anthropic. Si vous utilisez AWS Bedrock ou Google Vertex AI, veuillez consulter la section Utilisation avec AWS Bedrock & Google Vertex AI.
Configuration manuelle
Si la commande /install-github-app
échoue ou si vous préférez la configuration manuelle, veuillez suivre ces instructions de configuration manuelle :
- Installez l’application GitHub Claude sur votre dépôt : https://github.com/apps/claude
- Ajoutez ANTHROPIC_API_KEY à vos secrets de dépôt (Apprenez comment 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 dépôt
Après avoir terminé la configuration rapide ou manuelle, testez l’action en
taguant @claude
dans un commentaire d’issue ou de PR !
Mise à niveau depuis la Beta
Claude Code GitHub Actions v1.0 introduit des changements incompatibles qui nécessitent la mise à jour de vos fichiers de flux de travail pour passer de la version beta à la v1.0.
Si vous utilisez actuellement la version beta de Claude Code GitHub Actions, nous recommandons de mettre à jour vos flux de travail pour utiliser la version GA. La nouvelle version simplifie la configuration tout en ajoutant de nouvelles fonctionnalités puissantes comme la détection automatique de mode.
Changements essentiels
Tous les utilisateurs beta doivent apporter ces changements à leurs fichiers de flux de travail pour effectuer la mise à niveau :
- Mettre à jour la version de l’action : Changer
@beta
en@v1
- Supprimer la configuration de mode : Supprimer
mode: "tag"
oumode: "agent"
(maintenant auto-détecté) - Mettre à jour les entrées de prompt : Remplacer
direct_prompt
parprompt
- Déplacer les options CLI : Convertir
max_turns
,model
,custom_instructions
, etc. enclaude_args
Référence des changements incompatibles
Ancienne entrée Beta | Nouvelle entrée v1.0 |
---|---|
mode | (Supprimé - auto-détecté) |
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 beta :
Version GA (v1.0) :
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) basé sur 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 à utiliser pour différents scénarios.
Flux de travail de base
Utilisation des commandes slash
Automatisation personnalisée avec prompts
Cas d’usage courants
Dans les commentaires d’issue ou de PR :
Claude analysera automatiquement le contexte et répondra de manière appropriée.
Meilleures pratiques
Configuration CLAUDE.md
Créez un fichier CLAUDE.md
à la racine de votre dépôt 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. Ce fichier guide la compréhension de Claude des standards de votre projet.
Considérations de sécurité
Utilisez toujours les Secrets GitHub pour les clés API :
- Ajoutez votre clé API comme secret de dépôt nommé
ANTHROPIC_API_KEY
- Référencez-la dans les flux de travail :
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
- Limitez les permissions d’action à ce qui est nécessaire seulement
- Examinez les suggestions de Claude avant de fusionner
Utilisez toujours les Secrets GitHub (par exemple, ${{ 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 d’issue pour fournir du contexte, gardez votre CLAUDE.md
concis et focalisé, et configurez des timeouts appropriés pour vos flux de travail.
Coûts CI
Lors de l’utilisation de Claude Code GitHub Actions, soyez conscient des coûts associés :
Coûts GitHub Actions :
- Claude Code s’exécute sur les runners hébergés par GitHub, qui consomment vos minutes GitHub Actions
- Voir la documentation de facturation de GitHub pour les prix détaillés et les limites de minutes
Coûts API :
- Chaque interaction Claude consomme des tokens API basés sur la longueur des prompts et des réponses
- L’utilisation de tokens varie selon la complexité de la tâche et la taille de la base de code
- Voir la page de tarification de Claude pour les taux de tokens actuels
Conseils d’optimisation des coûts :
- Utilisez des commandes
@claude
spécifiques pour réduire les appels API inutiles - Configurez
--max-turns
approprié dansclaude_args
pour éviter les itérations excessives - Définissez des timeouts au niveau du flux de travail pour éviter les jobs qui s’emballent
- Considérez l’utilisation des contrôles de concurrence de GitHub pour limiter les exécutions parallèles
Exemples de configuration
La Claude Code Action v1 simplifie la configuration avec des paramètres unifiés :
Fonctionnalités clés :
- Interface de prompt unifiée - Utilisez
prompt
pour toutes les instructions - Commandes slash - Prompts pré-construits comme
/review
ou/fix
- Passthrough CLI - N’importe quel argument CLI Claude Code via
claude_args
- Déclencheurs flexibles - Fonctionne avec n’importe quel événement GitHub
Visitez le répertoire d’exemples pour des fichiers de flux de travail complets.
Lors de la réponse aux commentaires d’issue ou de PR, Claude répond automatiquement aux mentions @claude. Pour d’autres événements, utilisez le paramètre prompt
pour fournir des instructions.
Utilisation avec AWS Bedrock & 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 la même fonctionnalité.
Prérequis
Avant de configurer Claude Code GitHub Actions avec les 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 permissions requises
- Une GitHub App (recommandée) ou utilisez le GITHUB_TOKEN par défaut
Pour AWS Bedrock :
- Un compte AWS avec Amazon Bedrock activé
- Fournisseur d’identité GitHub OIDC configuré dans AWS
- Un rôle IAM avec les permissions Bedrock
- Une GitHub App (recommandée) ou utilisez le GITHUB_TOKEN par défaut
Créer une GitHub App personnalisée (Recommandé pour les fournisseurs 3P)
Pour un meilleur contrôle et sécurité lors de l’utilisation de fournisseurs 3P comme Vertex AI ou Bedrock, nous recommandons de créer votre propre GitHub App :
- Allez sur https://github.com/settings/apps/new
- Remplissez les informations de base :
- Nom de la GitHub App : 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 dépôt
- Configurez les paramètres de l’app :
- Webhooks : Décochez “Active” (pas nécessaire pour cette intégration)
- Définissez les permissions requises :
- Permissions de dépôt :
- Contents : Lecture & Écriture
- Issues : Lecture & Écriture
- Pull requests : Lecture & Écriture
- Permissions de dépôt :
- Cliquez sur “Create GitHub App”
- Après création, cliquez sur “Generate a private key” et sauvegardez le fichier
.pem
téléchargé - Notez votre App ID depuis la page des paramètres de l’app
- Installez l’app sur votre dépôt :
- Depuis la page des paramètres de votre app, cliquez sur “Install App” dans la barre latérale gauche
- Sélectionnez votre compte ou organisation
- Choisissez “Only select repositories” et sélectionnez le dépôt spécifique
- Cliquez sur “Install”
- Ajoutez la clé privée comme secret à votre dépôt :
- Allez dans les Paramètres de votre dépôt → Secrets and variables → Actions
- Créez un nouveau secret nommé
APP_PRIVATE_KEY
avec le contenu du fichier.pem
- Ajoutez l’App ID comme secret :
- Créez un nouveau secret nommé
APP_ID
avec l’ID de votre GitHub App
Cette app sera utilisée avec l’action actions/create-github-app-token pour générer des tokens d’authentification dans vos flux de travail.
Alternative pour l’API Anthropic ou si vous ne voulez pas configurer votre propre app Github : Utilisez l’app officielle Anthropic :
- Installez depuis : https://github.com/apps/claude
- Aucune configuration supplémentaire nécessaire pour l’authentification
Configurer l'authentification du fournisseur cloud
Choisissez votre fournisseur cloud et configurez l’authentification sécurisée :
Ajouter les secrets requis
Ajoutez les secrets suivants à votre dépôt (Paramètres → Secrets and variables → Actions) :
Pour l’API Anthropic (Direct) :
-
Pour l’authentification API :
ANTHROPIC_API_KEY
: Votre clé API Anthropic depuis console.anthropic.com
-
Pour GitHub App (si vous utilisez votre propre app) :
APP_ID
: L’ID de votre GitHub AppAPP_PRIVATE_KEY
: Le contenu de la clé privée (.pem)
Pour Google Cloud Vertex AI
-
Pour l’authentification GCP :
GCP_WORKLOAD_IDENTITY_PROVIDER
GCP_SERVICE_ACCOUNT
-
Pour GitHub App (si vous utilisez votre propre app) :
APP_ID
: L’ID de votre GitHub AppAPP_PRIVATE_KEY
: Le contenu de la clé privée (.pem)
Pour AWS Bedrock
-
Pour l’authentification AWS :
AWS_ROLE_TO_ASSUME
-
Pour GitHub App (si vous utilisez votre propre app) :
APP_ID
: L’ID de votre GitHub AppAPP_PRIVATE_KEY
: Le contenu de la clé privée (.pem)
Créer les fichiers de flux de travail
Créez des fichiers de flux de travail GitHub Actions qui s’intègrent avec votre fournisseur cloud. Les exemples ci-dessous montrent des configurations complètes pour AWS Bedrock et Google Vertex AI :
Dépannage
Claude ne répond pas aux commandes @claude
Vérifiez que la GitHub App est installée correctement, vérifiez que les flux de travail sont activés, assurez-vous que la clé API est définie dans les secrets du dépôt, et confirmez que le commentaire contient @claude
(pas /claude
).
CI ne s’exécute pas sur les commits de Claude
Assurez-vous que vous utilisez la GitHub App ou une app 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 permissions de l’app incluent les déclencheurs CI.
Erreurs d’authentification
Confirmez que la clé API est valide et a des permissions 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
La 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 Anthropic | Oui** |
github_token | Token GitHub pour l’accès API | Non |
trigger_phrase | Phrase de déclenchement personnalisée (défaut : “@claude”) | Non |
use_bedrock | Utiliser AWS Bedrock au lieu de l’API Anthropic | Non |
use_vertex | Utiliser Google Vertex AI au lieu de l’API Anthropic | Non |
*Prompt est optionnel - quand omis pour les commentaires d’issue/PR, Claude répond à la phrase de déclenchement
**Requis pour l’API Anthropic directe, pas pour Bedrock/Vertex
Utilisation de claude_args
Le paramètre claude_args
accepte n’importe quels arguments CLI Claude Code :
Arguments courants :
--max-turns
: Tours de conversation maximum (défaut : 10)--model
: Modèle à utiliser (par exemple,claude-sonnet-4-20250514
)--mcp-config
: Chemin vers la configuration MCP--allowed-tools
: Liste séparée par des virgules d’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 aussi :
- GitHub App personnalisée : Pour les organisations nécessitant des noms d’utilisateur de marque ou des flux d’authentification personnalisés. Créez votre propre GitHub App avec les permissions requises (contents, issues, pull requests) et utilisez l’action actions/create-github-app-token pour générer des tokens dans vos flux de travail.
- GitHub Actions manuelles : Configuration directe de flux de travail pour une flexibilité maximale
- Configuration MCP : Chargement dynamique des serveurs Model Context Protocol
Voir le dépôt Claude Code Action pour une documentation détaillée.
Personnaliser le comportement de Claude
Vous pouvez configurer le comportement de Claude de deux façons :
- CLAUDE.md : Définissez les standards de codage, les critères de révision et les règles spécifiques au projet dans un fichier
CLAUDE.md
à la racine de votre dépôt. Claude suivra ces directives lors de la création de PRs et de la réponse aux demandes. Consultez notre documentation Mémoire pour plus de détails. - Prompts personnalisés : Utilisez le paramètre
prompt
dans 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.
Claude suivra ces directives lors de la création de PRs et de la réponse aux demandes.