Parcourir la documentation

Pack SEO / GEO : auditer la visibilité en recherche et dans les réponses IA

SEO / GEO : trois agents auditent la visibilité en recherche et dans les réponses générées par IA (qualité du contenu, données structurées, préparation IA), via 15 commandes. Installation, limites.

Sur cette page
  1. Quand l’utiliser
  2. Ce qui est installé
  3. Démarrage rapide
  4. Exemples à copier
  5. Ce qu’il écrit et où
  6. Flux de données et prérequis
  7. Limites et pièges

Le pack SEO / GEO audite un site sous deux angles. Le SEO, c’est la visibilité dans les résultats des moteurs de recherche. Le GEO (generative engine optimisation), c’est la visibilité dans les réponses générées par les assistants IA et les aperçus IA : leurs robots peuvent-ils lire le site, le contenu et les données structurées sont-ils assez bons pour être cités, et les pages y sont-elles préparées. Le pack apporte trois agents qui partagent une seule commande, /seo : Scout explore et inspecte, Judge évalue le contenu, les données structurées et la préparation à l’IA, et Chief note, planifie et rapporte. Il s’appuie sur une petite boîte à outils Python quand elle est disponible et se replie sur un mode « consignes seules » sinon, auquel cas il refuse d’inventer des chiffres.

Quand l’utiliser

  • Avant un lancement ou après une refonte, pour repérer les problèmes d’indexation, de canonical, de redirections et d’en-têtes de sécurité.
  • Quand le trafic organique baisse et qu’il vous faut une liste priorisée de causes et un plan à 30, 60 et 90 jours.
  • Pour savoir si les robots d’IA peuvent lire le site, s’il a un fichier llms.txt et si ses passages sont facilement citables.
  • Pour comparer votre site à celui d’un concurrent, ou suivre le score dans le temps.

Ce qui est installé

SEO est un pack empaqueté : il vit dans .agents/skills/pack-seo/ avec le routeur SKILL.md (la compétence s’appelle seo-engine), les trois fichiers d’agent seo-scout.md, seo-chief.md et seo-judge.md, une checklist.md, un pagespeed-playbook.md, des fichiers de référence dans ref/, des modèles de rapport, requirements.txt et les scripts Python dans scripts/. Le registre ne liste pas de compétences séparées pour ce pack.

Trois agents, dix rôles
AgentRôlesCe qu’il fait
SEO Scout (Technical Scanner)Crawler, Inspector, PhotographerExplore et cartographie le site, exécute neuf catégories de contrôles techniques, prend des captures mobile et bureau.
SEO Judge (Content & AI Analyst)Content Expert, Schema Master, GEO AnalystNote l’E-E-A-T et la qualité du contenu, valide les données structurées, mesure la préparation à la recherche IA.
SEO Chief (Strategist & Reporter)Scorer, Strategist, Reporter, BenchmarkerCalcule le score de santé SEO, priorise les problèmes, rédige le plan et les correctifs, rapporte, compare, étalonne.

Les 15 commandes /seo

Routeur de commandes
CommandeAgentAction
/seo full <url>Scout, Judge, ChiefLes six phases
/seo quick <url>Scout, Judge, ChiefPhases 1 à 4 seulement
/seo technical <url>Scout (Inspector)Seulement les contrôles techniques de la phase 2
/seo content <url>Judge (Content Expert)Seulement les contrôles de contenu de la phase 2
/seo geo <url>Judge (GEO Analyst)Préparation aux moteurs IA (phase 3)
/seo schema <url>Judge (Schema Master)Détection et validation des données structurées
/seo images <url>Judge (Content Expert)Sous-ensemble d’audit des images
/seo hreflang <url>Scout (Inspector)Audit hreflang
/seo pagespeed <url>Scout et ChiefBoucle de perfectionnement PageSpeed
/seo plan <type>Chief (Strategist)Plan stratégique pour saas, ecommerce, local, publisher ou agency
/seo fixChief (Strategist)Générer des correctifs depuis le dernier audit
/seo historyChief (Reporter)Afficher l’historique des scores
/seo compareChief (Reporter)Comparer avec l’audit précédent
/seo competitor <url1> <url2>Scout, Judge, ChiefComparer deux sites
/seo api <url>Un scriptAPI Google : PageSpeed, CrUX, test d’optimisation mobile

Les six phases d’un audit complet

  1. Reconnaissance : récupérer la page d’accueil, explorer jusqu’à une profondeur de 2 et 25 pages au plus, détecter le type d’activité (SaaS, e-commerce, local, éditeur, agence), chercher robots.txt, sitemap.xml et llms.txt. Un point de contrôle demande s’il faut continuer.
  2. Analyse approfondie, en parallèle : Scout vérifie neuf catégories techniques (explorabilité, indexabilité, sécurité, structure des URL, mobile, Core Web Vitals, détection des données structurées, rendu JavaScript, IndexNow) pendant que Judge examine l’E-E-A-T, la qualité du contenu, le schema et les images.
  3. Préparation à l’IA : accès de GPTBot, ClaudeBot et PerplexityBot, llms.txt, citabilité des passages (blocs de 134 à 167 mots) et un score de préparation à l’IA de 0 à 100.
  4. Notation : le score de santé SEO de 0 à 100, uniquement lorsque chaque catégorie pondérée a des entrées vérifiées.
  5. Plan d’action : problèmes classés critique, élevé, moyen ou faible, gains rapides, feuille de route à 30, 60 et 90 jours, correctifs générés (balises meta, JSON-LD, robots.txt, llms.txt). Un point de contrôle demande s’il faut appliquer les correctifs. Une boucle PageSpeed peut suivre.
  6. Suivi, facultatif : enregistrer les résultats sous .bmad-seo/history/ et comparer avec l’audit précédent.
Pondérations du score de santé SEO
CatégoriePoids
SEO technique20 %
Contenu et E-E-A-T22 %
SEO on-page18 %
Schema10 %
Performance (Core Web Vitals)12 %
Préparation IA (GEO)12 %
Images6 %

Démarrage rapide

  1. Installer le pack

    Core est ajouté automatiquement. Le mode « consignes seules » n’exige rien d’autre.

    Dans le terminal du projet
    npx bmad-plus install --packs seo

  2. Facultatif : provisionner la boîte à outils Python

    Avec --provision-python, l’installateur construit un environnement isolé dans .bmad/venv/seo/ (il faut Python 3.11 ou plus récent, ou uv, qui peut en récupérer un) et vérifie que requests, bs4, defusedxml et lxml s’importent. C’est sur demande.

    Dans le terminal du projet
    npx bmad-plus install --packs seo --provision-python

  3. Facultatif : définir une clé d’API Google

    Nécessaire seulement pour les données PageSpeed et CrUX en direct. La clé est gratuite et lue dans l’environnement ; elle est envoyée dans un en-tête de requête, jamais dans une URL.

    Dans le terminal du projet
    $env:GOOGLE_API_KEY = "votre-cle"

  4. Lancer un premier audit

    Remplacez l’adresse par un site que vous avez le droit d’auditer.

    Dans le terminal du projet
    SEO Scout, lance un audit rapide de https://example.com (la route /seo quick, phases 1 à 4).

Exemples à copier

Lancer l’audit complet en six phases

À utiliser sur un site qui vous appartient ou que vous êtes mandaté pour auditer. Scout, Judge et Chief interviennent en séquence.

Dans votre assistant IA
SEO Scout, lance l’audit complet en six phases de https://example.com (la route /seo full). Arrête-toi à chaque point de contrôle pour que je décide de continuer ou non.

Ce que vous devriez obtenir La phase 1 se termine par un résumé de découverte et la question « Continue with full audit? ». Viennent ensuite l’analyse approfondie, la préparation à l’IA et la notation, puis le plan d’action, qui s’arrête sur « Apply fixes automatically? ». Si Python n’est pas disponible, l’audit annonce d’emblée le « prompts-only mode », marque les données manquantes comme non vérifiées et omet tout score aux entrées incomplètes, y compris le score de santé SEO global.

Inspection technique seulement

À utiliser quand vous soupçonnez des problèmes d’indexation ou d’infrastructure et n’avez pas besoin de l’analyse du contenu.

Dans votre assistant IA
SEO Scout, lance la route technique (/seo technical) sur https://shop.example. Nous avons changé de plateforme vendredi dernier et des pages sortent de Google : vérifie d’abord robots.txt, les directives noindex et les balises canonical.

Ce que vous devriez obtenir Scout agit en Inspector et rend un rapport technique sur neuf catégories, avec les problèmes triés en critique, élevé, moyen et faible. Les Core Web Vitals sont jugés d’après le code source quand aucune donnée d’API en direct n’existe, et INP est utilisé à la place de FID, abandonné.

Auditer le hreflang d’un site multilingue

À utiliser pour les sites à plusieurs langues ou régions, par exemple des variantes /fr/ et /de/.

Dans votre assistant IA
SEO Scout, audite les annotations hreflang de https://example.com (la route /seo hreflang). Le site a des versions /fr/ et /de/ : vérifie que chaque page renvoie vers ses traductions et que x-default est défini.

Ce que vous devriez obtenir Scout vérifie les balises auto-référentes, les balises de retour et x-default selon les règles hreflang du pack et signale les pages qui les enfreignent.

Valider les données structurées

À utiliser avant et après l’ajout de JSON-LD. Judge agit en Schema Master.

Dans votre assistant IA
SEO Judge, valide les données structurées de https://example.com/pricing (la route /seo schema) et dis-moi si un type est obsolète ou manquant.

Ce que vous devriez obtenir Un rapport schema : ce qui a été trouvé, dans quel format, si chaque type est valide et non obsolète, et quelles opportunités manquantes valent d’être ajoutées. Judge recommande JSON-LD, signale les types retirés et peut générer des extraits conformes.

Mesurer la préparation à la recherche IA

À utiliser pour décider quoi changer afin que les assistants puissent lire et citer vos pages. Judge agit en GEO Analyst.

Dans votre assistant IA
SEO Judge, lance la route GEO (/seo geo) sur https://docs.example. GPTBot, ClaudeBot et PerplexityBot peuvent-ils lire notre documentation, et un llms.txt aiderait-il ?

Ce que vous devriez obtenir Un rapport GEO : quels robots d’IA robots.txt autorise ou bloque, si llms.txt existe et est bien formé, combien de passages entrent dans la plage citable de 134 à 167 mots, et le score de préparation à l’IA, affiché seulement si ses entrées ont été vérifiées.

Améliorer les scores PageSpeed un correctif à la fois

Exige GOOGLE_API_KEY pour les scores en direct. La cible est 100 dans les quatre catégories Lighthouse.

Dans votre assistant IA
SEO Chief, avec SEO Scout, lance la boucle PageSpeed (/seo pagespeed) sur https://example.com/landing. Ma GOOGLE_API_KEY est définie. Corrige un problème à la fois et reteste après chacun.

Ce que vous devriez obtenir Scout et Chief bouclent : mesurer, corriger un problème, retester, confirmer l’amélioration, passer au suivant, selon le playbook et la checklist PageSpeed du pack. Sans clé, les agents disent que les scores en direct ne sont pas disponibles au lieu de les estimer.

Obtenir un plan adapté à votre type de site, puis les correctifs

À lancer après un audit. Les types de plan sont saas, ecommerce, local, publisher et agency.

Dans votre assistant IA
SEO Chief, l’audit de notre site est terminé. Rédige le plan stratégique pour un site SaaS (la route /seo plan saas), puis transforme cet audit en correctifs prêts à appliquer (/seo fix).

Ce que vous devriez obtenir Chief rédige un plan stratégique pour un site SaaS (pages de prix, comparaison de fonctionnalités, appels à l’essai, SEO de la documentation). Puis /seo fix transforme le dernier audit en modifications prêtes à appliquer : balises title et description optimisées, JSON-LD construit à partir des modèles du pack, robots.txt amélioré et un llms.txt.

Comparer à un concurrent et suivre les progrès

À utiliser quand vous voulez une lecture côte à côte, ou après un second audit pour voir les écarts.

Dans votre assistant IA
SEO Chief, compare https://example.com à https://competitor.example (la route /seo competitor) et dis-moi où le concurrent est devant. Si j’ai enregistré des audits précédents, montre aussi comment notre score a évolué.

Ce que vous devriez obtenir Chief exécute un audit complet des deux sites et compare les scores avec les écarts (score SEO, E-E-A-T, types de schema, score GEO, PageSpeed), puis liste les retards, vos avantages et ce qu’il faut prioriser. L’historique des scores n’existe que si des audits précédents ont été enregistrés sous .bmad-seo/history/ par la phase de suivi facultative (phase 6 d’un audit complet) ; /seo history et /seo compare peuvent alors montrer l’évolution, et sans audit enregistré il n’y a rien à comparer.

Ce qu’il écrit et où

Fichiers que le pack SEO peut créer
CheminProduit parContenu
.bmad-seo/history/<domain>-<date>.jsonPhase 6 (suivi)Scores par catégorie et liste des problèmes, pour l’historique et la comparaison
seo-report.htmlscripts/seo_report.pyRapport HTML issu d’un fichier JSON d’audit, nom de fichier par défaut ; utilisé seulement quand chaque score est vérifié
screenshot.pngscripts/seo_screenshot.pyNom de sortie par défaut d’une capture de page (--output le change)
.bmad/venv/seo/install --provision-pythonL’environnement Python isolé

Flux de données et prérequis

  • Environnements d’exécution : Node.js 20 pour l’installateur ; Python 3.11 ou plus récent seulement si vous voulez la boîte à outils (sinon mode « consignes seules »). Paquets Python : requests, beautifulsoup4, defusedxml, lxml.
  • Flux hors machine : seo-site-fetch (l’exploration contacte le site audité ; les adresses sont contrôlées contre la falsification de requêtes côté serveur et figées), seo-google-apis (PageSpeed, CrUX et le test d’optimisation mobile, avec votre GOOGLE_API_KEY envoyée dans l’en-tête x-goog-api-key), seo-screenshot (le navigateur n’atteint que l’hôte audité) et python-provision (installation des paquets, sur demande).
  • Le pack porte l’étiquette de conformité GDPR (RGPD) parce que les données de Google Analytics ou de Search Console peuvent contenir des données personnelles ; traitez ces exports selon vos propres règles.

Limites et pièges

Attention Pas de données, pas de score

En mode « consignes seules », ou quand une catégorie n’a pas pu être vérifiée, les agents la marquent non vérifiée. Ils ne la remplacent jamais par zéro et ne repondèrent pas les autres catégories : un audit incomplet montre donc sa couverture (pages et contrôles examinés, sources, éléments non vérifiés) au lieu d’un chiffre global.

Remarque Les captures exigent un navigateur à installer vous-même

requirements.txt garde Playwright en commentaire, et --provision-python ne vérifie que requests, bs4, defusedxml et lxml. Pour seo_screenshot.py, installez vous-même playwright et Chromium dans le même environnement. Les ressources tierces sont bloquées pendant une capture et listées dans blocked_requests : une image de CDN manquante est un effet de la capture, pas un défaut du site.

Remarque Demandez en langage naturel : les noms /seo sont des routes, pas des commandes slash

Les noms /seo ... sont le vocabulaire du routeur propre au pack. Le pack ne les enregistre pas comme commandes slash dans votre client IA : saisis seuls, ils peuvent recevoir une réponse « commande inconnue ». Écrivez une demande ordinaire à un agent SEO et nommez la route dans la phrase, comme le font les exemples ci-dessus. Pour un audit, demandez la route full (les six phases) ou la route quick (phases 1 à 4) ; le routeur n’a pas de route audit seule.

Remarque Provenance

La base SEO Audit 360 a été écrite par Laurent Rochetta chez Oveanet, sa société, puis intégrée à BMAD+.

Voir aussi