ummydev/index-push

Lorsque l'utilisateur souhaite que les nouvelles pages ou les pages modifiées soient explorées et indexées rapidement par Google et Bing, au lieu d'attendre des semaines que le sitemap soit lu. À utiliser après tout déploiement qui ajoute ou met à jour des pages, et lorsque l'utilisateur dit « indexe ça », « demande l'indexation », « soumets à Google », « soumets les URL à Bing », « IndexNow », « ping les moteurs de recherche », « renvoie le sitemap », « pourquoi ma page n'est-elle pas indexée », « Découverte – actuellement non indexée », « URL inconnue de Google », « Quota dépassé dans Search Console » ou « file d'indexation ». Couvre IndexNow, l'inspection d'URL et les sitemaps de Search Console, la soumission d'URL Bing Webmaster, un fichier de file d'attente prioritaire, et le diagnostic des pages qui restent hors de l'index.

Qu'est-ce que index-push ?

Cette compétence automatise et guide le processus de soumission de nouvelles pages ou pages modifiées aux moteurs de recherche (Google et Bing) pour une indexation rapide, en contournant les longs délais d'exploration des sitemaps. Elle est conçue pour les agents d'IA comme Claude Code, Cursor ou Codex, et fournit un flux de travail complet depuis le déploiement jusqu'à l'indexation confirmée. La compétence utilise quatre canaux : IndexNow pour Bing et d'autres moteurs (hors Google), l'inspection d'URL via Google Search Console, la soumission de sitemaps dans Search Console, et la soumission d'URL dans Bing Webmaster Tools. Elle inclut également un fichier de file d'attente prioritaire pour gérer les limites de quota journalier (environ 10 pour Google, 100 pour Bing), des scripts pour configurer une clé IndexNow et diffuser les sitemaps, ainsi qu'un tableau de diagnostic des statuts d'indexation (comme « URL inconnue de Google » ou « Découverte – non indexée ») avec des correctifs recommandés comme l'ajout de liens internes. La compétence évite l'automatisation des interfaces utilisateur des moteurs de recherche pour respecter leurs conditions d'utilisation, et insiste sur la tenue d'un journal et la gestion de la file d'attente dans le dépôt pour éviter les pertes de progression.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ummydev/marketing-team-skills/tree/HEAD/skills/index-push

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Index push

Expédier une page ne garantit pas qu'elle soit explorée. Sur un nouveau domaine, Google peut conserver une URL trouvée dans le sitemap pendant des semaines. Cette compétence est la routine à suivre le jour de la mise en ligne d'une page et le suivi jusqu'à ce qu'elle soit indexée. Utilisez les quatre canaux ; ils atteignent différents moteurs et ont des limites différentes.

CanalAtteintLimite quotidienneComment faire
IndexNow (scripts/indexnow.mjs)Bing, Yandex, Naver, Seznam, Yep. Pas Google10 000 URL par requêteUne seule commande
Inspection d'URL Search Console → Demander l'indexationGoogleEnviron 10 URL par propriété ; se réinitialise vers minuit heure du Pacifique USNavigateur, une URL à la fois
Sitemaps Search Console → renvoyerGoogleAucune qui importeNavigateur, un champ
Bing Webmaster Tools → Soumettre des URLBing100 URLNavigateur, coller une liste

Demander l'indexation est ce qui a fait bouger Google pour nous : huit URL en statut « inconnu » ou « Découverte » ont toutes été indexées environ un jour après les avoir demandées. Le sitemap et IndexNow seuls laissaient les pages Google en attente.

Règle de navigation. Search Console et Bing Webmaster sont des sites connectés : travaillez-les une page à la fois à un rythme humain et ne scriptez jamais leur interface utilisateur. Cela vaut également pour tout site social. Si un site vous limite ou vous bloque, arrêtez et informez l'utilisateur.

Configuration unique

  1. Search Console : ajoutez une propriété Domaine (vérifiée par un enregistrement DNS TXT). Ne supprimez jamais cet enregistrement TXT ; la vérification expire sans lui.
  2. Bing Webmaster Tools : « Importer depuis Google Search Console » est le plus rapide. Une propriété Domaine GSC ne peut pas être importée ; Bing crée un site préfixe-URL (https://example.com/) à la place, ce qui fonctionne. Soumettez-y également le sitemap.
  3. Fichier de clé IndexNow, déployé avant la première soumission :
    KEY=$(openssl rand -hex 16)
    printf '%s' "$KEY" > public/$KEY.txt          # tout dossier servi à la racine du site
    # commiter, déployer, puis confirmer qu'il affiche la clé et rien d'autre :
    curl -s "https://example.com/$KEY.txt"
    
    La clé est publique par conception (tout le monde peut lire le fichier), elle peut donc vivre dans package.json : "seo:indexnow": "INDEXNOW_KEY=<clé> node scripts/indexnow.mjs --host example.com"
  4. Fichier de file d'attente docs/seo/index-queue.md (modèle ci-dessous), commit dans le dépôt. Pas dans un dossier temporaire ou scratch.

Flux de travail : le jour de la mise en ligne des pages

  1. Vérifiez que les pages sont en ligne. Propre site, requêtes séquentielles :
    for p in /blog/nouvel-article /zh/blog/nouvel-article; do
      curl -s -o /dev/null -w "%{http_code} $p\n" "https://example.com$p"
    done
    curl -s https://example.com/blog/nouvel-article | grep -o '<link rel="canonical"[^>]*>'
    
    Chaque URL doit renvoyer 200 (pas une redirection), porter une canonique auto-référencée, apparaître dans le sitemap et être liée depuis au moins une page que Google explore déjà (accueil, index du blog, bloc « derniers articles » dans le pied de page, article connexe). Ne soumettez rien qui échoue à ces conditions.
  2. IndexNow.
    npm run seo:indexnow -- /blog/nouvel-article /zh/blog/nouvel-article
    npm run seo:indexnow -- --sitemap        # après une grosse release, ou si vous n'êtes pas sûr de ce qui a changé
    
    200 ou 202 signifie accepté (202 est normal pendant la validation d'une nouvelle clé). 403 : le fichier de clé n'est pas en ligne ou son contenu diffère. 422 : une URL est sur un autre hôte, généralement www. vs le domaine nu.
  3. Mettez à jour la file d'attente. Trouvez ce qui est nouveau depuis la dernière exécution en comparant le sitemap en direct avec un instantané commité (lors de la première exécution, sauvegardez simplement l'instantané ; --dry-run ne nécessite pas de clé) :
    node scripts/indexnow.mjs --host example.com --sitemap --dry-run 2>/dev/null | sort > sitemap-maintenant.txt
    comm -13 docs/seo/sitemap-instantane.txt sitemap-maintenant.txt     # URL ajoutées depuis l'instantané
    mv sitemap-maintenant.txt docs/seo/sitemap-instantane.txt
    
    Ordonnez la file d'attente par : (1) pages publiées aujourd'hui, les plus récentes en premier ; (2) langues principales avant les traductions, par exemple anglais puis chinois ; (3) sujets urgents (une release, un arrêt) avant les sujets persistants ; (4) pages existantes dont le contenu a changé de manière significative. Les autres langues en dernier.
  4. Renvoyez le sitemap dans Search Console après avoir ajouté beaucoup d'URL ou une nouvelle section : Sitemaps → entrez https://example.com/sitemap.xml → Soumettre. Comparez « Pages découvertes » avec votre propre comptage. Il devient obsolète : le nôtre affichait 243 jusqu'à ce que nous le renvoyions, puis 423.
  5. Demandez l'indexation dans Search Console, depuis le haut de la file d'attente :
    • Ouvrez Search Console et vérifiez que le compte dans l'URL (/u/0/, /u/1/, /u/2/) affiche la propriété. L'index change entre les jours ; utilisez celui qui la liste.
    • Collez l'URL dans la barre d'inspection en haut, attendez le résultat, cliquez sur Demander l'indexation, attendez le test en direct (environ une minute).
    • Comptez-la uniquement lorsque la boîte de dialogue « Indexation demandée » apparaît. Pas de dialogue signifie que cela n'a pas fonctionné, souvent parce que le compte n'a pas les permissions.
    • « Une erreur s'est produite » au premier essai : réessayez une fois. Cela fonctionne généralement.
    • « Quota dépassé » : arrêtez pour la journée ; le quota se réinitialise vers minuit heure du Pacifique US. Prévoyez environ 10 par jour.
    • Inscrivez la date dans la ligne de la file d'attente.
  6. Bing Soumettre des URL : Bing Webmaster Tools → URL Submission → Submit URLs → collez les URL suivantes de la file d'attente, une par ligne, jusqu'au quota restant affiché sur la page (100 par jour). Inscrivez la date dans les lignes de la file d'attente.
  7. Enregistrez une ligne par action dans docs/seo/log.md, avec la référence du déploiement ou du commit : - main=abc1234 en ligne. IndexNow 18 URL → 200. GSC demandé 10 (Quota dépassé à la 11e). Bing 100 soumises, 44 restantes dans la file.

Suivi, 1 à 3 jours plus tard

Inspectez les pages les plus récentes en premier dans URL Inspection (Bing a sa propre inspection d'URL avec des statuts similaires) :

StatutSignificationAction
L'URL est sur GoogleIndexéeMarquer comme indexée, retirer de la file, journaliser
URL inconnue de GooglePas dans un sitemap que Google a lu, aucun lien trouvéRenvoyer le sitemap, ajouter des liens internes, demander l'indexation
Découverte – actuellement non indexée, Page de référence : Aucune détectéeGoogle connaît l'URL uniquement via le sitemap et ne l'a pas exploréeAjouter des liens depuis des pages déjà explorées et visitées ; gagner des liens externes ; demander l'indexation
Explorée – actuellement non indexéeRécupérée, jugée pas encore digne d'être indexéeVérifier le contenu creux ou quasi-dupliqué (traductions, pages modèles) ; améliorer ou fusionner. Plus de demandes n'aideront pas
Dupliquée, Google a choisi une canonique différenteConfusion canonique ou hreflangCorrection des balises canoniques ; s'assurer que les versions linguistiques ne sont pas identiques
Page avec redirection / Non trouvée (404)Mauvaise URL dans le sitemapCorriger le sitemap

« Page de référence : Aucune détectée » est l'indice clé : la solution est les liens, pas plus de soumissions. Ce qui a fonctionné pour nous : un bloc en pied de page liant les cinq derniers articles depuis la page d'accueil et les guides principaux, des liens croisés entre articles connexes, et un dépôt GitHub public dont le README pointe vers les pages.

Les données de performance de Search Console ont un décalage de 2 à 3 jours. Ne jugez pas une page sur les chiffres de la veille.

Modèle de fichier de file d'attente

# File d'attente d'indexation
Haut = soumettre ensuite. Ordre : les plus récents d'abord ; anglais et chinois avant les autres langues.
Limites : Google Demander l'indexation ~10/jour par propriété (réinitialisation vers minuit heure du Pacifique US). Bing Soumettre des URL 100/jour.

| URL | Ajoutée | Google demandé | Bing soumis | Indexée |
|---|---|---|---|---|
| https://example.com/blog/nouvel-article | 2026-11-07 | 11-08 | 11-07 | |
| https://example.com/zh/blog/nouvel-article | 2026-11-07 | | 11-07 | |

Liste de vérification

  • Chaque URL en ligne : 200, canonique auto-référencée, dans le sitemap, liée depuis une page explorée
  • IndexNow a renvoyé 200 ou 202 pour les URL nouvelles et modifiées
  • File d'attente mise à jour et triée par priorité
  • Sitemap renvoyé après un ajout important ; le nombre de découvertes correspond
  • Demande d'indexation Search Console jusqu'au quota, chaque confirmée par la boîte de dialogue
  • Soumission d'URL Bing jusqu'au quota
  • Lignes de journal écrites avec les références de commit ou de déploiement ; date d'inspection de suivi notée

Pièges que nous avons rencontrés

  • Demander l'indexation n'a rien fait pendant trois jours. Aucune boîte de dialogue de confirmation n'est jamais apparue. Le compte Google par défaut du navigateur n'avait pas accès à la propriété ; ouvrir Search Console sous le compte qui la possédait (un /u/N/ différent) l'a immédiatement résolu. Des jours plus tard, la propriété s'est ouverte sous un autre index.
  • « Adresse de sitemap invalide ». Sur une propriété Domaine, taper sitemap.xml échoue ; l'URL complète https://example.com/sitemap.xml fonctionne.
  • Comptages de sitemap obsolètes. Search Console continuait d'afficher 11 pages découvertes alors que le site en avait 100, jusqu'à ce que nous renvoyions le sitemap ; plus tard 243 contre 423.
  • Les pages non liées sont restées invisibles. Deux guides publiés sans aucun lien interne étaient toujours « URL inconnue de Google » des jours plus tard.
  • Estimation du quota. Nous avons d'abord supposé environ 4 demandes par jour ; c'était environ 10. La 11e renvoie « Quota dépassé ».
  • La première demande de la journée a échoué avec « Une erreur s'est produite ». La nouvelle tentative a réussi.
  • File d'attente perdue. Une liste Bing de 115 URL conservée dans un dossier temporaire a disparu au redémarrage de la session, et nous l'avons reconstruite à partir du sitemap. Gardez la file d'attente dans le dépôt.
  • File d'attente plus longue que le quota. Après une journée chargée, 115 URL attendaient 100 créneaux Bing. L'ordre de priorité a décidé ce qui passait en premier : nouveaux articles en anglais et chinois, traductions après.
  • Pas de navigateur dans une session. Search Console et Bing en ont besoin ; IndexNow non. Exécutez IndexNow, journalisez l'écart, rattrapez lors de la prochaine session.
  • 202, puis 200. IndexNow a répondu 202 pour les premières soumissions avec une nouvelle clé et 200 ensuite. Les deux sont des succès.
  • Les traductions submergent le quota. Environ 392 des 441 URL du sitemap étaient des traductions. Les soumettre toutes manuellement brûle des jours de quota sur des pages qu'un nouveau domaine voit rarement indexées de toute façon.

Compétences associées

  • seo-page : construit la page que cette compétence fait indexer.
  • programmatic-pages : expédie de nombreuses URL en une fois ; la priorité de la file d'attente y est cruciale.
  • multilingual-seo : quelles langues publier et soumettre en premier ; hreflang.
  • competitor-pages, trend-keywords : pages sensibles au temps qui vont en tête de file.
  • keyword-research : décide quelles pages existent en premier lieu.
  • ai-search : llms.txt et robots.txt pour les robots IA ; l'index de Bing alimente également Copilot.
  • seo-daily-report : rapporte ce qui a été indexé et ce qui est en file d'attente pour demain.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

ummydev/ai-search

When the user wants to make a site readable, accurate and quotable for AI assistants (ChatGPT, Claude, Perplexity, Gemini, Copilot, Google AI Overviews) so they describe the product correctly and cite it. Use when the user says "llms.txt", "llms-full.txt", "AI search", "GEO", "AEO", "get cited by ChatGPT", "show up in Perplexity answers", "allow AI crawlers", "GPTBot in robots.txt", "AI gets our pricing wrong", "AI confuses us with another product", "brand name collision", "Organization schema sameAs" or "make the site agent-readable". Covers llms.txt, robots.txt for AI crawlers, definition sentences, comparison tables and FAQ, public pricing, Organization and WebSite structured data, and brand naming.

ummydev/remotion-video

When the user wants to make a vertical promo video of their own software product in code with Remotion, rebuilding the product's real UI instead of screen-recording it, with a TTS voice-over, captions timed to the voice and camera moves that zoom into details. Use when the user says "Remotion", "make a product video", "faceless demo video", "UI motion video", "programmatic video", "product reel", "animate our UI", "render the video", or wants a TikTok or Reels video about their app that an agent can re-render after every change.

ummydev/short-video-formats

When the user wants to choose or plan the format of a promo short video for TikTok, Instagram Reels, YouTube Shorts or Xiaohongshu, especially for a software product, dev tool or AI agent. Covers the four formats that carry this category (talking head over a demo, phone filming the screen, faceless UI demo, talking-head open into full-screen demo), screen layout rules, hooks and endings like "comment X and I'll send it", and how to make an AI presenter. Use when the user says "what kind of video should we make", "video format", "talking head", "faceless video", "AI presenter", "AI avatar", "UGC style", "hook ideas", "how should the first frame look", "comment to get the link", or "视频形式".

ummydev/video-retro

When the user wants to review how their short videos performed on TikTok, Instagram Reels or other platforms and decide what to make next. Covers reading views, likes, comments, saves and follows without scraping, the stats log, 24-hour and 72-hour checks, comparing topics, formats and hooks, the daily report and recording what to change. Use when the user says "how did the video do", "video stats", "复盘", "retro", "which videos worked", "why did this flop", "weekly video report", "update the stats", or at the start or end of a short-video working day.

Skills associés