auto-geo

officiel

Moteur de publication de contenu optimisé GEO pour la visibilité IA

Que pouvez-vous faire avec Auto Geo MCP ?

  • Auditer toute page pour sa préparation à la citation par l'IA — exécutez auto-geo doctor sur une URL pour obtenir un rapport noté vérifiant la présence d'un TL;DR, les titres en format question, la densité d'entités, le JSON-LD, et plus encore.
  • Générer des pages optimisées GEO à partir de requêtes cibles — utilisez auto-geo write pour produire des pages JSON validées et prêtes à publier, conformes à l'architecture complète en sept blocs de citation.
  • Réécrire une page existante pour passer tous les contrôles GEO — fournissez une URL à auto-geo fix et recevez une version régénérée censée obtenir un score de 8/8 à l'audit de préparation à la citation.
  • Mesurer si les moteurs d'IA citent réellement votre domaine — exécutez auto-geo check contre Perplexity, ChatGPT, Gemini, Claude ou Grok pour voir quelles requêtes suivies renvoient votre domaine comme source.
  • Suivre les tendances de couverture des citations dans le temps — utilisez auto-geo history pour visualiser les pourcentages de couverture par exécution, les écarts par moteur, et les requêtes nouvellement citées ou perdues.
  • Découvrir les requêtes à forte intention à suivre — laissez auto-geo prompts discover analyser votre domaine et proposer les questions pour lesquelles vous devriez rivaliser dans les résultats de recherche IA.

Documentation

auto-geo

CI npm version License: MIT Built by Shadow Downloads TypeScript Node Docs llms.txt

Le moteur GEO open-source qui fait mentionner votre marque dans ChatGPT, Claude, Gemini, Perplexity et Grok.

Auditez, générez, corrigez et suivez les pages que les grands modèles de langage citent — un outil en ligne de commande, basé sur des fichiers, sous licence MIT.

Lorsque quelqu'un pose à ChatGPT, Perplexity, Claude, Gemini ou aux aperçus IA de Google une question à laquelle votre entreprise devrait répondre, ces moteurs citent-ils votre domaine ? auto-geo est la boucle complète pour y parvenir et prouver que cela se produit :

auto-geo init      # set up the system once
auto-geo doctor    # audit any page for citation readiness
auto-geo write     # generate publish-ready pages from target queries
auto-geo fix       # rewrite an existing page so it passes the audit
auto-geo check     # measure: do AI engines actually cite you?
auto-geo history   # track citation coverage over time

auto-geo demo — tracked prompts, live citation check across AI engines, and coverage history

Tout est basé sur des fichiers et versionnable — invites suivies, historique des vérifications, configuration. Pas de serveur, pas de compte, pas de base de données. Une seule installation :

npm i -g auto-geo

Construit par Shadow — un laboratoire de recherche média qui construit la prochaine génération de technologie d'intelligence et de communication média alimentée par l'IA, en partenariat avec les équipes qui ont fait connaître OpenAI, TikTok, Meta, Amazon et Lovable. Shadow utilise auto-geo pour publier sur shadow.inc/resources.


Contenu

  • Démarrage rapide
  • Qu'est-ce que le GEO ?
  • Le flux de travail
  • auto-geo init — configurer le système
  • auto-geo doctor — auditer n'importe quelle page pour sa préparation à la citation
  • auto-geo write — générer des pages à partir de requêtes
  • auto-geo fix — réécrire une page pour la préparation à la citation
  • auto-geo prompts — gérer vos invites suivies
  • auto-geo check — mesurer la couverture réelle des citations
  • auto-geo history — couverture des citations dans le temps
  • Configuration
  • L'architecture de page
  • Sortie adaptée aux agents
  • Adapté aux LLM
  • Contribuer
  • Licence

Démarrage rapide

0. Installer une fois (ou exécuter n'importe quelle commande ponctuellement via npx auto-geo@latest)

npm i -g auto-geo

1. Configurer — config, emplacements de clés .env.local et l'espace de travail .auto-geo

auto-geo init

2. Ajouter une clé API à .env.local (chargée automatiquement par chaque commande)

3. Auditer n'importe quelle page — la vôtre ou celle d'un concurrent

auto-geo doctor https://example.com/some-page

4. Suivre les invites pour lesquelles vous voulez que les moteurs d'IA vous citent

auto-geo prompts add "meilleurs outils de veille média" "qu'est-ce que le GEO"

5. Mesurer — chaque exécution est automatiquement sauvegardée dans l'historique

auto-geo check

6. Observer l'évolution de la couverture dans le temps

auto-geo history

Node >=18.17 requis. La mise à niveau ultérieure se fait avec npm i -g auto-geo@latest. Autres moyens d'installation :

brew install shadowresearch/tap/auto-geo # Homebrew (macOS / Linux) mise use -g npm:auto-geo # mise

Des exécutables autonomes (Node non requis) pour macOS, Linux et Windows sont fournis avec chaque version.


Qu'est-ce que le GEO ?

L'optimisation pour les moteurs génératifs (Generative Engine Optimization) est la discipline qui consiste à faire de vos pages celles que les moteurs de recherche IA citent lorsqu'ils répondent à une question. C'est le successeur du SEO : au lieu de vous classer dans une liste de liens, vous rivalisez pour être cité dans la réponse.

Les pages qui gagnent ne sont pas des articles de blog. La recherche empirique lie la probabilité de citation à une forme spécifique :

  1. Architecture, pas prose. Des blocs nommés et validés — TL;DR, introduction, sections H2 sous forme de questions, guides connexes, points clés à retenir, FAQ, divulgation. Les moteurs d'IA extraient des fragments structurés ; une structure rigide améliore l'extraction.
  2. Réponse en premier. Chaque section s'ouvre par une « capsule de réponse » de 40 à 60 mots qui répond entièrement à la question de la section avant tout paragraphe de soutien.
  3. Titres sous forme de questions. Les H2 sont rédigés comme les questions que les utilisateurs posent réellement aux moteurs d'IA.
  4. Dense en entités. Des entités nommées (entreprises, personnes, produits) à haute densité — liées à une probabilité de citation ~4,8 fois plus élevée.
  5. Dérivé du schéma. JSON-LD Article + FAQPage émis à partir de la structure, pas écrit à la main.

auto-geo encode cette forme dans un schéma strict (voir docs/sop.md — la procédure opérationnelle standard complète), audite toute URL par rapport à celle-ci, génère de nouvelles pages qui s'y conforment, puis boucle la boucle en mesurant si les moteurs vous citent réellement.


Le flux de travail

        ┌──────────────────────────────────────────────────────┐
        │                    auto-geo init                     │
        │   config · .env.local · .auto-geo/ workspace         │
        └──────────────────────────────────────────────────────┘
              │
   ┌──────────┼──────────────┬─────────────────┐
   ▼          ▼              ▼                 ▼
 doctor     write           fix             prompts
 audit a    generate        rewrite an      track the queries
 page       new pages       existing page   that matter to you
   │          │              │                 │
   └──────────┴──────────────┴────────┬────────┘
                                      ▼
                                    check ──── saves every run ────┐
                                measure actual                     ▼
                                citations                       history
                                                            coverage over time,
                                                            newly cited / lost

doctor mesure la préparation (cette page est-elle formatée pour la citation ?). check mesure le résultat (est-elle réellement citée ?). history transforme les résultats en une ligne de tendance.


auto-geo init — configurer le système

auto-geo init # interactif (quelques questions) auto-geo init --yes # modèle non interactif

Une commande échafaude tout :

FichierCe que c'est
auto-geo.config.jsonVos valeurs par défaut — domaine, fournisseur, modèle, auteur. Versionnable ; ne contient jamais de secrets.
.env.localEmplacements des clés API. Chargé automatiquement par chaque commande. À inclure dans .gitignore.
.auto-geo/prompts.txtVos invites suivies — une par ligne, commentaires # autorisés.
.auto-geo/checks/Chaque vérification exécutée, sauvegardée en JSON. Les données derrière l'historique.

Le flux interactif se termine en demandant les invites que vous souhaitez suivre, de sorte qu'un nouveau projet passe de zéro à une base de référence de citation mesurable en une seule session. init n'écrase jamais un .env.local existant et refuse d'écraser une configuration existante sans --force.


auto-geo doctor — auditer n'importe quelle page pour sa préparation à la citation

Exécutez-le sur n'importe quelle URL — la vôtre, celle d'un concurrent, chaque page de votre plan de site — et obtenez un rapport structuré sur les signaux de citation que les moteurs d'IA recherchent.

auto-geo doctor https://example.com/some-page

✓ TL;DR present (52 words, in range)
✗ Question-format H2 headings (2 of 6 are question-format; SOP §3 targets all)
✓ Article JSON-LD present
✗ FAQPage JSON-LD present (No FAQPage JSON-LD block detected)
✓ Entity density (12.3/1k words)
✗ Image cadence (0 images for 1247 words)
✓ Answer-first first paragraph
✓ No self-link in related guides

Score: 5 / 8 checks pass — moderate GEO posture

Top 3 fixes (ranked by citation lift):
  1. Add a FAQPage JSON-LD block. Each Q is a citable extraction target.
  2. Convert 4 statement-form H2 headings to question form.
  3. Add 2 images with descriptive alt text (entity + context).

Plan de site entier — score moyen, pages les moins bien notées, échecs les plus courants

auto-geo doctor --site https://example.com/sitemap.xml --max-pages 50

JSON pour CI / tableaux de bord

auto-geo doctor https://example.com/page --json

Code de sortie 0 si score ≥ 75%, 1 sinon — déclenchez les déploiements en fonction de cela. Voir docs/doctor.md pour la référence complète des vérifications.


auto-geo write — générer des pages à partir de requêtes

Donnez-lui votre domaine et les requêtes pour lesquelles vous voulez être cité ; récupérez des fichiers JSON validés et prêts à publier — une page structurée par requête, conforme à l'architecture GEO complète.

auto-geo write
--query "qu'est-ce que le GEO"
--query "GEO vs SEO"
--out ./resources

✓ "what is GEO"        → ./resources/geo.json (validated, ~$0.06)
✓ "GEO vs SEO"         → ./resources/geo-vs-seo.json (validated, ~$0.06)

Total: 2 pages · 2 ok · ~$0.12 spent · 31s elapsed

L'invite système encode la SOP GEO — longueur TL;DR, fenêtres de capsule de réponse, superlatifs interdits, structure FAQ — et la sortie est contrainte au schéma au niveau du système de types via le generateObject du SDK Vercel AI, avec une boucle d'auto-correction bornée en cas d'échec de validation. Valeurs par défaut : gpt-5.4 (OpenAI) ou claude-sonnet-4-6 (Anthropic), détecté automatiquement selon la clé API que vous avez définie.

Simulation — plan + estimation des coûts, aucun appel LLM

auto-geo write --query "qu'est-ce que X" --dry-run

Lot à partir d'un fichier, anthropic, 4 pages à la fois

auto-geo write --queries-file requetes.txt --provider anthropic --concurrency 4

Avec un fichier de configuration (auto-geo init), les champs --domain, auteur et fournisseur proviennent de la configuration — un simple --query suffit. Voir docs/write.md.


auto-geo fix — réécrire une page pour la préparation à la citation

Là où doctor vous dit ce qui ne va pas, fix produit une réécriture optimisée GEO qui passe les 8 vérifications — récupérée, auditée, régénérée et validée par rapport au même schéma que celui utilisé par write.

auto-geo fix https://www.example.com/some-blog-post --out ./corrige.json

Score (before):    3 / 8
Generating rewrite via openai gpt-5.4...
Score (projected): 8 / 8 — strong GEO posture
→ ./fixed.json (validated)

auto-geo fix https://example.com/page --provider anthropic # Claude à la place auto-geo fix https://example.com/page --dry-run # audit + estimation des coûts uniquement

Voir docs/fix.md.


auto-geo prompts — gérer vos invites suivies

Vos invites suivies sont les questions pour lesquelles vous voulez que les moteurs d'IA répondent en citant votre domaine. Elles résident dans .auto-geo/prompts.txt (texte brut, versionnable) et c'est ce que check exécute par défaut.

auto-geo prompts add "meilleurs outils de veille média" "qu'est-ce que le GEO" auto-geo prompts # liste numérotée auto-geo prompts rm 2 # par index — ou par texte exact

Vous ne savez pas quoi suivre ? Laissez le moteur proposer votre ensemble d'invitesdiscover récupère votre page d'accueil, examine ce que vous suivez déjà et demande au LLM de générer les requêtes à forte intention pour lesquelles vous devriez rivaliser :

auto-geo prompts discover --dry-run # prévisualiser les propositions auto-geo prompts discover --count 15 # ajouter 15 (n'écrase jamais, ne duplique jamais)

prompts add (et discover) amorcent l'espace de travail lors de la première utilisation, vous n'avez donc même pas besoin de init pour commencer le suivi.


auto-geo check — mesurer la couverture réelle des citations

Pour chaque invite, interrogez un vrai moteur de recherche IA et indiquez si votre domaine figure parmi les citations. C'est la vérité terrain que doctor prédit.

auto-geo check # invites suivies, domaine depuis la configuration

  using 3 tracked prompts from .auto-geo/prompts.txt
  [1/3] ✗ "what is GEO" — not cited (5 sources)
  [2/3] ✓ "how do I get cited by ChatGPT" — cited (2 sources)
  [3/3] ✓ "open source GEO tools" — cited (1 source)

Coverage: 2/3 queries (67%) · 3 page citations total · ~$0.012 spent
  saved → .auto-geo/checks/2026-06-10T13-22-05--perplexity.json (auto-geo history)

Moteurs : perplexity (par défaut), openai, anthropic, gemini, xai (alias grok), ou --engine all — qui exécute chaque moteur dont la clé API est définie et rapporte la couverture par moteur plus un cumul global.

Requêtes explicites au lieu de l'ensemble suivi

auto-geo check --domain shadow.inc --query "qu'est-ce que le GEO"

Tous les moteurs pour lesquels vous avez des clés, couverture globale

auto-geo check --engine all

CI : échouer le déploiement lorsque des requêtes critiques ne vous citent pas

auto-geo check --queries-file geo/requetes-critiques.txt && deploy

JSON en continu pour les agents / tableaux de bord

auto-geo check --ndjson

Chaque exécution est automatiquement sauvegardée dans .auto-geo/checks/ (désactivez avec --no-save). Code de sortie 0 si couverture > 0%, 1 si 0%. Voir docs/check.md pour les formats de sortie, la capture des requêtes étendues, les règles de correspondance de domaine et le mode d'interopérabilité --format geo-audit.


auto-geo history — couverture des citations dans le temps

La récompense d'avoir sauvegardé chaque exécution : une ligne de tendance. Couverture exécution par exécution avec les deltas par moteur, plus exactement les invites pour lesquelles vous avez commencé ou cessé d'être cité.

auto-geo history

  2026-06-01 08:30  perplexity   33% ·   1/3 cited  $0.01
  2026-06-08 09:15  perplexity   67% ↑34  2/3 cited  $0.01

  Since last run (perplexity · 2026-06-01 08:30 ▸ 2026-06-08 09:15)
    ✓ newly cited  open source GEO tools
    ✗ lost         (none)

  2 runs · .auto-geo/checks

Les tendances comparent ce qui est comparable — chaque exécution est mesurée par rapport à l'exécution précédente du même sélecteur de moteur. --engine all filtre pour les exécutions multi-moteurs ; --limit N contrôle la profondeur ; --json émet des lignes + delta de manière lisible par machine. Voir docs/history.md.


Configuration

Définissez une fois avec auto-geo init, remplacez n'importe où. Priorité, la plus élevée en premier :

  1. Option CLI
  2. Variable d'environnement (fournisseur détecté automatiquement selon la clé API définie)
  3. auto-geo.config.json (remonte depuis le répertoire courant — adapté aux monorepos)
  4. Valeur par défaut intégrée

// auto-geo.config.json — versionnable, aucun secret { "domain": "https://www.example.com", "basePath": "/resources", "provider": "openai", "model": "gpt-5.4", "engine": "perplexity", "concurrency": 4, "author": { "name": "Jane Doe", "jobTitle": "Responsable Contenu", "bio": "Jane écrit sur l'optimisation pour les moteurs génératifs…", }, }

Les clés API résident dans .env.local (ou .env), chargées automatiquement par chaque commande — les variables d'environnement déjà définies l'emportent toujours :

Moteur / fournisseurVar env
OpenAI (write, fix, check)OPENAI_API_KEY
Anthropic (write, fix, check)ANTHROPIC_API_KEY
Perplexity (check)PERPLEXITY_API_KEY
Gemini (check)GOOGLE_API_KEY ou GEMINI_API_KEY
xAI / Grok (check)XAI_API_KEY

L'architecture de page

Tout ce que write et fix produisent — et tout ce que doctor audite — suit une architecture stricte en sept blocs :

  1. TL;DR — capsule de réponse de 40 à 60 mots
  2. Introduction — blocs de mise en contexte
  3. Sections — H2 sous forme de questions, chacun s'ouvrant par une capsule de réponse de 40 à 60 mots
  4. Guides connexes — 4 à 8 entrées
  5. Points clés à retenir — 4 à 6 puces déclaratives
  6. FAQ — 3 à 10 questions-réponses avec des réponses de 40 à 60 mots
  7. Divulgation — note de source, horodatage, ligne de l'éditeur Les violations structurelles sont des erreurs dures (la charge utile générée est rejetée et régénérée) ; les heuristiques de densité et de cadence sont des avertissements souples. La spécification complète : docs/architecture.md, docs/validation.md, et la procédure opérationnelle standard derrière chaque contrainte : docs/sop.md.

Le JSON de sortie est indépendant du moteur de rendu — POSTez-le vers votre CMS, hydratez un template, ou affichez-le avec vos propres composants. La structure est le contrat.


Sortie adaptée aux agents

Chaque commande est conçue pour être pilotée par un agent autant que par un humain :

  • --json — un objet stable, lisible par machine sur stdout.
  • --ndjson (check) — une ligne JSON par requête au fur et à mesure que les résultats arrivent, plus une ligne _summary.
  • La progression va vers stderr, les résultats vers stdout — les pipes restent propres.
  • Codes de sortie stables — doctor et check sont des portes d’intégration continue prêtes à l’emploi.
  • --no-color / NO_COLOR / détection non-TTY pour une sortie adaptée aux logs.

auto-geo check --ndjson | jq 'select(.cited) | .query'


Adapté aux LLM

auto-geo est un outil dont la sortie est un contenu destiné à être cité par les LLM — ce dépôt mange donc sa propre nourriture pour chien :

  • llms.txt — un index organisé suivant la convention llmstxt.org.
  • llms-full.txt — README + chaque document substantiel intégré dans un seul fichier pour une ingestion en un seul chargement.
  • Site GitHub Pages à shadowresearch.github.io/auto-geo — annonce les deux via <link rel="alternate">, émet du JSON-LD Article.
  • AGENT.md — une spécification opérationnelle compacte pour les agents de codage pilotant la CLI.

Contribuer

Voir CONTRIBUTING.md. Rapports de bugs, améliorations de vérification, nouveaux moteurs et améliorations de la documentation sont tous les bienvenus.

  • Code de conduite
  • Politique de sécurité
  • Journal des modifications

Licence

MIT.


À propos de Shadow

Shadow est un laboratoire de recherche média qui construit la prochaine génération de technologie d’intelligence média et de communication alimentée par l’IA, en partenariat avec les équipes qui ont mis sur la carte OpenAI, TikTok, Meta, Amazon et Lovable. Shadow exécute auto-geo de bout en bout selon un calendrier pour les équipes de recherche média, de relations publiques et de communication.

Pour en savoir plus, rendez-vous sur shadow.inc.