4 4
5# Claude Code GitHub Actions5# Claude Code GitHub Actions
6 6
7> Découvrez comment intégrer Claude Code dans votre flux de travail de développement avec Claude Code GitHub Actions7> Exécutez Claude Code dans les workflows GitHub Actions pour répondre aux mentions @claude, automatiser les tâches et transformer les issues en pull requests
8 8
9Claude 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 respectant les normes de votre projet. Pour les révisions automatiques publiées sur chaque PR sans déclencheur, consultez [GitHub Code Review](/fr/code-review).9[Claude Code GitHub Actions](https://github.com/anthropics/claude-code-action) est une GitHub Action qui exécute Claude Code dans les workflows de votre repository. Mentionnez `@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.
10 10
11<Note>11Plusieurs 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 :
12 Claude Code GitHub Actions est construit sur le [Claude Agent SDK](/fr/agent-sdk/overview), 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.
13</Note>
14 12
15<h2 id="why-use-claude-code-github-actions">13* [Code Review](/docs/fr/code-review) : révision automatique sur chaque pull request, sans écrire de workflow
16 Pourquoi utiliser Claude Code GitHub Actions ?14* [Claude Code sur le web](/docs/fr/claude-code-on-the-web) : sessions Claude Code depuis votre navigateur ou téléphone
15* [Claude Agent SDK](/docs/fr/agent-sdk/overview) : automatisation personnalisée en dehors de GitHub Actions. La GitHub Action Claude Code est construite sur le SDK
16* [GitHub Enterprise Server](/docs/fr/github-enterprise-server) : Claude Code avec GitHub auto-hébergé
17
18<h2 id="setup">
19 Configuration
17</h2>20</h2>
18 21
19* **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écessaires22Vous pouvez configurer la GitHub Action Claude Code de deux façons :
20* **Implémentation de code automatisée** : Transformez les issues en code fonctionnel avec une seule commande
21* **Respecte vos normes** : Claude respecte vos directives `CLAUDE.md` et les modèles de code existants
22* **Configuration simple** : Commencez en quelques minutes avec notre installateur et votre clé API
23* **Sécurisé par défaut** : Votre code reste sur les runners de Github
24 23
25<h2 id="what-can-claude-do">24* **Configuration rapide** : exécutez `/install-github-app` depuis Claude Code. Claude Code installe la GitHub App, ajoute votre secret d'authentification et prépare la pull request de workflow pour vous
26 Que peut faire Claude ?25* **Configuration manuelle** : installez l'app, ajoutez le secret et copiez le fichier de workflow dans votre repository vous-même. Utilisez ce chemin lorsque vous n'exécutez pas Claude Code localement, lorsque la commande échoue ou lorsque vous voulez un contrôle total des fichiers de workflow
27</h2>
28 26
29Claude Code fournit une GitHub Action puissante qui transforme votre façon de travailler avec le code :27Pour l'un ou l'autre chemin, vous avez besoin d'un accès administrateur au repository.
30 28
31<h3 id="claude-code-action">29<h3 id="quick-setup">
32 Claude Code Action30 Configuration rapide
33</h3>31</h3>
34 32
35Cette 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.33Avant de commencer, installez le [GitHub CLI](https://cli.github.com) et authentifiez-le avec `gh auth login`. Claude Code le vérifie et vous avertit s'il manque.
36 34
37[Voir le repository →](https://github.com/anthropics/claude-code-action)35Ouvrez `claude` dans le repository que vous voulez connecter, exécutez `/install-github-app` et suivez les invites. Claude Code installe la Claude GitHub App, puis configure un secret d'authentification pour les workflows :
38 36
39<h2 id="setup">37* Si Claude Code a déjà une clé API, il réutilise cette clé et propose de conserver le secret `ANTHROPIC_API_KEY` existant du repository s'il en existe un
40 Configuration38* Sinon, choisissez entre créer un token de longue durée avec votre abonnement Claude et coller une clé API
41</h2>
42 39
43<h2 id="quick-setup">40Claude Code enregistre les credentials en tant que secret de repository, nommé `ANTHROPIC_API_KEY` pour une clé API ou `CLAUDE_CODE_OAUTH_TOKEN` pour un token d'abonnement.
44 Configuration rapide41
45</h2>42Claude Code pousse ensuite une branche avec les fichiers de workflow que vous sélectionnez, déjà configurés pour utiliser ce secret, et ouvre GitHub dans votre navigateur avec une pull request prête à créer. Créez et fusionnez cette pull request, et `@claude` fonctionne dans le repository.
43
44Si vous sélectionnez le workflow de révision, Claude publie chaque révision sur la pull request elle-même, 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. Claude ignore certaines pull requests, comme les brouillons. L'[exemple de workflow de révision](#run-a-skill) utilise la même skill et les énumère. Avant v2.1.229, Claude écrivait sa révision uniquement dans le journal d'exécution du workflow.
46 45
47Exécutez `/install-github-app` dans le terminal Claude Code pour configurer l'intégration de manière interactive. La commande installe l'application Claude GitHub sur votre repository et vous guide ensuite à travers l'ajout des workflows GitHub Actions et du secret de clé API.46Pour mettre à jour un workflow de révision qu'une version antérieure a généré, faites l'une des choses suivantes :
48 47
49Après l'installation de l'application GitHub, la commande vous demande si vous souhaitez continuer avec la configuration de GitHub Actions. Dans Claude Code v2.1.187 et versions ultérieures, vous pouvez choisir **Ignorer pour l'instant** pour arrêter avec seulement l'application installée et revenir aux étapes de workflow et de secret en exécutant `/install-github-app` à nouveau. Les versions antérieures passent directement à la sélection du workflow.48* Exécutez `/install-github-app` à nouveau. Lorsque le repository a déjà un `claude.yml`, sélectionnez **Mettre à jour le fichier de workflow avec la dernière version**. Claude Code pousse des copies fraîches des fichiers de workflow vers une nouvelle branche et ouvre la pull request, comme une première installation.
49* Ajoutez l'argument `--comment` et la ligne `claude_args` de l'[exemple de workflow de révision](#run-a-skill) au fichier enregistré vous-même, ce qui conserve les autres modifications que vous y avez apportées.
50
51Après l'installation de la GitHub App, Claude Code demande si vous voulez continuer avec la configuration de GitHub Actions. Choisissez **Ignorer pour l'instant** pour arrêter avec seulement la GitHub App installée. Exécutez `/install-github-app` à nouveau plus tard pour terminer les étapes de workflow et de secret. Avant v2.1.187, Claude Code procédait directement à la sélection du workflow.
50 52
51<Note>53<Note>
52 * Vous devez être administrateur du repository pour installer l'application GitHub et ajouter des secrets54 * Lorsque vous installez la GitHub App, vous lui accordez plusieurs permissions. Consultez [Permissions de la GitHub App](#github-app-permissions) pour l'ensemble complet
53 * L'application GitHub demandera des permissions de lecture et d'écriture pour Contents, Issues et Pull requests55 * La configuration rapide fonctionne avec l'API Claude et les abonnements Claude. Si vous utilisez Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry, consultez [Utiliser Claude Code GitHub Actions avec les fournisseurs cloud](/docs/fr/github-actions-cloud-providers)
54 * Cette méthode de démarrage rapide n'est disponible que pour les utilisateurs directs de l'API Claude. Si vous utilisez Amazon Bedrock ou Google Cloud's Agent Platform, veuillez consulter la section [Utilisation avec Amazon Bedrock et Google Cloud](#using-with-amazon-bedrock-and-google-cloud).
55</Note>56</Note>
56 57
57<h2 id="manual-setup">58<h3 id="manual-setup">
58 Configuration manuelle59 Configuration manuelle
59</h2>60</h3>
61
62Pour configurer la GitHub Action Claude Code sans exécuter `/install-github-app`, installez l'app, ajoutez un secret et copiez un fichier de workflow vous-même :
63
64<Steps>
65 <Step title="Installer la Claude GitHub App">
66 Installez la [Claude GitHub App](https://github.com/apps/claude) sur votre repository. La GitHub Action Claude Code s'appuie sur trois des permissions de l'app :
67
68 * **Contents** : lecture et écriture, pour que Claude puisse modifier les fichiers du repository
69 * **Issues** : lecture et écriture, pour que Claude puisse répondre aux issues
70 * **Pull requests** : lecture et écriture, pour que Claude puisse créer des PRs et pousser des modifications
60 71
61Si la commande `/install-github-app` échoue ou si vous préférez une configuration manuelle, veuillez suivre ces instructions de configuration manuelle :72 Lors de l'installation, vous accordez également des permissions que d'autres fonctionnalités Claude utilisent. Consultez [Permissions de la GitHub App](#github-app-permissions) pour l'ensemble complet.
73 </Step>
62 74
631. **Installez l'application Claude GitHub** dans votre repository : [https://github.com/apps/claude](https://github.com/apps/claude)75 <Step title="Ajouter un secret d'authentification">
76 Ajoutez l'un des secrets suivants à votre repository, selon votre mode d'authentification. Consultez le guide de GitHub sur [l'utilisation des secrets dans GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).
64 77
65 L'application Claude GitHub nécessite les permissions de repository suivantes :78 * `ANTHROPIC_API_KEY` : une clé API Claude de la [Claude Console](https://platform.claude.com)
79 * `CLAUDE_CODE_OAUTH_TOKEN` : un token OAuth qui s'authentifie avec votre abonnement Claude, disponible sur les plans Pro, Max, Team et Enterprise. Générez-en un en exécutant `claude setup-token` localement. Consultez [Générer un token de longue durée](/docs/fr/authentication#generate-a-long-lived-token)
66 80
67 * **Contents** : Lecture et écriture (pour modifier les fichiers du repository)81 Dans les fichiers de workflow, passez le secret à l'entrée correspondante : `anthropic_api_key` pour une clé API, ou `claude_code_oauth_token` pour un token OAuth.
68 * **Issues** : Lecture et écriture (pour répondre aux issues)82 </Step>
69 * **Pull requests** : Lecture et écriture (pour créer des PRs et pousser les changements)
70 83
71 Pour plus de détails sur la sécurité et les permissions, consultez la [documentation de sécurité](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).84 <Step title="Copier le fichier de workflow">
722. **Ajoutez ANTHROPIC\_API\_KEY** à vos secrets de repository ([Apprenez comment utiliser les secrets dans GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions))85 Copiez [examples/claude.yml](https://github.com/anthropics/claude-code-action/blob/main/examples/claude.yml) dans le répertoire `.github/workflows/` de votre repository. Le fichier est un workflow fonctionnel, pas seulement un exemple. Tel qu'enregistré, 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 ajouté `CLAUDE_CODE_OAUTH_TOKEN` à la place, changez la ligne `anthropic_api_key` du workflow en `claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}`.
733. **Copiez le fichier de flux de travail** depuis [examples/claude.yml](https://github.com/anthropics/claude-code-action/blob/main/examples/claude.yml) dans le répertoire `.github/workflows/` de votre repository86 </Step>
87</Steps>
74 88
75<Tip>89<Tip>
76 Après avoir complété la configuration rapide ou manuelle, testez l'action en marquant `@claude` dans un commentaire d'issue ou de PR.90 Après la configuration, testez la GitHub Action Claude Code en marquant `@claude` dans un commentaire d'issue ou de PR.
77</Tip>91</Tip>
78 92
79<h2 id="upgrading-from-beta">93<h3 id="set-up-for-an-organization">
80 Mise à niveau depuis la version bêta94 Configurer pour une organisation
81</h2>95</h3>
82 96
83<Warning>97Avec la configuration rapide ou manuelle, vous configurez un repository à la fois. Pour déployer la GitHub Action Claude Code dans une organisation :
84 Claude Code GitHub Actions v1.0 introduit des changements majeurs qui nécessitent de mettre à jour vos fichiers de flux de travail pour passer de la version bêta à v1.0.
85</Warning>
86 98
87Si vous utilisez actuellement la version bêta de Claude Code GitHub Actions, nous vous recommandons de mettre à jour vos flux de travail pour utiliser la version GA. La nouvelle version simplifie la configuration tout en ajoutant des fonctionnalités puissantes comme la détection automatique du mode.99* Installez la [Claude GitHub App](https://github.com/apps/claude) une fois au niveau de l'organisation, en choisissant tous les repositories ou une liste sélectionnée
100* Stockez le secret d'authentification en tant que secret Actions au niveau de l'organisation pour que chaque repository n'ait pas besoin de sa propre copie
101* Ajoutez le fichier de workflow à chaque repository qui devrait exécuter la GitHub Action Claude Code, ou définissez le job une fois en tant que [workflow réutilisable](https://docs.github.com/en/actions/using-workflows/reusing-workflows) que chaque repository appelle
88 102
89<h3 id="essential-changes">103Pour un secret partagé entre les repositories, authentifiez-vous avec une clé API de la [Claude Console](https://platform.claude.com) plutôt qu'un token OAuth, car un token OAuth est lié à l'abonnement de la personne qui a exécuté `claude setup-token`.
90 Changements essentiels104
91</h3>105Pour éviter de stocker un secret de longue durée, authentifiez-vous via la fédération d'identité de charge de travail, où la GitHub Action Claude Code échange le token GitHub OpenID Connect (OIDC) du workflow pour l'accès à l'API Claude via un compte de service de la Claude Console. Définissez ces entrées :
106
107* `anthropic_federation_rule_id` : l'ID de la règle de fédération, `fdrl_...`
108* `anthropic_organization_id` : votre ID d'organisation Anthropic
109* `anthropic_service_account_id` : l'ID du compte de service, `svac_...`. Optionnel, car la règle de fédération que vous créez dans la Console cible déjà un compte de service
110* `anthropic_workspace_id` : l'ID de l'espace de travail, `wrkspc_...`. Optionnel lorsque la règle de fédération cible un seul espace de travail
92 111
93Tous les utilisateurs bêta doivent apporter ces changements à leurs fichiers de flux de travail pour mettre à niveau :112Accordez au workflow la permission `id-token: write`, que la GitHub Action Claude Code nécessite pour l'échange de fédération même lorsque vous passez votre propre `github_token`. Consultez le [guide de configuration de la GitHub Action Claude Code](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md) pour la configuration côté Console.
94 113
951. **Mettez à jour la version de l'action** : Changez `@beta` en `@v1`114Pour les questions de traitement et de rétention des données dans un examen de sécurité, consultez [utilisation des données](/docs/fr/data-usage) et [sécurité](/docs/fr/security).
962. **Supprimez la configuration du mode** : Supprimez `mode: "tag"` ou `mode: "agent"` (maintenant détecté automatiquement)
973. **Mettez à jour les entrées de prompt** : Remplacez `direct_prompt` par `prompt`
984. **Déplacez les options CLI** : Convertissez `max_turns`, `model`, `custom_instructions`, etc. en `claude_args`
99 115
100<h3 id="breaking-changes-reference">116<h3 id="uninstall">
101 Référence des changements majeurs117 Désinstaller
102</h3>118</h3>
103 119
104| Ancienne entrée bêta | Nouvelle entrée v1.0 |120Pour supprimer la GitHub Action Claude Code, annulez chaque partie de la configuration qui s'applique à votre installation :
105| --------------------- | ---------------------------------------- |121
106| `mode` | *(Supprimée - détectée automatiquement)* |122* **Fichiers de workflow** : supprimez les workflows qui utilisent `anthropics/claude-code-action` de `.github/workflows/`. Si vous avez utilisé la configuration rapide, recherchez `claude.yml` et, si vous avez sélectionné le workflow de révision, `claude-code-review.yml`. Avec les workflows supprimés, la GitHub Action Claude Code ne s'exécute plus
107| `direct_prompt` | `prompt` |123* **Secrets** : supprimez le secret `ANTHROPIC_API_KEY` ou `CLAUDE_CODE_OAUTH_TOKEN` du repository, et des secrets Actions au niveau de l'organisation si vous l'[avez partagé entre les repositories](#set-up-for-an-organization). Si vous supprimez un secret, les credentials qu'il contenait restent valides. Pour retirer complètement une clé API, supprimez également la clé dans la [Claude Console](https://platform.claude.com)
108| `override_prompt` | `prompt` avec variables GitHub |124* **GitHub App** : désinstallez la Claude GitHub App dans les paramètres de votre repository ou organisation sous GitHub Apps, mais seulement si vous ne l'utilisez pas pour une autre fonctionnalité Claude, comme Code Review ou auto-fix web
109| `custom_instructions` | `claude_args: --append-system-prompt` |125
110| `max_turns` | `claude_args: --max-turns` |126Si vous avez configuré un [fournisseur cloud](/docs/fr/github-actions-cloud-providers), supprimez également les secrets du fournisseur, comme `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`.
111| `model` | `claude_args: --model` |127
112| `allowed_tools` | `claude_args: --allowedTools` |128<h3 id="github-app-permissions">
113| `disallowed_tools` | `claude_args: --disallowedTools` |129 Permissions de la GitHub App
114| `claude_env` | `settings` format JSON |
115
116<h3 id="before-and-after-example">
117 Exemple avant et après
118</h3>130</h3>
119 131
120**Version bêta :**132La [Claude GitHub App](https://github.com/apps/claude) est partagée par chaque fonctionnalité Claude qui s'intègre à GitHub, y compris la GitHub Action Claude Code, [Code Review](/docs/fr/code-review) et [auto-fix pour les pull requests](/docs/fr/claude-code-on-the-web#auto-fix-pull-requests) sur Claude Code sur le web. Une GitHub App a un ensemble de permissions unique couvrant toutes ses fonctionnalités, donc l'ensemble inclut certaines permissions que la GitHub Action Claude Code n'utilise pas.
121 133
122```yaml theme={null}134Lorsque vous installez l'app, vous accordez les permissions suivantes :
123- uses: anthropics/claude-code-action@beta
124 with:
125 mode: "tag"
126 direct_prompt: "Review this PR for security issues"
127 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
128 custom_instructions: "Follow our coding standards"
129 max_turns: "10"
130 model: "claude-sonnet-5"
131```
132 135
133**Version GA (v1.0) :**136| Permission | Accès |
137| ---------------- | ------------------- |
138| Actions | Lecture et écriture |
139| Checks | Lecture et écriture |
140| Contents | Lecture et écriture |
141| Discussions | Lecture et écriture |
142| Issues | Lecture et écriture |
143| Members | Lecture |
144| Metadata | Lecture |
145| Pull requests | Lecture et écriture |
146| Repository hooks | Lecture et écriture |
147| Statuses | Lecture |
148| Workflows | Lecture et écriture |
134 149
135```yaml theme={null}150L'ensemble de permissions peut également changer avant les fonctionnalités qui l'utilisent. Lorsque l'app demande une permission qu'elle n'avait pas auparavant, GitHub demande au propriétaire du compte de l'approuver, à un propriétaire d'organisation pour une installation d'organisation, et l'installation conserve ses anciennes permissions jusqu'à ce qu'ils le fassent. Par exemple, lorsque l'accès Actions passe de lecture à écriture, l'app peut réexécuter les workflows plutôt que seulement afficher les exécutions et les journaux, donc GitHub demande au propriétaire d'approuver le changement.
136- uses: anthropics/claude-code-action@v1
137 with:
138 prompt: "Review this PR for security issues"
139 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
140 claude_args: |
141 --append-system-prompt "Follow our coding standards"
142 --max-turns 10
143 --model claude-sonnet-5
144```
145 151
146<Tip>152Lorsque vous installez l'app, vous acceptez son ensemble de permissions complet. GitHub ne vous permet pas d'accepter un sous-ensemble. Si votre organisation nécessite uniquement les permissions que la GitHub Action Claude Code utilise, créez une GitHub App personnalisée avec Contents, Issues et Pull requests à la place, en suivant le [guide de configuration de la GitHub Action Claude Code](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md). Une app personnalisée couvre uniquement la GitHub Action Claude Code. Code Review et auto-fix web nécessitent toujours l'app officielle.
147 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.153
148</Tip>154Pour plus de détails sur la façon dont la GitHub Action Claude Code limite ce que Claude peut faire avec ces permissions, consultez la [documentation de sécurité](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).
155
156<h2 id="interactive-and-automation-modes">
157 Modes interactif et automatisation
158</h2>
159
160La GitHub Action Claude Code détecte comment s'exécuter à partir de votre configuration de workflow :
161
162* **Mode interactif** : lorsque le workflow ne fournit pas d'entrée `prompt`, Claude attend la phrase de déclenchement, `@claude` par 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.
163* **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](#who-can-trigger-runs). 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](#run-a-skill).
164
165<h3 id="who-can-trigger-runs">
166 Qui peut déclencher les exécutions
167</h3>
168
169Dans 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 :
170
171* **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_users` et passez votre propre entrée `github_token`. Les événements qu'aucun utilisateur n'auteur, comme un déclencheur `schedule`, ignorent cette vérification.
172* **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 calendrier `cron` du workflow. Si cet utilisateur est un bot, listez-le dans `allowed_bots`.
149 173
150<h2 id="example-use-cases">174<h2 id="example-use-cases">
151 Exemples de cas d'usage175 Exemples de cas d'usage
152</h2>176</h2>
153 177
154Claude Code GitHub Actions peut vous aider avec une variété de tâches. Le [répertoire d'exemples](https://github.com/anthropics/claude-code-action/tree/main/examples) contient des flux de travail prêts à l'emploi pour différents scénarios.178Le [répertoire d'exemples](https://github.com/anthropics/claude-code-action/tree/main/examples) contient des workflows prêts à l'emploi pour différents scénarios.
179
180Les exemples de cette page montrent l'authentification par clé API. Si vous vous authentifiez avec un abonnement Claude, remplacez la ligne `anthropic_api_key` dans n'importe quel exemple par `claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}`.
155 181
156<h3 id="basic-workflow">182<h3 id="respond-to-claude-mentions">
157 Flux de travail basique183 Répondre aux mentions @claude
158</h3>184</h3>
159 185
186Ce 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.
187
160```yaml theme={null}188```yaml theme={null}
161name: Claude Code189name: Claude Code
162on:190on:
166 types: [created]194 types: [created]
167jobs:195jobs:
168 claude:196 claude:
197 if: contains(github.event.comment.body, '@claude')
169 runs-on: ubuntu-latest198 runs-on: ubuntu-latest
199 permissions:
200 contents: write
201 pull-requests: write
202 issues: write
203 id-token: write
204 actions: read
170 steps:205 steps:
206 - uses: actions/checkout@v6
207 with:
208 fetch-depth: 1
171 - uses: anthropics/claude-code-action@v1209 - uses: anthropics/claude-code-action@v1
172 with:210 with:
173 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}211 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
174 # Responds to @claude mentions in comments
175```212```
176 213
177<h3 id="using-skills">214Les parties de ce workflow qui ne sont pas du code standard :
178 Utilisation de skills215
216* `id-token: write` : requis pour l'authentification GitHub App par défaut de la GitHub Action Claude Code
217* `actions: read` : permet à Claude de lire les résultats CI sur les PRs
218* `actions/checkout` : donne à Claude une copie locale du repository pour travailler
219* `if` : 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
220
221Une fois le workflow en place, mentionnez `@claude` dans n'importe quel commentaire d'issue ou de PR avec une demande :
222
223```text wrap theme={null}
224@claude implement this feature based on the issue description
225@claude how should I implement user authentication for this endpoint?
226@claude fix the TypeError in the user dashboard component
227```
228
229Claude répond dans un commentaire sur la même issue ou PR et le met à jour au fur et à mesure qu'il travaille.
230
231<h3 id="run-a-skill">
232 Exécuter une skill
179</h3>233</h3>
180 234
181L'entrée `prompt` accepte une [invocation de skill](/fr/skills) ainsi que du texte brut :235L'entrée `prompt` accepte une invocation de [skill](/docs/fr/skills) ainsi que du texte brut :
182 236
183* Pour un skill dans le répertoire `.claude/skills/` de votre référentiel, exécutez `actions/checkout` avant l'étape d'action et passez `/skill-name`.237* Pour une skill dans le répertoire `.claude/skills/` de votre repository, exécutez `actions/checkout` avant l'étape `anthropics/claude-code-action` pour que les fichiers de skill soient disponibles sur le runner, puis passez `/skill-name` comme `prompt`.
184* Pour un skill empaqueté dans un plugin, installez le plugin avec les entrées `plugin_marketplaces` et `plugins` et passez le `/plugin-name:skill-name` avec espace de noms.238* Pour une skill emballée dans un [plugin](/docs/fr/plugins), installez le plugin avec les entrées `plugin_marketplaces` et `plugins`, puis passez le `/plugin-name:skill-name` avec espace de noms comme `prompt`. L'entrée `plugins` prend `plugin-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.
185 239
186Le flux de travail suivant installe le plugin `code-review` et exécute son skill sur chaque pull request nouvelle ou mise à jour :240Le workflow suivant installe le plugin `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](/docs/fr/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.
187 241
188```yaml theme={null}242```yaml theme={null}
189name: Code Review243name: Code Review
190on:244on:
191 pull_request:245 pull_request:
192 types: [opened, synchronize]246 types: [opened, synchronize, ready_for_review, reopened]
193jobs:247jobs:
194 review:248 review:
195 runs-on: ubuntu-latest249 runs-on: ubuntu-latest
250 permissions:
251 contents: read
252 pull-requests: read
253 issues: read
254 id-token: write
196 steps:255 steps:
256 - uses: actions/checkout@v6
257 with:
258 fetch-depth: 1
197 - uses: anthropics/claude-code-action@v1259 - uses: anthropics/claude-code-action@v1
198 with:260 with:
199 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}261 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
200 plugin_marketplaces: "https://github.com/anthropics/claude-code.git"262 plugin_marketplaces: "https://github.com/anthropics/claude-code.git"
201 plugins: "code-review@claude-code-plugins"263 plugins: "code-review@claude-code-plugins"
202 prompt: "/code-review:code-review ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"264 prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"
265 claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'
203```266```
204 267
205<h3 id="custom-automation-with-prompts">268Deux lignes dans ce workflow contrôlent où la révision va :
206 Automatisation personnalisée avec prompts269
270* **`--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.
271* **`claude_args`** : conservez cette ligne même si la frontmatter `allowed-tools` propre 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 `--allowedTools` dans `claude_args` le nomme.
272
273Claude ignore les pull requests brouillon et fermées, les pull requests qu'il juge ne pas avoir besoin d'une révision, comme les pull requests automatisées ou triviales, et les pull requests qui ont déjà un commentaire de Claude.
274
275<h3 id="run-on-a-schedule">
276 Exécuter selon un calendrier
207</h3>277</h3>
208 278
279Avec une entrée `prompt`, 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`](/docs/fr/permissions#permission-rule-syntax) dans l'entrée `settings`. Si vous invoquez une skill à la place, Claude peut utiliser les outils que sa [frontmatter `allowed-tools`](/docs/fr/skills#pre-approve-tools-for-a-skill) 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.
280
281Ce 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](#pass-cli-arguments) 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 :
282
209```yaml theme={null}283```yaml theme={null}
210name: Daily Report284name: Daily Report
211on:285on:
214jobs:288jobs:
215 report:289 report:
216 runs-on: ubuntu-latest290 runs-on: ubuntu-latest
291 permissions:
292 contents: read
293 issues: read
294 id-token: write
217 steps:295 steps:
218 - uses: anthropics/claude-code-action@v1296 - uses: anthropics/claude-code-action@v1
219 with:297 with:
220 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}298 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
221 prompt: "Generate a summary of yesterday's commits and open issues"299 prompt: "Generate a summary of yesterday's commits and open issues"
222 claude_args: "--model opus"300 claude_args: |
223```301 --model claude-opus-4-8
224 302 --allowedTools "mcp__github__list_commits,mcp__github__list_issues"
225<h3 id="common-use-cases">
226 Cas d'usage courants
227</h3>
228
229Dans les commentaires d'issue ou de PR :
230
231```text wrap theme={null}
232@claude implement this feature based on the issue description
233@claude how should I implement user authentication for this endpoint?
234@claude fix the TypeError in the user dashboard component
235```303```
236 304
237Claude analysera automatiquement le contexte et répondra de manière appropriée.
238
239<h2 id="best-practices">305<h2 id="best-practices">
240 Bonnes pratiques306 Bonnes pratiques
241</h2>307</h2>
242 308
243<h3 id="claude-md-configuration">309<h3 id="define-project-standards-in-claude-md">
244 Configuration CLAUDE.md310 Définir les normes du projet dans CLAUDE.md
245</h3>311</h3>
246 312
247Créez un fichier `CLAUDE.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. Ce fichier guide la compréhension de Claude des normes de votre projet.313Créez un fichier `CLAUDE.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](/docs/fr/memory) pour plus de détails.
248 314
249<h3 id="security-considerations">315<h3 id="protect-your-credentials">
250 Considérations de sécurité316 Protéger vos credentials
251</h3>317</h3>
252 318
253<Warning>Ne commitez jamais les clés API directement dans votre repository.</Warning>319<Warning>
254 320 Ne commitez jamais les clés API ou les tokens OAuth directement dans votre repository. Stockez-les toujours en tant que GitHub Secrets et référencez-les dans les workflows, par exemple `anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}`.
255Pour des conseils de sécurité complets incluant les permissions, l'authentification et les bonnes pratiques, consultez la [documentation de sécurité de Claude Code Action](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).321</Warning>
256
257Utilisez toujours GitHub Secrets pour les clés API :
258
259* Ajoutez votre clé API en tant que secret de repository nommé `ANTHROPIC_API_KEY`
260* Référencez-la dans les flux de travail : `anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}`
261* Limitez les permissions de l'action à ce qui est nécessaire uniquement
262* Examinez les suggestions de Claude avant de fusionner
263
264Utilisez toujours GitHub Secrets (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.
265 322
266<h3 id="optimizing-performance">323Accordez au workflow uniquement les permissions dont il a besoin et examinez les modifications de Claude avant de fusionner.
267 Optimisation des performances
268</h3>
269 324
270Utilisez les modèles d'issue pour fournir du contexte, gardez votre `CLAUDE.md` concis et ciblé, et configurez les délais d'attente appropriés pour vos flux de travail.325Pour des conseils de sécurité complets incluant les permissions et l'authentification, consultez la [documentation de sécurité de la GitHub Action Claude Code](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).
271 326
272<h3 id="ci-costs">327<h3 id="manage-costs">
273 Coûts CI328 Gérer les coûts
274</h3>329</h3>
275 330
276Lorsque vous utilisez Claude Code GitHub Actions, soyez conscient des coûts associés :331Chaque exécution consomme deux types de ressources :
277
278**Coûts GitHub Actions :**
279 332
280* Claude Code s'exécute sur les runners hébergés par GitHub, qui consomment vos minutes GitHub Actions333* **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](https://docs.github.com/en/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions) pour les tarifs et les limites de minutes.
281* Consultez la [documentation de facturation de GitHub](https://docs.github.com/en/billing/managing-billing-for-your-products/managing-billing-for-github-actions/about-billing-for-github-actions) pour les tarifs détaillés et les limites de minutes334* **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](https://claude.com/platform/api) 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.
282 335
283**Coûts API :**336Vous pouvez réduire les deux types de coûts en donnant à Claude un contexte plus clair et en limitant la quantité de travail que chaque exécution peut faire :
284 337
285* Chaque interaction Claude consomme des tokens API en fonction de la longueur des prompts et des réponses338* Écrivez des demandes `@claude` spécifiques pour que Claude ait besoin de moins de tours pour terminer
286* L'utilisation des tokens varie selon la complexité de la tâche et la taille de la base de code339* Utilisez les modèles d'issue pour fournir du contexte à l'avance
287* Consultez la [page de tarification de Claude](https://claude.com/platform/api) pour les tarifs actuels des tokens340* Gardez votre `CLAUDE.md` concis, car Claude le lit à chaque exécution
341* Définissez `--max-turns` dans `claude_args` pour limiter les itérations
342* Définissez les délais d'attente au niveau du workflow pour éviter les jobs qui s'exécutent indéfiniment
343* Utilisez les contrôles de concurrence de GitHub pour limiter les exécutions parallèles
288 344
289**Conseils d'optimisation des coûts :**345Pour le suivi de l'utilisation dans votre organisation, consultez le [tableau de bord d'analyse](/docs/fr/analytics) et la [surveillance](/docs/fr/monitoring-usage). Pour savoir comment l'utilisation est mesurée et facturée, consultez [coûts](/docs/fr/costs).
290 346
291* Utilisez des commandes `@claude` spécifiques pour réduire les appels API inutiles347<h2 id="use-a-cloud-provider">
292* Configurez `--max-turns` approprié dans `claude_args` pour éviter les itérations excessives348 Utiliser un fournisseur cloud
293* Définissez les délais d'attente au niveau du flux de travail pour éviter les jobs qui s'exécutent indéfiniment
294* Envisagez d'utiliser les contrôles de concurrence de GitHub pour limiter les exécutions parallèles
295
296<h2 id="configuration-examples">
297 Exemples de configuration
298</h2>349</h2>
299 350
300Claude Code Action v1 simplifie la configuration avec des paramètres unifiés :351Par 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](/docs/fr/github-actions-cloud-providers) :
301
302```yaml theme={null}
303- uses: anthropics/claude-code-action@v1
304 with:
305 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
306 prompt: "Your instructions here" # Optional
307 claude_args: "--max-turns 5" # Optional CLI arguments
308```
309
310Fonctionnalités clés :
311 352
312* **Interface de prompt unifiée** - Utilisez `prompt` pour toutes les instructions353* **Amazon Bedrock** : `use_bedrock: "true"`
313* **Skills** - Invoquez les [skills](/fr/skills) installés directement depuis le prompt354* **Google Cloud's Agent Platform** : `use_vertex: "true"`
314* **Passthrough CLI** - N'importe quel argument Claude Code CLI via `claude_args`355* **Microsoft Foundry** : `use_foundry: "true"`
315* **Déclencheurs flexibles** - Fonctionne avec n'importe quel événement GitHub
316 356
317Visitez le [répertoire d'exemples](https://github.com/anthropics/claude-code-action/tree/main/examples) pour les fichiers de flux de travail complets.357Avec les trois fournisseurs, vous vous authentifiez via la fédération d'identité OIDC au lieu d'une clé API Claude, donc vous ne stockez aucune credential cloud statique dans votre repository.
318
319<Tip>
320 Lorsque vous répondez à des commentaires d'issue ou de PR, Claude répond automatiquement aux mentions @claude. Pour les autres événements, utilisez le paramètre `prompt` pour fournir des instructions.
321</Tip>
322
323<h2 id="using-with-amazon-bedrock-and-google-cloud">
324 Utilisation avec Amazon Bedrock et Google Cloud
325</h2>
326
327Pour 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.
328
329<h3 id="prerequisites">
330 Prérequis
331</h3>
332
333Avant de configurer Claude Code GitHub Actions avec les fournisseurs cloud, vous avez besoin de :
334
335<h4 id="for-google-cloud’s-agent-platform">
336 Pour Google Cloud's Agent Platform :
337</h4>
338
3391. Un projet Google Cloud avec Google Cloud's Agent Platform activé
3402. Workload Identity Federation configuré pour GitHub Actions
3413. Un compte de service avec les permissions requises
3424. Une application GitHub (recommandée) ou utilisez le GITHUB\_TOKEN par défaut
343
344<h4 id="for-amazon-bedrock">
345 Pour Amazon Bedrock :
346</h4>
347
3481. Un compte AWS avec Amazon Bedrock activé
3492. GitHub OIDC Identity Provider configuré dans AWS
3503. Un rôle IAM avec les permissions Amazon Bedrock
3514. Une application GitHub (recommandée) ou utilisez le GITHUB\_TOKEN par défaut
352
353<Steps>
354 <Step title="Créer une application GitHub personnalisée (Recommandée pour les fournisseurs tiers)">
355 Pour un meilleur contrôle et une meilleure sécurité lors de l'utilisation de fournisseurs tiers comme Google Cloud's Agent Platform ou Amazon Bedrock, nous recommandons de créer votre propre application GitHub :
356
357 1. Allez à [https://github.com/settings/apps/new](https://github.com/settings/apps/new)
358 2. Remplissez les informations de base :
359 * **Nom de l'application GitHub** : Choisissez un nom unique (par exemple, ' YourOrg Claude Assistant ')
360 * **URL de la page d'accueil** : Le site web de votre organisation ou l'URL du repository
361 3. Configurez les paramètres de l'application :
362 * **Webhooks** : Décochez ' Active ' (non nécessaire pour cette intégration)
363 4. Définissez les permissions requises :
364 * **Permissions du repository** :
365 * Contents : Lecture et écriture
366 * Issues : Lecture et écriture
367 * Pull requests : Lecture et écriture
368 5. Cliquez sur ' Create GitHub App '
369 6. Après la création, cliquez sur ' Generate a private key ' et enregistrez le fichier `.pem` téléchargé
370 7. Notez votre ID d'application à partir de la page des paramètres de l'application
371 8. Installez l'application dans votre repository :
372 * À partir de la page des paramètres de votre application, cliquez sur ' Install App ' dans la barre latérale gauche
373 * Sélectionnez votre compte ou organisation
374 * Choisissez ' Only select repositories ' et sélectionnez le repository spécifique
375 * Cliquez sur ' Install '
376 9. Ajoutez la clé privée en tant que secret à votre repository :
377 * Allez à Settings → Secrets and variables → Actions de votre repository
378 * Créez un nouveau secret nommé `APP_PRIVATE_KEY` avec le contenu du fichier `.pem`
379 10. Ajoutez l'ID de l'application en tant que secret :
380
381 * Créez un nouveau secret nommé `APP_ID` avec l'ID de votre application GitHub
382
383 <Note>
384 Cette application sera utilisée avec l'action [actions/create-github-app-token](https://github.com/actions/create-github-app-token) pour générer des tokens d'authentification dans vos flux de travail.
385 </Note>
386
387 **Alternative pour l'API Claude ou si vous ne voulez pas configurer votre propre application Github** : Utilisez l'application officielle Anthropic :
388
389 1. Installez depuis : [https://github.com/apps/claude](https://github.com/apps/claude)
390 2. Aucune configuration supplémentaire nécessaire pour l'authentification
391 </Step>
392
393 <Step title="Configurer l'authentification du fournisseur cloud">
394 Choisissez votre fournisseur cloud et configurez l'authentification sécurisée :
395
396 <AccordionGroup>
397 <Accordion title="Amazon Bedrock">
398 **Configurez AWS pour permettre à GitHub Actions de s'authentifier de manière sécurisée sans stocker les credentials.**
399
400 > **Note de sécurité** : Utilisez des configurations spécifiques au repository et accordez uniquement les permissions minimales requises.
401
402 **Configuration requise** :
403
404 1. **Activez Amazon Bedrock** :
405 * Demandez l'accès aux modèles Claude dans Amazon Bedrock
406 * Pour les modèles multi-régions, demandez l'accès dans toutes les régions requises
407
408 2. **Configurez le fournisseur d'identité GitHub OIDC** :
409 * URL du fournisseur : `https://token.actions.githubusercontent.com`
410 * Audience : `sts.amazonaws.com`
411
412 3. **Créez un rôle IAM pour GitHub Actions** :
413 * Type d'entité de confiance : Web identity
414 * Fournisseur d'identité : `token.actions.githubusercontent.com`
415 * Permissions : politique `AmazonBedrockFullAccess`
416 * Configurez la politique de confiance pour votre repository spécifique
417
418 **Valeurs requises** :
419
420 Après la configuration, vous aurez besoin de :
421
422 * **AWS\_ROLE\_TO\_ASSUME** : L'ARN du rôle IAM que vous avez créé
423
424 <Tip>
425 OIDC est plus sécurisé que l'utilisation de clés d'accès AWS statiques car les credentials sont temporaires et automatiquement renouvelés.
426 </Tip>
427
428 Consultez la [documentation AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc.html) pour les instructions détaillées de configuration OIDC.
429 </Accordion>
430
431 <Accordion title="Google Cloud's Agent Platform">
432 **Configurez Google Cloud pour permettre à GitHub Actions de s'authentifier de manière sécurisée sans stocker les credentials.**
433
434 > **Note de sécurité** : Utilisez des configurations spécifiques au repository et accordez uniquement les permissions minimales requises.
435
436 **Configuration requise** :
437
438 1. **Activez les APIs** dans votre projet Google Cloud :
439 * IAM Credentials API
440 * Security Token Service (STS) API
441 * Google Cloud's Agent Platform API
442
443 2. **Créez les ressources Workload Identity Federation** :
444 * Créez un Workload Identity Pool
445 * Ajoutez un fournisseur GitHub OIDC avec :
446 * Émetteur : `https://token.actions.githubusercontent.com`
447 * Mappages d'attributs pour le repository et le propriétaire
448 * **Recommandation de sécurité** : Utilisez des conditions d'attribut spécifiques au repository
449
450 3. **Créez un compte de service** :
451 * Accordez uniquement le rôle `Vertex AI User`
452 * **Recommandation de sécurité** : Créez un compte de service dédié par repository
453
454 4. **Configurez les liaisons IAM** :
455 * Autorisez le Workload Identity Pool à emprunter l'identité du compte de service
456 * **Recommandation de sécurité** : Utilisez des ensembles de principaux spécifiques au repository
457
458 **Valeurs requises** :
459
460 Après la configuration, vous aurez besoin de :
461
462 * **GCP\_WORKLOAD\_IDENTITY\_PROVIDER** : Le nom complet de la ressource du fournisseur
463 * **GCP\_SERVICE\_ACCOUNT** : L'adresse e-mail du compte de service
464
465 <Tip>
466 Workload Identity Federation élimine le besoin de clés de compte de service téléchargeables, améliorant la sécurité.
467 </Tip>
468
469 Pour les instructions de configuration détaillées, consultez la [documentation Google Cloud Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation).
470 </Accordion>
471 </AccordionGroup>
472 </Step>
473
474 <Step title="Ajouter les secrets requis">
475 Ajoutez les secrets suivants à votre repository (Settings → Secrets and variables → Actions) :
476
477 #### Pour l'API Claude (Direct) :
478
479 1. **Pour l'authentification API** :
480 * `ANTHROPIC_API_KEY` : Votre clé API Claude depuis [console.anthropic.com](https://console.anthropic.com)
481
482 2. **Pour l'application GitHub (si vous utilisez votre propre application)** :
483 * `APP_ID` : L'ID de votre application GitHub
484 * `APP_PRIVATE_KEY` : Le contenu de la clé privée (.pem)
485
486 #### Pour Google Cloud's Agent Platform
487
488 1. **Pour l'authentification GCP** :
489 * `GCP_WORKLOAD_IDENTITY_PROVIDER`
490 * `GCP_SERVICE_ACCOUNT`
491
492 2. **Pour l'application GitHub (si vous utilisez votre propre application)** :
493 * `APP_ID` : L'ID de votre application GitHub
494 * `APP_PRIVATE_KEY` : Le contenu de la clé privée (.pem)
495
496 #### Pour AWS Bedrock
497
498 1. **Pour l'authentification AWS** :
499 * `AWS_ROLE_TO_ASSUME`
500
501 2. **Pour l'application GitHub (si vous utilisez votre propre application)** :
502 * `APP_ID` : L'ID de votre application GitHub
503 * `APP_PRIVATE_KEY` : Le contenu de la clé privée (.pem)
504 </Step>
505
506 <Step title="Créer des fichiers de flux de travail">
507 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 Amazon Bedrock et Google Cloud's Agent Platform :
508
509 <AccordionGroup>
510 <Accordion title="Flux de travail Amazon Bedrock">
511 **Prérequis :**
512
513 * Accès Amazon Bedrock activé avec permissions de modèle Claude
514 * GitHub configuré en tant que fournisseur d'identité OIDC dans AWS
515 * Rôle IAM avec permissions Amazon Bedrock qui fait confiance à GitHub Actions
516
517 **Secrets GitHub requis :**
518
519 | Nom du secret | Description |
520 | -------------------- | ------------------------------------------------------------------------ |
521 | `AWS_ROLE_TO_ASSUME` | ARN du rôle IAM pour l'accès à Amazon Bedrock |
522 | `APP_ID` | Votre ID d'application GitHub (à partir des paramètres de l'application) |
523 | `APP_PRIVATE_KEY` | La clé privée que vous avez générée pour votre application GitHub |
524
525 ```yaml theme={null}
526 name: Claude PR Action
527
528 permissions:
529 contents: write
530 pull-requests: write
531 issues: write
532 id-token: write
533
534 on:
535 issue_comment:
536 types: [created]
537 pull_request_review_comment:
538 types: [created]
539 issues:
540 types: [opened, assigned]
541
542 jobs:
543 claude-pr:
544 if: |
545 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
546 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
547 (github.event_name == 'issues' && contains(github.event.issue.body, '@claude'))
548 runs-on: ubuntu-latest
549 env:
550 AWS_REGION: us-west-2
551 steps:
552 - name: Checkout repository
553 uses: actions/checkout@v4
554
555 - name: Generate GitHub App token
556 id: app-token
557 uses: actions/create-github-app-token@v2
558 with:
559 app-id: ${{ secrets.APP_ID }}
560 private-key: ${{ secrets.APP_PRIVATE_KEY }}
561
562 - name: Configure AWS Credentials (OIDC)
563 uses: aws-actions/configure-aws-credentials@v4
564 with:
565 role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}
566 aws-region: us-west-2
567
568 - uses: anthropics/claude-code-action@v1
569 with:
570 github_token: ${{ steps.app-token.outputs.token }}
571 use_bedrock: "true"
572 claude_args: '--model us.anthropic.claude-sonnet-4-6 --max-turns 10'
573 ```
574
575 <Tip>
576 Le format d'ID de modèle pour Amazon Bedrock inclut un préfixe de région (par exemple, `us.anthropic.claude-sonnet-4-6`).
577 </Tip>
578 </Accordion>
579
580 <Accordion title="Flux de travail Google Cloud's Agent Platform">
581 **Prérequis :**
582
583 * Google Cloud's Agent Platform API activée dans votre projet GCP
584 * Workload Identity Federation configurée pour GitHub
585 * Compte de service avec permissions Google Cloud's Agent Platform
586
587 **Secrets GitHub requis :**
588
589 | Nom du secret | Description |
590 | -------------------------------- | ------------------------------------------------------------------------ |
591 | `GCP_WORKLOAD_IDENTITY_PROVIDER` | Nom de ressource du fournisseur d'identité de charge de travail |
592 | `GCP_SERVICE_ACCOUNT` | E-mail du compte de service avec accès à Google Cloud's Agent Platform |
593 | `APP_ID` | Votre ID d'application GitHub (à partir des paramètres de l'application) |
594 | `APP_PRIVATE_KEY` | La clé privée que vous avez générée pour votre application GitHub |
595
596 ```yaml theme={null}
597 name: Claude PR Action
598
599 permissions:
600 contents: write
601 pull-requests: write
602 issues: write
603 id-token: write
604
605 on:
606 issue_comment:
607 types: [created]
608 pull_request_review_comment:
609 types: [created]
610 issues:
611 types: [opened, assigned]
612
613 jobs:
614 claude-pr:
615 if: |
616 (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
617 (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
618 (github.event_name == 'issues' && contains(github.event.issue.body, '@claude'))
619 runs-on: ubuntu-latest
620 steps:
621 - name: Checkout repository
622 uses: actions/checkout@v4
623
624 - name: Generate GitHub App token
625 id: app-token
626 uses: actions/create-github-app-token@v2
627 with:
628 app-id: ${{ secrets.APP_ID }}
629 private-key: ${{ secrets.APP_PRIVATE_KEY }}
630
631 - name: Authenticate to Google Cloud
632 id: auth
633 uses: google-github-actions/auth@v2
634 with:
635 workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}
636 service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}
637
638 - uses: anthropics/claude-code-action@v1
639 with:
640 github_token: ${{ steps.app-token.outputs.token }}
641 trigger_phrase: "@claude"
642 use_vertex: "true"
643 claude_args: '--model claude-sonnet-4-5@20250929 --max-turns 10'
644 env:
645 ANTHROPIC_VERTEX_PROJECT_ID: ${{ steps.auth.outputs.project_id }}
646 CLOUD_ML_REGION: us-east5
647 VERTEX_REGION_CLAUDE_4_5_SONNET: us-east5
648 ```
649
650 <Tip>
651 L'ID du 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.
652 </Tip>
653 </Accordion>
654 </AccordionGroup>
655 </Step>
656</Steps>
657 358
658<h2 id="troubleshooting">359<h2 id="troubleshooting">
659 Dépannage360 Dépannage
663 Claude ne répond pas aux commandes @claude364 Claude ne répond pas aux commandes @claude
664</h3>365</h3>
665 366
666Vé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 repository et confirmez que le commentaire contient `@claude` (pas `/claude`).367* Vérifiez que la GitHub App est installée sur le repository
368* Vérifiez que les workflows sont activés pour le repository
369* Assurez-vous que votre clé API ou token OAuth est défini dans les secrets du repository
370* Confirmez que le commentaire contient `@claude` comme mot complet, pas `/claude` ou `@claude-bot`
371* Confirmez que l'utilisateur qui commente a un accès en écriture au repository. Consultez [Qui peut déclencher les exécutions](#who-can-trigger-runs) pour les exceptions
667 372
668<h3 id="ci-not-running-on-claude’s-commits">373<h3 id="ci-not-running-on-claude’s-commits">
669 CI ne s'exécute pas sur les commits de Claude374 CI ne s'exécute pas sur les commits de Claude
670</h3>375</h3>
671 376
672Assurez-vous que vous utilisez l'application GitHub ou une 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 permissions de l'application incluent les déclencheurs CI.377* GitHub ne déclenche pas les workflows sur les commits effectués avec le `GITHUB_TOKEN` par défaut. Si vous passez `github_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
378* Vérifiez que les déclencheurs du workflow CI incluent les événements que les pushes de Claude produisent, comme `push` ou `pull_request`
673 379
674<h3 id="authentication-errors">380<h3 id="authentication-errors">
675 Erreurs d'authentification381 Erreurs d'authentification
676</h3>382</h3>
677 383
678Confirmez que la clé API est valide et dispose des permissions suffisantes. Pour Amazon Bedrock ou la plateforme Agent de Google Cloud, vérifiez la configuration des credentials et assurez-vous que les secrets sont nommés correctement dans les flux de travail.384* Confirmez que la clé API ou le token OAuth est valide en le testant localement avec `claude` avant de déboguer le workflow
385* Pour Bedrock, Agent Platform et Foundry, consultez la [section dépannage](/docs/fr/github-actions-cloud-providers#troubleshooting) de la page du fournisseur cloud
386
387Pour plus de solutions, consultez la [FAQ](https://github.com/anthropics/claude-code-action/blob/main/docs/faq.md) de la GitHub Action Claude Code.
679 388
680<h2 id="advanced-configuration">389<h2 id="advanced-configuration">
681 Configuration avancée390 Configuration avancée
685 Paramètres de l'action394 Paramètres de l'action
686</h3>395</h3>
687 396
688Claude Code Action v1 utilise une configuration simplifiée :397Ce sont les entrées les plus couramment utilisées. Chacune correspond à une clé `with:` dans l'étape `anthropics/claude-code-action`.
689 398
690| Paramètre | Description | Requis |399| Paramètre | Description | Requis |
691| --------------------- | -------------------------------------------------------------------------------------- | ------- |400| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
692| `prompt` | Instructions pour Claude (texte brut ou un nom de [skill](/fr/skills)) | Non\* |401| `prompt` | Instructions pour Claude, en texte brut ou une invocation de [skill](/docs/fr/skills). Lorsqu'il est omis, Claude répond à la [phrase de déclenchement](#interactive-and-automation-modes) à la place | Non |
693| `claude_args` | Arguments CLI passés à Claude Code | Non |402| `claude_args` | Arguments CLI passés à Claude Code | Non |
403| `anthropic_api_key` | Clé API Claude | Pour l'API Claude, sauf si vous utilisez `claude_code_oauth_token` ou [fédération d'identité de charge de travail](#set-up-for-an-organization). Non utilisé pour Bedrock, Agent Platform ou Foundry |
404| `claude_code_oauth_token` | Token OAuth pour s'authentifier avec un abonnement Claude, généré avec `claude setup-token` | Non |
405| `github_token` | Token pour les opérations GitHub. Lorsqu'il est omis, la GitHub Action Claude Code s'authentifie en tant que Claude GitHub App | Non |
694| `plugin_marketplaces` | Liste séparée par des sauts de ligne des URL Git des places de marché de plugins | Non |406| `plugin_marketplaces` | Liste séparée par des sauts de ligne des URL Git des places de marché de plugins | Non |
695| `plugins` | Liste séparée par des sauts de ligne des noms de plugins à installer avant l'exécution | Non |407| `plugins` | Liste séparée par des sauts de ligne des noms de plugins à installer avant l'exécution | Non |
696| `anthropic_api_key` | Clé API Claude | Oui\*\* |408| `settings` | Paramètres Claude Code, en tant que chaîne JSON ou chemin vers un fichier JSON de paramètres | Non |
697| `github_token` | Token GitHub pour l'accès API | Non |409| `trigger_phrase` | Phrase de déclenchement à laquelle Claude répond. Par défaut : `@claude` | Non |
698| `trigger_phrase` | Phrase de déclenchement personnalisée (par défaut : « @claude ») | Non |
699| `use_bedrock` | Utiliser Amazon Bedrock au lieu de l'API Claude | Non |410| `use_bedrock` | Utiliser Amazon Bedrock au lieu de l'API Claude | Non |
700| `use_vertex` | Utiliser Google Cloud's Agent Platform au lieu de l'API Claude | Non |411| `use_vertex` | Utiliser Google Cloud's Agent Platform au lieu de l'API Claude | Non |
412| `use_foundry` | Utiliser Microsoft Foundry au lieu de l'API Claude | Non |
701 413
702\*Le prompt est optionnel - lorsqu'il est omis pour les commentaires d'issue/PR, Claude répond à la phrase de déclenchement\414Pour la liste complète des entrées, consultez la [référence de configuration](https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md#inputs) de la GitHub Action Claude Code.
703\*\*Requis pour l'API Claude directe, pas pour Amazon Bedrock ou Google Cloud's Agent Platform
704 415
705<h4 id="pass-cli-arguments">416<h3 id="pass-cli-arguments">
706 Passer les arguments CLI417 Passer les arguments CLI
707</h4>418</h3>
708 419
709Le paramètre `claude_args` accepte n'importe quel argument Claude Code CLI :420Le paramètre `claude_args` accepte n'importe quel [argument CLI Claude Code](/docs/fr/cli-reference) :
710 421
711```yaml theme={null}422```yaml theme={null}
712claude_args: "--max-turns 5 --model claude-sonnet-5 --mcp-config /path/to/config.json"423claude_args: "--max-turns 5 --model claude-sonnet-5 --mcp-config /path/to/config.json"
714 425
715Arguments courants :426Arguments courants :
716 427
717* `--max-turns` : Nombre maximum de tours de conversation (par défaut : 10)428* `--max-turns` : limiter le nombre de tours de conversation
718* `--model` : Modèle à utiliser (par exemple, `claude-sonnet-5`)429* `--model` : modèle à utiliser, par exemple `claude-sonnet-5`. Sans cet argument, la GitHub Action Claude Code utilise le [modèle par défaut](/docs/fr/model-config) de Claude Code
719* `--mcp-config` : Chemin vers la configuration MCP430* `--mcp-config` : chemin vers la [configuration MCP](/docs/fr/mcp)
720* `--allowedTools` : Liste séparée par des virgules des outils autorisés. L'alias `--allowed-tools` fonctionne également.431* `--allowedTools` : liste séparée par des virgules des outils autorisés. L'alias `--allowed-tools` fonctionne également
721* `--debug` : Activer la sortie de débogage432* `--debug` : activer la sortie de débogage
722 433
723<h3 id="alternative-integration-methods">434<h2 id="upgrade-from-beta">
724 Méthodes d'intégration alternatives435 Mettre à niveau depuis la version bêta
725</h3>436</h2>
726
727Bien que la commande `/install-github-app` soit l'approche recommandée, vous pouvez également :
728
729* **Application GitHub personnalisée** : Pour les organisations ayant besoin de noms d'utilisateur de marque ou de flux d'authentification personnalisés. Créez votre propre application GitHub 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.
730* **GitHub Actions manuel** : Configuration directe du flux de travail pour une flexibilité maximale
731* **Configuration MCP** : Chargement dynamique des serveurs Model Context Protocol
732 437
733Consultez la [documentation Claude Code Action](https://github.com/anthropics/claude-code-action/blob/main/docs) pour des guides détaillés sur l'authentification, la sécurité et la configuration avancée.438Si vos workflows font toujours référence à `anthropics/claude-code-action@beta`, mettez-les à jour vers v1 :
734 439
735<h3 id="customizing-claude’s-behavior">4401. Changez `@beta` en `@v1` dans la ligne `uses`
736 Personnalisation du comportement de Claude4412. Supprimez l'entrée `mode`, car la GitHub Action Claude Code [détecte maintenant le mode automatiquement](#interactive-and-automation-modes)
737</h3>4423. Remplacez `direct_prompt` par `prompt`
4434. Déplacez les options CLI telles que `max_turns` et `model` dans `claude_args`. `custom_instructions` n'a pas de flag de même nom et devient `--append-system-prompt`
738 444
739Vous pouvez configurer le comportement de Claude de deux façons :445Pour le mappage complet des entrées et les exemples avant et après, consultez le [guide de migration](https://github.com/anthropics/claude-code-action/blob/main/docs/migration-guide.md).
740 446
7411. **CLAUDE.md** : Définissez les normes 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 repository. Claude suivra ces directives lors de la création de PRs et de la réponse aux demandes. Consultez notre [documentation Memory](/fr/memory) pour plus de détails.447<h2 id="what’s-next">
7422. **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.448 Prochaines étapes
449</h2>
743 450
744Claude suivra ces directives lors de la création de PRs et de la réponse aux demandes.451* [Utiliser Claude Code GitHub Actions avec les fournisseurs cloud](/docs/fr/github-actions-cloud-providers) : acheminer l'inférence via Amazon Bedrock, Google Cloud's Agent Platform ou Microsoft Foundry
452* [Référence de configuration](https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md#inputs) : la liste complète des entrées de l'action
453* [Répertoire d'exemples](https://github.com/anthropics/claude-code-action/tree/main/examples) : workflows prêts à l'emploi pour plus de scénarios
454* [Code Review](/docs/fr/code-review) : révision automatique des pull requests sans maintenir un fichier de workflow