J'ai créé une compétence Claude qui gère mes publicités Facebook — voici le code
J'ai créé une compétence Claude qui lit mon compte Meta Ads via l'API Graph, identifie les sous-performants, réécrit le texte publicitaire dans ma voix de marque et crée de nouveaux ensembles de publicités sans que je touche au Gestionnaire de publicités. Le tout en moins de 300 lignes de TypeScript. Le retour sur investissement a été immédiat : j'ai réduit le temps hebdomadaire de gestion des publicités de ~3 heures à environ 20 minutes.
Chaque mercredi. 28 400+ opérateurs. Zéro superflu.
✓ Vérifiez votre boîte mail — cliquez sur le lien de confirmation pour finaliser l'inscription.
✓ Vous êtes inscrit !
✓ Vous êtes déjà inscrit.
Table des matières
Mis à jour juin 2026.
TL;DR : J’ai créé une compétence Claude qui lit mon compte Meta Ads via l’API Graph, identifie les sous-performants, réécrit le texte publicitaire dans ma voix de marque et crée de nouveaux ensembles de publicités sans que je touche au Gestionnaire de publicités. Le tout en moins de 300 lignes de TypeScript. Le retour sur investissement a été immédiat : j’ai réduit le temps hebdomadaire de gestion des publicités de ~3 heures à environ 20 minutes.
[Lecture de l’opérateur] Je gère des publicités pour Pickleland et pour ma marque de conseil. Deux comptes, des audiences différentes, une fatigue créative constante. Je passais mes dimanches après-midi dans le Gestionnaire de publicités à faire des choses qu’un modèle devrait faire. Alors je l’ai automatisé.
Pourquoi j’ai arrêté de gérer manuellement les publicités Facebook
Le travail réel de gestion des publicités Facebook se décompose en trois tâches :
- Surveillance — vérifier quels ensembles de publicités brûlent de l’argent vs. en génèrent
- Diagnostic — comprendre pourquoi quelque chose sous-performe (fatigue créative ? mauvais ciblage ? page de destination ?)
- Itération — écrire de nouveaux textes, créer de nouveaux ensembles de publicités, ajuster les budgets
La tâche 1 est mécanique. La tâche 3 est principalement mécanique (avec une contrainte de voix). La tâche 2 nécessite du jugement — et c’est la seule qui bénéficie d’un humain dans la boucle.
Une compétence Claude peut faire le 1 et le 3. Je vérifie les résultats de la tâche 2 avant que quoi que ce soit ne soit publié. C’est l’architecture sur laquelle je me suis arrêté.
La configuration de l’API Meta Graph (c’est la partie ennuyeuse)
Avant tout code : vous avez besoin d’un compte Meta Business, d’un utilisateur système et d’un token d’accès permanent. Le portail développeur de Facebook est hostile mais le chemin est :
- Créer une Meta App sur developers.facebook.com (type : Business)
- Ajouter le produit Marketing API
- Dans votre Portfolio d’entreprise → Paramètres → Utilisateurs → Utilisateurs système, créer un utilisateur système et lui donner le rôle
ADVERTISERsur votre compte publicitaire - Générer un token avec ces permissions :
ads_read,ads_management,business_management
Stockez le token comme META_ACCESS_TOKEN et l’ID de votre compte publicitaire (format : act_XXXXXXXX) comme META_AD_ACCOUNT_ID dans votre .env.
La structure des fichiers de la compétence
.claude/skills/fb-ads/
SKILL.md ← instructions que Claude lit
index.ts ← l'implémentation réelle de l'outil
types.ts ← types partagésLe SKILL.md indique à Claude quand et comment utiliser la compétence. Le mien dit :
# Facebook Ads Manager Skill
Use this skill when the user says "check my ads", "run ads report",
"pause underperformers", or "write new ad copy". Never run this
without explicit user instruction — it touches live ad spend.
## What it can do
- Pull performance data for all active ad sets (last 7 or 30 days)
- Flag ad sets with ROAS < 1.5 or CTR < 0.8% as underperformers
- Rewrite ad copy for flagged creatives in Ale's voice
- Create new ad sets with revised copy (PAUSED by default — you approve before activating)
## What it will NOT do
- Change budgets on live ad sets without explicit confirmation
- Activate new ad sets automatically
- Delete anythingLa contrainte « ne jamais activer automatiquement » est non négociable. Cette compétence crée des éléments en état PAUSÉ. Je vérifie et active manuellement. Tout ce qui touche aux dépenses publicitaires en direct nécessite un point de contrôle humain.
Le code TypeScript principal
(Les blocs de code restent en anglais — seul le texte autour est traduit.)
Comment je l’utilise au quotidien
La compétence est invoquée depuis Claude Code (mon outil quotidien). Une session typique du lundi matin :
> check my ads from the last 7 daysClaude exécute runAdsReport(7), formate les résultats sous forme de tableau, signale les sous-performants et demande si je veux des réécritures. Je dis oui. Il génère de nouveaux textes, me montre les deux versions côte à côte et crée des ensembles de publicités PAUSÉS avec le nouveau créatif. Je les vérifie dans le Gestionnaire de publicités, active ceux que j’aime et archive les perdants.
Temps total : 20 minutes. Zéro dimanche après-midi dans le Gestionnaire de publicités.
Ce que ça ne remplace pas
La compétence ne peut pas me dire si un problème d’adéquation produit-marché se déguise en problème de texte publicitaire. Si le ROAS est mauvais partout, c’est un problème d’entonnoir ou d’offre, pas de titre. Claude réécrira fidèlement le texte sur un entonnoir cassé — et les réécritures ne le sauveront pas.
L’étape de diagnostic est toujours la mienne. Je lis le rapport, regarde les données de l’entonnoir et décide si nous itérons le créatif ou si nous résolvons quelque chose en amont. L’agent est rapide pour tout sauf ce jugement.
La conclusion de l’opérateur
Si vous gérez des publicités manuellement et touchez au Gestionnaire de publicités plus de deux fois par semaine, vous faites des opérations qu’un script devrait faire. L’API Graph est bien documentée et le flux de permissions Meta, bien qu’ennuyeux, est une configuration unique. Construisez la compétence en une après-midi. Le retour en temps récupéré se manifeste dès la première semaine.
Chaque mercredi. 28 400+ opérateurs. Zéro superflu.
✓ Vérifiez votre boîte mail — cliquez sur le lien de confirmation pour finaliser l'inscription.
✓ Vous êtes inscrit !
✓ Vous êtes déjà inscrit.
Recevez le guide IA dans votre boîte mail
Chaque mercredi. 28 400+ opérateurs. Zéro superflu.
Vérifiez votre boîte mail.
Nous vous avons envoyé un e-mail de confirmation — cliquez sur le lien pour finaliser votre inscription. Vérifiez les spams si vous ne le voyez pas d'ici une minute.
Vous êtes inscrit.
Bienvenue — la prochaine édition arrive bientôt dans votre boîte mail.
Vous êtes déjà inscrit — guettez-la chaque mercredi.