Alejandro Rioja.
AI Agents

J'ai créé une compétence Claude qui gère mes publicités Facebook — voici le code

Alejandro Rioja
Alejandro Rioja
4 min de lecture
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.

Newsletter gratuite

Chaque mercredi. 28 400+ opérateurs. Zéro superflu.

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 :

  1. Surveillance — vérifier quels ensembles de publicités brûlent de l’argent vs. en génèrent
  2. Diagnostic — comprendre pourquoi quelque chose sous-performe (fatigue créative ? mauvais ciblage ? page de destination ?)
  3. 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 :

  1. Créer une Meta App sur developers.facebook.com (type : Business)
  2. Ajouter le produit Marketing API
  3. Dans votre Portfolio d’entreprise → Paramètres → Utilisateurs → Utilisateurs système, créer un utilisateur système et lui donner le rôle ADVERTISER sur votre compte publicitaire
  4. 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

code
.claude/skills/fb-ads/
  SKILL.md          ← instructions que Claude lit
  index.ts          ← l'implémentation réelle de l'outil
  types.ts          ← types partagés

Le SKILL.md indique à Claude quand et comment utiliser la compétence. Le mien dit :

markdown
# 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 anything

La 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 :

code
> check my ads from the last 7 days

Claude 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.

Continuer à lire

Recevez le guide IA dans votre boîte mail

Chaque mercredi. 28 400+ opérateurs. Zéro superflu.

↵ pour voir tous les résultats esc esc pour fermer