Si vous cherchiez un moyen d'injecter de l'intelligence dans votre pipeline CI/CD sans vous débattre avec des scripts d'automatisation complexes, Claude Code Skills pourrait être exactement ce dont vous avez besoin. Ces flux de travail personnalisés, alimentés par l'IA, automatisent tout, des vérifications de sécurité avant le commit à la validation du déploiement. Vous les définissez à l'aide d'instructions en langage naturel au lieu de scripts shell fragiles.
Ce qui rend Claude Code Skills puissant pour le CI/CD :
- Automatisation en langage naturel : Définissez des flux de travail en anglais simple, pas en YAML complexe.
- Prise de décision intelligente : L'IA peut analyser le contexte, suggérer des correctifs et s'adapter à différents scénarios.
- Flux de travail réutilisables : Créez une fois, invoquez n'importe où avec de simples commandes slash.
- Intégration Git : Connectez-vous directement aux événements Git (pré-commit, pré-push, post-merge).
- Extensible : Accès à plus de 15 outils, y compris Bash, opérations de fichiers, recherche web, et plus encore.
Dans ce guide, nous explorerons ce que sont les Claude Code Skills, comment construire des flux de travail CI/CD personnalisés et des exemples concrets que vous pouvez mettre en œuvre dès aujourd'hui.
Comprendre les Claude Code Skills
Qu'est-ce que les "Skills" ?
Les Claude Code Skills sont des flux de travail IA personnalisés et réutilisables qui étendent les capacités de Claude Code. Considérez-les comme des scripts intelligents qui peuvent :
- Exécuter des tâches complexes en plusieurs étapes de manière autonome
- Prendre des décisions conscientes du contexte
- Accéder à des fichiers, exécuter des commandes, rechercher sur le web, et plus encore
- Maintenir l'état entre les sessions
- S'intégrer à vos outils de développement existants

Contrairement aux scripts traditionnels qui suivent une logique rigide, les "skills" exploitent les capacités de raisonnement de Claude pour gérer les cas limites, suggérer des améliorations et s'adapter aux conditions changeantes.
Comment fonctionnent les "Skills"
Les "skills" opèrent via plusieurs mécanismes clés :
1. Commandes invocables par l'utilisateur
# Exécuter une compétence avec une commande slash
/deploy-validation --env production
/security-review
/ci-pipeline-monitor --branch main
2. Outils autorisés
Les "skills" spécifient les outils qu'elles peuvent utiliser :
Bash: Exécuter des commandes shellRead,Write,Edit: Opérations sur les fichiersGlob,Grep: Opérations de rechercheWebFetch,WebSearch: Données externesTask: Générer des sous-agents pour des tâches complexes
3. Hooks de cycle de vie
Les "skills" peuvent déclencher des actions à des points spécifiques :
SessionStart: Quand la compétence démarrePreToolUse: Avant chaque exécution d'outilPostToolUse: Après chaque exécution d'outilStop: Quand la compétence se termine
4. Fichiers de planification
Les "skills" peuvent maintenir leur état en utilisant des fichiers Markdown pour suivre les progrès, stocker les découvertes et permettre des flux de travail pouvant être repris.
Pourquoi les "Skills" excellent en CI/CD
Les scripts CI/CD traditionnels échouent facilement face à des conditions inattendues. Les "skills" apportent de l'intelligence à l'automatisation :
- Compréhension contextuelle : Peut lire les journaux, comprendre les erreurs et suggérer des correctifs
- Comportement adaptatif : S'adapte aux différentes structures et configurations de projets
- Auto-documenté : Les instructions en langage naturel rendent les flux de travail transparents
- Récupération d'erreurs : Peut diagnostiquer les problèmes et proposer des solutions
- Apprentissage continu : Améliore les flux de travail en fonction des résultats
Anatomie d'une "Skill" : Composants et Structure
Structure des répertoires
Les "skills" résident dans .claude/skills/ avec cette disposition :
.claude/
├── skills/
│ ├── deploy-validation/
│ │ ├── SKILL.md # Manifeste de la compétence et instructions
│ │ ├── planning.md # Suivi d'état (facultatif)
│ │ └── scripts/ # Scripts d'aide (facultatif)
│ ├── security-review/
│ │ └── SKILL.md
│ └── ci-monitor/
│ └── SKILL.md
└── skills.md # Index de toutes les compétences
Le manifeste SKILL.md
Chaque "skill" commence par un frontmatter YAML suivi d'instructions Markdown :
---
name: deploy-validation
version: "1.0.0"
description: Valide la préparation au déploiement avec des vérifications complètes
user-invocable: true
allowed-tools:
- Bash
- Read
- Edit
- Grep
- Glob
hooks:
SessionStart:
- matcher: command
command: "echo '[Validateur de Déploiement] Démarrage des vérifications avant déploiement...'"
Stop:
- matcher: command
command: "echo '[Validateur de Déploiement] Vérifications terminées. Consultez la sortie ci-dessus.'"
---
# Compétence de validation de déploiement
Validation complète avant déploiement pour les versions de production.
## Utilisation
```bash
/deploy-validation --env production
/deploy-validation --env staging --dry-run
/deploy-validation --skip-tests # À utiliser avec prudence
Ce que fait cette compétence
Vérification de l'environnement
- Vérifier l'existence des variables d'environnement requises
- Valider les fichiers de configuration
- Vérifier l'accessibilité des dépendances de service
Vérifications de la qualité du code
- Exécuter le linting (ESLint, Pylint, etc.)
- Vérifier le formatage du code
- Vérifier qu'aucun énoncé de débogage ne subsiste
Tests
- Exécuter la suite de tests unitaires
- Exécuter les tests d'intégration
- Vérifier les seuils de couverture de code
Validation de la construction (Build)
- Compiler/construire l'application
- Vérifier les artefacts de construction
- Vérifier les tailles de bundle par rapport aux limites
Analyse de sécurité
- Analyser les dépendances pour les vulnérabilités
- Vérifier la présence de secrets codés en dur
- Valider les permissions et les contrôles d'accès
Vérification de la documentation
- S'assurer que le CHANGELOG est mis à jour
- Vérifier que la documentation API correspond au code
- Vérifier les guides de migration si nécessaire
Rapport de déploiement
- Générer un rapport complet
- Enregistrer dans
deployment-reports/{timestamp}.md - Quitter avec un code d'état indiquant succès/échec
Instructions pour Claude
Lors de son invocation, suivre ce processus :
- Analyser les arguments de la ligne de commande pour déterminer l'environnement et les options
- Vérifier la branche git actuelle et le SHA du commit
- Exécuter chaque étape de validation en séquence
- Pour chaque échec, consigner le problème et continuer (collecter toutes les erreurs)
- Après toutes les vérifications, générer un rapport récapitulatif
- Si des vérifications critiques ont échoué, quitter avec le code d'erreur 1
- Si toutes les vérifications ont réussi, quitter avec le code 0 et afficher un message de succès
---
## Cas d'utilisation de Skills en CI/CD
### 1. Validation pré-commit
**Skill : `/pre-commit-guard`**
Valide automatiquement les changements avant les commits :
- Linting et formatage
- Analyse de sécurité pour les secrets
- Exécution de tests unitaires
- Vérifications de la taille des fichiers
- Détection des changements cassants
**Avantage** : Détecter les problèmes avant qu'ils n'entrent dans le code.
### 2. Analyse de Pull Request
**Skill : `/pr-review`**
Revue de PR intelligente qui :
- Analyse les modifications de code pour les problèmes de qualité
- Vérifie les vulnérabilités de sécurité
- Vérifie la couverture de test
- Suggère des améliorations
- Génère des commentaires de revue
**Avantage** : Revue de code cohérente et approfondie sans goulots d'étranglement humains.
### 3. Flux de travail de tests automatisés
**Skill : `/test-runner`**
Exécution de tests intelligente qui :
- Détecte les tests pertinents aux changements
- Exécute les tests dans l'ordre optimal
- Analyse les échecs et suggère des correctifs
- Génère des rapports de couverture
- Suivi des tendances de performance des tests
**Avantage** : Rétroaction plus rapide avec une sélection intelligente des tests.
### 4. Validation de déploiement
**Skill : `/deploy-validator`**
Vérifications avant déploiement incluant :
- Validation de la configuration de l'environnement
- Vérification des dépendances
- Vérifications de migration de base de données
- Tests de compatibilité API
- Détection de régression de performance
**Avantage** : Prévenir les échecs de déploiement avant qu'ils ne surviennent.
### 5. Surveillance de pipeline CI
**Skill : `/ci-monitor`**
Surveille la santé du pipeline :
- Suivi des taux de réussite de construction
- Identification des tests instables
- Analyse des tendances de performance
- Alertes en cas de dégradation
- Suggestions d'optimisations
**Avantage** : Maintenance et optimisation proactive du pipeline.
### 6. Automatisation des versions
**Skill : `/release-manager`**
Orchestre le processus de version :
- Augmentation de version (version bumping)
- Génération de Changelog
- Création de tags
- Vérification des artefacts de construction
- Rédaction des notes de version
**Avantage** : Versions cohérentes et sans erreur.
### 7. Automatisation des tests API
**Skill : `/api-test-runner`**
Pour les équipes développant des API, combinez Claude Code Skills avec [Apidog](https://apidog.com) pour une validation API complète :
- **Générer des cas de test** : Créer des tests API à partir de spécifications OpenAPI/Swagger
- **Exécuter des tests automatisés** : Exécuter des collections de tests Apidog dans votre pipeline
- **Valider les réponses** : Vérifier les codes d'état, les schémas et les temps de réponse
- **Simuler les dépendances** : Mettre en place des serveurs mock pour des tests isolés
- **Suivi de la couverture** : Surveiller la couverture de test des points d'accès API
**Exemple d'intégration de skill :**
```bash
/api-test-runner --collection ./tests/api-collection.json --env production
Avantage : Détecter les régressions API avant le déploiement grâce au débogage visuel et aux rapports détaillés. L'intégration CI/CD d'Apidog facilite l'ajout de tests API à n'importe quel pipeline.

Créer votre première "Skill" CI/CD
Construisons une "skill" pratique : un outil de revue de sécurité qui vérifie le code avant les commits.
Étape 1 : Créer le répertoire de la "Skill"
mkdir -p .claude/skills/security-review
Étape 2 : Écrire le manifeste de la "Skill"
Créer .claude/skills/security-review/SKILL.md :
---
name: security-review
version: "1.0.0"
description: Analyse de sécurité pour les vulnérabilités courantes et les secrets
user-invocable: true
allowed-tools:
- Bash
- Read
- Grep
- Glob
- Write
hooks:
SessionStart:
- matcher: command
command: "echo '[Revue de sécurité] Démarrage de l'analyse de sécurité...'"
Stop:
- matcher: command
command: "echo '[Revue de sécurité] Analyse terminée'"
---
# Skill de revue de sécurité
Analyse le code pour les problèmes de sécurité avant les commits.
## Utilisation
```bash
/security-review # Analyser tous les fichiers modifiés
/security-review --all # Analyser l'intégralité de la base de code
/security-review --file src/auth.js # Analyser un fichier spécifique
Modèles de détection
Cette "skill" vérifie les éléments suivants :
Secrets codés en dur
- Clés API
- Mots de passe
- Clés privées
- Jetons d'accès
Vulnérabilités courantes
- Modèles d'injection SQL
- Vulnérabilités XSS
- Injection de commandes
- Traversée de chemin
Configurations non sécurisées
- Mode débogage activé
- Paramètres par défaut non sécurisés
- Authentification manquante
- Cryptographie faible
Problèmes de dépendance
- Packages vulnérables connus
- Dépendances obsolètes
- Packages suspects
Instructions
Lorsqu'invoqué :
Déterminer la portée de l'analyse
- Si le drapeau
--allest présent : analyser toute la base de code - Si
--fileest fourni : analyser ce fichier - Par défaut : analyser uniquement les fichiers git stagés/modifiés
Rechercher les secrets
- Utiliser Grep pour trouver des modèles comme :
(api[_-]?key|password|secret|token)\s*[:=]\s*['"]\w+['"]-----BEGIN (RSA |)PRIVATE KEY------ Formats de secrets courants (AWS, GitHub, etc.)
- Ignorer les fichiers dans
.gitignore - Sauter
node_modules,vendor, etc.
Vérifier les modèles de vulnérabilité
- Injection SQL : SQL brut avec concaténation de chaînes
- XSS : entrée utilisateur non échappée en HTML
- Injection de commande : exécution de shell avec entrée utilisateur
- Lire le code avec l'outil Read pour analyser le contexte
Analyser les dépendances
- Vérifier la présence de
package-lock.json,requirements.txt, etc. - Utiliser Bash pour exécuter des scanners de sécurité :
npm auditpour Node.jspip-auditpour Pythonbundle auditpour Ruby
Générer un rapport
- Lister toutes les découvertes avec :
- Chemin du fichier et numéro de ligne
- Type de problème et gravité
- Correction recommandée
- Enregistrer dans
.claude/security-reports/{date}.md - Afficher le résumé dans le terminal
Statut de sortie
- Sortir 0 si aucun problème n'est trouvé
- Sortir 1 si des problèmes de gravité ÉLEVÉE sont détectés
- Sortir 2 si l'analyse n'a pas pu être effectuée
### Étape 3 : Enregistrer la "Skill"
Ajouter à `.claude/skills.md` :
```markdown
# Skills disponibles
## Sécurité & Qualité
### /security-review
Analyse de sécurité pour les vulnérabilités et les secrets.
- **Version** : 1.0.0
- **Utilisation** : `/security-review [--all] [--file PATH]`
- **Quand l'utiliser** : Avant les commits, pendant la revue de PR
Étape 4 : Tester la "Skill"
# Dans Claude Code
/security-review
Claude exécutera maintenant le flux de travail de revue de sécurité, vérifiant votre code pour les problèmes.
Modèles de "Skills" avancés
Modèle 1 : Flux de travail avec état via des fichiers de planification
Pour les processus en plusieurs étapes, utilisez des fichiers de planification pour suivre la progression :
---
name: release-manager
version: "1.0.0"
user-invocable: true
allowed-tools:
- Bash
- Read
- Write
- Edit
---
# Gestionnaire de versions
Gère l'ensemble du processus de publication.
## Gestion de l'état
Cette compétence utilise `planning.md` pour suivre la progression de la version :
```markdown
# Progression de la version v2.5.0
## Phase 1 : Validation pré-version [TERMINÉE]
- [x] Exécuter la suite de tests complète
- [x] Vérifier la couverture de code > 80%
- [x] Analyser les problèmes de sécurité
## Phase 2 : Augmentation de version [EN COURS]
- [x] Mettre à jour package.json
- [ ] Mettre à jour CHANGELOG.md
- [ ] Mettre à jour la documentation
## Phase 3 : Build & Tag [EN ATTENTE]
- [ ] Créer la version de production (build)
- [ ] Exécuter les tests de fumée (smoke tests)
- [ ] Créer le tag git
- [ ] Pousser vers le registre
## Phase 4 : Post-version [EN ATTENTE]
- [ ] Créer la version GitHub
- [ ] Mettre à jour les notes de version
- [ ] Notifier l'équipe
Instructions
Vérifier si planning.md existe
- Si oui : reprendre à partir de la dernière phase incomplète
- Si non : créer un nouveau fichier de planification
Exécuter chaque phase :
- Mettre à jour les cases à cocher au fur et à mesure que les tâches sont terminées
- Enregistrer la progression après chaque étape
- Si interrompu, peut reprendre plus tard
Pour chaque tâche :
- Vérifier les prérequis
- Exécuter l'action
- Valider le résultat
- Mettre à jour le fichier de planification
### Modèle 2 : Flux de travail conditionnels
Les "skills" peuvent s'adapter en fonction du type de projet :
```markdown
## Instructions
1. **Détecter le type de projet**
- Rechercher `package.json` → Projet Node.js
- Rechercher `requirements.txt` → Projet Python
- Rechercher `Cargo.toml` → Projet Rust
2. **Exécuter les tests appropriés**
- Node.js : `npm test`
- Python : `pytest`
- Rust : `cargo test`
3. **Générer des rapports de couverture**
- Node.js : Utiliser Jest/Istanbul
- Python : Utiliser pytest-cov
- Rust : Utiliser tarpaulin
Modèle 3 : Exécution parallèle
Pour les tâches indépendantes, exécutez-les simultanément :
## Instructions
1. **Vérifications parallèles** (exécutées simultanément) :
- Linting (ESLint, Prettier)
- Vérification de type (TypeScript)
- Analyse de sécurité (npm audit)
- Construction de la documentation
2. **Collecter les résultats**
- Attendre que toutes les tâches soient terminées
- Agréger les résultats
- Signaler tout échec
Modèle 4 : Prise de décision interactive
Les "skills" peuvent demander une entrée utilisateur :
## Instructions
1. **Analyser les risques de déploiement**
- Vérifier les changements cassants
- Examiner les scripts de migration
- Évaluer la complexité du rollback
2. **Si un risque ÉLEVÉ est détecté**
- Présenter les résultats à l'utilisateur
- Demander : "Déployer quand même ? (oui/non/annuler)"
- Si oui : procéder au déploiement
- Si non : annuler et enregistrer la décision
- Si annuler : quitter sans action
3. **Si risque FAIBLE**
- Approuver automatiquement le déploiement
- Enregistrer la décision pour l'audit
Intégration des "Skills" avec GitHub Actions
Méthode 1 : Invocation directe de "Skill"
Ajoutez Claude Code à votre workflow GitHub Actions :
# .github/workflows/security-scan.yml
name: Analyse de sécurité
on:
pull_request:
branches: [main, develop]
jobs:
security-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Installer Claude Code
run: |
curl -fsSL https://install.claude.com | sh
- name: Exécuter la revue de sécurité
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude /security-review --all
- name: Télécharger le rapport
if: always()
uses: actions/upload-artifact@v3
with:
name: security-report
path: .claude/security-reports/
Méthode 2 : Action GitHub personnalisée
Créez une action réutilisable :
# .github/actions/claude-skill/action.yml
name: 'Exécuter une Skill Claude Code'
description: 'Exécute une skill Claude Code en CI'
inputs:
skill-name:
description: 'Nom de la skill à exécuter'
required: true
skill-args:
description: 'Arguments à passer à la skill'
required: false
default: ''
api-key:
description: 'Clé API Anthropic'
required: true
runs:
using: 'composite'
steps:
- name: Configurer Claude
shell: bash
run: |
curl -fsSL https://install.claude.com | sh
- name: Exécuter la Skill
shell: bash
env:
ANTHROPIC_API_KEY: ${{ inputs.api-key }}
run: |
claude /${{ inputs.skill-name }} ${{ inputs.skill-args }}
Utilisation dans les workflows :
# .github/workflows/deploy.yml
name: Déployer
on:
push:
branches: [main]
jobs:
validate-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Validation avant déploiement
uses: ./.github/actions/claude-skill
with:
skill-name: deploy-validation
skill-args: '--env production'
api-key: ${{ secrets.ANTHROPIC_API_KEY }}
- name: Déployer
if: success()
run: ./deploy.sh production
- name: Vérification post-déploiement
uses: ./.github/actions/claude-skill
with:
skill-name: health-check
skill-args: '--url https://api.example.com'
api-key: ${{ secrets.ANTHROPIC_API_KEY }}
Méthode 3 : Test matriciel
Exécuter les "skills" sur plusieurs environnements :
# .github/workflows/test-matrix.yml
name: Matrice de tests
on: [push, pull_request]
jobs:
test:
strategy:
matrix:
node-version: [16, 18, 20]
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Configurer Node
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Exécuter la skill de test
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
claude /test-runner --node-version ${{ matrix.node-version }}
Intégration des Git Hooks
Mise en place des Git Hooks
Les Git Hooks permettent aux "skills" de s'exécuter automatiquement lors des événements Git.
Hook de pré-commit
Empêchez les mauvais commits avant qu'ils ne se produisent :
# .git/hooks/pre-commit
#!/bin/bash
echo "Exécution de la revue de sécurité pré-commit..."
# Exécuter la revue de sécurité Claude Code
claude /security-review
if [ $? -ne 0 ]; then
echo "ÉCHEC : Problèmes de sécurité détectés. Commit bloqué."
echo "Corrigez les problèmes ci-dessus ou utilisez 'git commit --no-verify' pour contourner (non recommandé)"
exit 1
fi
echo "SUCCÈS : La vérification de sécurité a réussi"
exit 0
Le rendre exécutable :
chmod +x .git/hooks/pre-commit
Hook de pré-push
Valider avant de pousser vers le dépôt distant :
# .git/hooks/pre-push
#!/bin/bash
echo "Exécution de la validation pré-push..."
# Obtenir la branche en cours de poussée
BRANCH=$(git rev-parse --abbrev-ref HEAD)
# Exécuter différentes vérifications en fonction de la branche
if [ "$BRANCH" = "main" ]; then
echo "Poussée vers main - exécution de la validation complète..."
claude /deploy-validation --env production
elif [ "$BRANCH" = "develop" ]; then
echo "Poussée vers develop - exécution de la validation de staging..."
claude /deploy-validation --env staging
else
echo "Branche de fonctionnalité - exécution de la validation rapide..."
claude /quick-check
fi
if [ $? -ne 0 ]; then
echo "ÉCHEC : La validation a échoué. Poussée bloquée."
exit 1
fi
echo "SUCCÈS : La validation a réussi"
exit 0
Hook de post-fusion
Exécuter après la fusion des branches :
# .git/hooks/post-merge
#!/bin/bash
echo "Vérifications post-fusion..."
# Vérifier si les dépendances ont changé
if git diff-tree -r --name-only --no-commit-id HEAD@{1} HEAD | grep -q "package-lock.json"; then
echo "Dépendances modifiées - exécution de l'audit de sécurité..."
claude /dependency-audit
fi
# Vérifier si des migrations de base de données existent
if git diff-tree -r --name-only --no-commit-id HEAD@{1} HEAD | grep -q "migrations/"; then
echo "Migrations détectées - validation..."
claude /migration-validator
fi
exit 0
Intégration Husky
Pour les équipes utilisant Husky pour gérer les hooks Git :
// package.json
{
"husky": {
"hooks": {
"pre-commit": "claude /security-review && claude /lint-check",
"pre-push": "claude /test-runner --quick",
"post-merge": "claude /dependency-audit"
}
}
}
Ou avec Husky v6+ :
# .husky/pre-commit
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
claude /security-review
claude /lint-check
Conclusion
Claude Code Skills transforme le CI/CD, passant de scripts fragiles à des flux de travail intelligents et adaptatifs. En combinant le raisonnement de l'IA avec l'automatisation traditionnelle, les "skills" peuvent :
- Comprendre le contexte et s'adapter à différents scénarios
- Suggérer des améliorations plutôt que de simplement signaler des échecs
- Apprendre des modèles dans votre codebase
- S'auto-documenter grâce à des instructions en langage naturel
Si votre pipeline CI/CD inclut des points d'accès API, la combinaison de Claude Code Skills avec Apidog vous offre le meilleur des deux mondes :
| Fonctionnalité | Avantage |
|---|---|
| Tests API Visuels | Créez des cas de test sans écrire de code |
| Import OpenAPI | Générez automatiquement des tests à partir de vos spécifications |
| Serveurs Mock | Testez les intégrations avant que les backends ne soient prêts |
| CLI CI/CD | Exécutez les tests Apidog dans n'importe quel pipeline |
| Collaboration d'équipe | Partagez des collections de tests avec votre équipe |
Prêt à rationaliser votre flux de travail API ? Téléchargez Apidog gratuitement et créez votre première collection de tests API en quelques minutes.
