Guide
Donner des skills SEO à son agent IA
Marc-Aurèle Lavalle · août 2026

Un skill SEO, c'est un dossier que vous déposez dans votre agent IA pour lui apprendre une procédure d'analyse complète : quelles données collecter, dans quel ordre, comment les croiser, et sous quelle forme rendre le résultat. Concrètement, c'est un fichier d'instructions (SKILL.md) accompagné de scripts que l'agent sait exécuter. Vous tapez /gsc-seo dans Claude Code, Hermes, OpenClaw ou Codex, et l'agent déroule seul les sept collectes Search Console, repère la cannibalisation, et vous rend cinq priorités datées.
La différence avec un prompt SEO copié-collé tient en un mot : la reproductibilité. Un prompt donne un résultat différent à chaque fois. Un skill exécute la même procédure, avec les mêmes seuils, et compare son rapport au précédent.
Je maintiens trois skills SEO open-source, testés en production sur six sites. Voici comment ils marchent et ce qu'ils ne font pas.
Qu'est-ce qu'un skill, techniquement ?
Un skill est un dossier avec, au minimum, un SKILL.md. Ce fichier commence par un en-tête qui décrit quand l'utiliser :
---
name: gsc-seo
description: À utiliser quand l'utilisateur veut un état des lieux SEO
du projet courant basé sur Google Search Console.
---
Cette description est ce que l'agent lit pour décider si le skill est pertinent. Le corps du fichier contient la procédure, étape par étape, dans un ordre imposé. Le reste du dossier peut embarquer des scripts (Python, shell), des fichiers de référence, des gabarits de rapport.
Trois propriétés en découlent, et ce sont elles qui font la valeur de l'outil :
- Les seuils sont écrits, pas devinés. « Requête à portée » veut dire position 5 à 20 avec au moins 5 impressions sur 90 jours. Pas « les requêtes qui semblent proches ».
- Les garde-fous sont documentés. Le skill gsc-seo interdit explicitement de baisser
--limit 1000sur les collectes. L'API Search Console trie par clics décroissants et départage les ex æquo par ordre alphabétique : sur un site où la plupart des lignes sont à zéro clic, une limite basse ne remonte que le début de l'alphabet, sans que rien ne le signale dans le JSON. Une collecte à--limit 50a produit un rapport faussé chez moi le 28 juillet 2026. La leçon est maintenant dans le fichier, donc l'agent ne la repassera plus. - La mémoire est portée par les fichiers. Chaque exécution sauvegarde son rapport dans
docs/seo/rapports/. La suivante lit le précédent, calcule les écarts et reprend les actions non cochées, suffixées (reporté). Une action déjà reportée une fois et toujours ouverte passe en (à arbitrer : escalader ou abandonner). Votre backlog SEO arrête de grossir en silence.
Comment on installe un skill dans son agent ?
Un git clone dans le dossier des skills de votre agent, et c'est fini. Le chemin change selon l'agent :
| Agent | Dossier des skills | Commande |
|---|---|---|
| Claude Code | ~/.claude/skills |
git clone https://github.com/lavallemarcaurele/gsc-seo ~/.claude/skills/gsc-seo |
| Hermes | ~/.hermes/skills |
git clone https://github.com/lavallemarcaurele/gsc-seo ~/.hermes/skills/gsc-seo |
| OpenClaw | ~/.openclaw/skills |
git clone https://github.com/lavallemarcaurele/gsc-seo ~/.openclaw/skills/gsc-seo |
| Codex | ~/.codex/skills |
git clone https://github.com/lavallemarcaurele/gsc-seo ~/.codex/skills/gsc-seo |
Vous pouvez aussi installer un skill par projet plutôt que globalement, en le copiant dans .claude/skills/ à la racine du dépôt. C'est ce que je fais pour les skills qui dépendent de conventions propres à un site.
Deux des trois skills ont un CLI Python à côté du SKILL.md. gsc-seo demande un environnement virtuel et un client OAuth2 Google (une configuration à faire une seule fois, le token se rafraîchit ensuite). maillage-interne tourne en Python 3.9 et plus, sans aucune dépendance externe. concurrence-seo n'installe rien du tout : il travaille uniquement avec l'outil de récupération de pages de l'agent.
Les trois skills SEO que j'utilise en production
gsc-seo : Search Console vers cinq décisions
gsc-seo interroge l'API Google Search Console et rend un rapport Markdown actionnable. Sept collectes, sur trois fenêtres (7, 28 et 90 jours), croisant requêtes, pages, dates, et le couple requête + page.
Ce qu'il en sort :
- les requêtes à portée de top 10, avec le diagnostic « titre et meta à retravailler » quand le CTR est sous la moitié de la moyenne du site ;
- les pages sous-performantes (au moins 10 impressions, CTR sous 1 %) ;
- la cannibalisation, c'est-à-dire plusieurs de vos pages positionnées sur la même requête ;
- les régressions rapides sur 7 jours contre 28 jours, classées en actions urgentes ;
- au maximum trois opportunités de nouvelle page, typées selon ce que votre projet sait produire (guide, page ville, réalisation, page service).
Un détail utile à l'ère des réponses génératives : le skill sait distinguer un vrai positionnement d'une citation en bloc secondaire (Aperçu IA, « Autres questions posées »). La signature est reconnaissable : beaucoup de requêtes distinctes à une seule impression chacune, position 2 ou 3, zéro clic, sur des sujets que la page ne traite pas. Un lien bleu ne peut pas se classer deuxième sur une marque qu'il ne cite jamais.
concurrence-seo : la veille sans API payante
concurrence-seo compare vos pages à celles de trois à cinq concurrents, intention par intention. Il n'utilise ni Semrush, ni Ahrefs, ni aucune API facturée : il récupère les pages et en extrait seize champs (title et sa longueur, meta description, canonical, H1, liste complète des H2, nombre de mots utiles, types JSON-LD, sources externes citées, date de mise à jour affichée, liens internes, présence de formulaire et de tableau, etc.).
Vous obtenez un comparatif ligne par ligne avec un verdict, les content gaps dans les deux sens (leurs sujets absents chez vous, et l'inverse), et les schémas JSON-LD qu'ils ont et pas vous. Si un rapport gsc-seo existe dans le projet, le skill le lit et croise : vos requêtes au-delà de la position 10 où un concurrent suivi a une page dédiée deviennent des pistes prioritaires.
Il compare aussi chaque exécution à la précédente, donc vous voyez les mouvements : un title réécrit, de nouveaux H2, un sitemap qui gagne 40 URLs, une date de mise à jour qui bouge (refresh éditorial).
maillage-interne : votre site vu comme un graphe
maillage-interne part du sitemap ou d'une URL racine, construit le graphe complet des liens internes, puis le skill interprète les données. CLI Python, zéro dépendance, licence MIT.
Ce qu'il détecte : pages orphelines (aucun lien entrant), orphelines contextuelles (liées uniquement depuis le header ou le footer, ce qui ne compte pas vraiment), pages cul-de-sac, liens cassés, suspects de soft-404 (pages « introuvable » renvoyant un code 200), couverture des pages piliers vers leurs enfants, et ancre dominante par page cible. C'est cette dernière métrique qui révèle les ancres sur-optimisées, le même « devis toiture » répété neuf fois à l'identique.
Deux options limitent la charge sur le serveur : --max-pages (2000 par défaut) et --delay (0,15 seconde entre deux requêtes).
À quoi ressemble une session ?
Voici le format de sortie, sur des données de démonstration :
> /gsc-seo
▸ Collecte Search Console : 7 requêtes, 90 jours
▸ Croisement positions × impressions × pages
Requêtes à portée de top 10 ........ 12
Groupes en cannibalisation ......... 2
Pages à créer (opportunités) ....... 5
Priorités du mois
1. « rénovation toiture lille », pos. 12,4
→ renforcer le maillage vers la page
2. « couvreur urgence », pos. 14,1
→ créer la page dédiée (intention forte)
Le rapport complet part dans docs/seo/rapports/2026-08-15-gsc.md, versionné avec le site. L'agent propose ensuite d'exécuter les priorités une par une, et coche chaque case dans le rapport au fur et à mesure, avec la date. C'est là que la boucle se ferme : l'analyse et la correction se passent dans le même outil, sur le même dépôt.
Ce qu'un skill SEO ne fait pas
Il faut être honnête sur le périmètre, sinon vous serez déçu.
Il ne remplace pas votre jugement. Le skill dit qu'une requête est à portée. Il ne sait pas si elle vaut le coup pour votre activité, ni si le client a déjà refusé cette page trois fois.
Il ne crée pas de données. Sans propriété Search Console vérifiée avec un historique suffisant, gsc-seo n'a rien à analyser. Sur un site neuf, les trois quarts du rapport seront vides, et c'est normal.
Il ne voit pas les backlinks ni les volumes de recherche. Ces données viennent d'API payantes, volontairement hors périmètre. Un skill séparé est le bon endroit pour ça, pas une rustine dans ceux-ci.
Il dépend de ce qu'il arrive à lire. Un concurrent derrière un captcha ou un pare-feu agressif est marqué inaccessible et exclu du comparatif, plutôt qu'estimé au doigt mouillé. Règle générale des trois skills : une métrique non extraite s'écrit n/a, jamais une valeur inventée.
Il ne fait pas le SEO à votre place. Il supprime la partie mécanique, la collecte, le tri, la mise en tableau, la comparaison au mois dernier. Vous gardez l'arbitrage et l'écriture.
Questions fréquentes
Faut-il savoir coder pour utiliser un skill SEO ?
Non pour concurrence-seo et maillage-interne : un git clone, une commande, et l'agent fait le reste. gsc-seo demande une étape technique unique, la création d'un client OAuth2 dans Google Cloud Console pour accéder à votre Search Console. C'est documenté pas à pas dans le README.
Ça marche avec autre chose que Claude Code ? Oui. Le format est un dossier avec un fichier d'instructions en Markdown, rien de propriétaire. Hermes, OpenClaw et Codex lisent la même structure ; seul le chemin d'installation change.
Où passent mes données ?
Nulle part ailleurs que chez vous et chez Google. Les identifiants OAuth restent en local dans ~/.config/gsc, les rapports sont écrits dans votre dépôt, et aucun des trois skills n'appelle de service tiers payant.
Quelle fréquence d'exécution ? Une fois par mois pour gsc-seo et concurrence-seo : c'est le rythme sur lequel la logique de comparaison au rapport précédent et de report des actions est calibrée. maillage-interne, plutôt après chaque vague de publication.
Pour commencer
Les trois skills sont sur GitHub, sous licence MIT, gratuits et destinés à le rester. Prenez gsc-seo si vous avez déjà de la donnée Search Console, maillage-interne si votre site a plus de cinquante pages et que vous soupçonnez des orphelines.
Je travaille maintenant à les faire fonctionner ensemble : un agent manager qui distribue le travail, des agents métiers qui exécutent, et le rapport client compilé à la fin. Si le sujet vous intéresse, les packs arrivent, et les skills du pack SEO/GEO sont déjà là pour essayer.

