CrawlCheck
Outils gratuits · pour les sites et pour les agents

Huit contrôles gratuits, sans inscription.

Saisissez un domaine. Pas de compte, rien à installer. Ce qu’un agent apprend sur votre site avant d’agir, si une machine peut lire vos fichiers, si ce crawler dans vos journaux est authentique, ce que votre robots.txt autorise réellement à chaque agent IA, un premier brouillon de votre llms.txt à partir des pages que vous publiez déjà, comment vous vous situez face à un concurrent, sur quoi Google peut s’ancrer dans une vidéo, et si une requête de bot signée vient bien du bot qu’elle nomme. Chaque contrôle est aussi un point d’accès public qu’un agent peut appeler.

En une phrase

La page des outils gratuits répond à huit questions sans compte, chacune aussi appelable comme point d’accès public par un agent : ce qu’un agent IA apprend sur un domaine par la réponse Resolve signée (une décision par action, ce que le site déclare, ce qui lui a été servi, ce qui est absent) ; si une machine peut lire ses robots.txt, sitemap et llms.txt avec le bon type de contenu ou si un cache sert quelque chose de périmé ; si une requête de vos journaux d’accès se présentant comme GPTBot, ClaudeBot, Googlebot ou un autre crawler nommé provient des plages IP publiées par cet opérateur (vérifiée, usurpée ou invérifiable, jamais deux issues seulement) ; ce qu’un robots.txt autorise réellement à chaque crawler IA sur un chemin ; un premier brouillon de llms.txt à partir de pages déjà publiées ; une comparaison côte à côte avec un concurrent ; sur quoi un résultat de recherche peut s’ancrer dans une vidéo ; et si une requête signée Web Bot Auth vient bien du bot qu’elle nomme.

  1. 01Qu’apprend un agent sur votre site ?la réponse Resolve signée, mise en page
  2. 02Une machine peut-elle lire vos fichiers ?robots.txt · sitemap · llms.txt · page d’accueil
  3. 03Ce robot dans vos journaux est-il réel ?vérifié · usurpé · invérifiable
  4. 04Que permet votre robots.txt à chaque robot IA ?par agent, au chemin de votre choix
  5. 05Rédiger un llms.txt à partir de ce que vous publiez déjàpage d’accueil + jusqu’à 25 pages déclarées
  6. 06Comment vous situez-vous face à un concurrent ?deux pages d’accueil, une analyse chacune
  7. 07Cette requête de bot signée est-elle réelle ?Web Bot Auth, chaque étape affichée
  8. 08Sur quoi Google peut-il s’ancrer dans votre vidéo ?chapitres · sous-titres · description · sujets
Les constats les plus fréquents, sur toutes les analyses
Aucun llms.txtNO_LLMS_TXT30.8%La page est surtout du codePAGE_IS_MOSTLY_CODE28.9%Les fichiers machine pèsent plus que la pageMACHINE_CHAIN_HEAVY17.7%Un cache sert une copie périméeSTALE_CACHE_SERVED17.4%Les groupes d’IA nommés perdent les règles *ROBOTS_RULES_SHADOWED13.2%Pas d’en-tête HSTSHSTS_MISSING9.4%robots.txt ne déclare aucun sitemapROBOTS_NO_SITEMAP8.8%Aucun sitemap XML trouvéNO_SITEMAP_FOUND8.8%Part des 3,177 analyses du jeu de données public qui présentaient ce constat. En direct ; les mêmes chiffres que sur /data.

Votre site en fait-il partie ? Vérifiez gratuitement → Les 52 taux →

01

Qu’apprend un agent sur votre site ?

La réponse publique et signée que Resolve donne à tout agent qui interroge un domaine avant de lire, citer, se connecter ou transiger, mise en page pour une personne : une décision par action, ce que le site déclare, ce qui lui a été servi, ce qui est absent.

Les agents ne lisent pas votre page d’accueil pour s’en faire une impression. Ils interrogent un point d’accès et agissent sur les champs. Cette page vous montre ces champs pour votre propre domaine et, s’il n’y a pas encore d’enregistrement, le dit comme on le dit à l’agent : non mesuré, rien de deviné.

Agents : GET /api/v1/resolve?domain=

Un appel public à Resolve. Signé, vérifiable hors ligne, sans clé.

02

Une machine peut-elle lire vos fichiers ?

Quatre requêtes au domaine indiqué : robots.txt, sitemap, llms.txt et la page d’accueil, lus selon le type de contenu et l’âge du cache.

Agents : GET /api/tool/files?domain=

Quatre requêtes au site indiqué. Résultats mis en cache dix minutes.

03

Ce robot dans vos journaux est-il réel ?

Collez des lignes brutes de journal d’accès. Chacune qui nomme un robot connu est vérifiée par rapport aux plages d’adresses que cet opérateur publie réellement.

C’est le contrôle que presque personne ne fait, et il renverse les conclusions. Un journal plein de GPTBot en 403 donne l’impression que votre hébergeur bloque OpenAI — jusqu’à ce que vous découvriez qu’ils venaient tous d’une seule adresse portant sept noms de robots différents. Nous l’avons mesuré exactement ainsi sur de vrais sites. Regroupez par adresse avant de conclure quoi que ce soit.

Agents : GET /api/v1/visitor?ip=&ua=

Rien n’est stocké. Les lignes sont examinées en mémoire et la réponse n’est pas journalisée.

04

Que permet votre robots.txt à chaque robot d’IA ?

Une seule récupération du fichier, puis chaque moteur de réponse, index de recherche et robot d’entraînement nommé est résolu comme le fait un robot : uniquement son propre groupe, correspondance la plus longue, allow l’emporte en cas d’égalité.

La règle que tout le monde comprend mal : un Disallow sous User-agent: * ne s’applique jamais à un agent qui a son propre groupe. Nommez GPTBot une seule fois n’importe où dans le fichier et chaque règle * cesse de s’appliquer à lui. Ceci montre ce qui s’applique réellement, agent par agent, au chemin choisi.

Agents : GET /api/tool/robots?domain=&path=

Une requête au site indiqué. Les robots d’entraînement sont listés, pas jugés.

05

Rédiger un brouillon de llms.txt à partir de ce que vous publiez déjà

Lit votre page d’accueil et jusqu’à 25 pages déclarées avec leurs propres titres et descriptions, et rédige un premier brouillon dans la forme habituelle.

C’est volontairement un brouillon. Un fichier généré n’est qu’une liste de liens avec les titres pour descriptions ; la valeur du fichier, c’est le choix. Réduisez-le aux pages sur lesquelles on interrogerait un assistant, rédigez vous-même les descriptions, puis servez-le en text/plain et vérifiez l’URL nue — le contrôle ci-dessus vous dira s’il est bien arrivé.

Jusqu’à 27 requêtes au site indiqué. Résultats mis en cache dix minutes.

06

Comment vous situez-vous face à un concurrent ?

Deux pages d’accueil, la même analyse sur les deux : chaque section dont un moteur de réponse a besoin, côte à côte, avec les constats propres à l’un de vous deux.

Deux analyses, ~20 secondes chacune si l’un des sites est nouveau pour nous. Chacune est conservée comme toute analyse ; la comparaison elle-même n’est pas enregistrée. Besoin de tout le marché ? Un site face à jusqu’à cinq concurrents.

07

Cette requête de robot signée est-elle réelle ?

Web Bot Auth permet à un robot de signer chaque requête avec une clé qu’il publie. Saisissez l’hôte du robot, ou collez les en-têtes d’une requête signée, et chaque étape du contrôle s’affiche : le répertoire de clés, les signatures qu’il porte, l’empreinte de chaque clé, les composants couverts et la fenêtre de temps.

N’importe qui peut taper un user-agent ; une signature sur votre propre nom d’hôte, non. Une clé ne compte que si elle a signé le répertoire où elle figure, si bien qu’une liste de clés copiée ou modifiée ne prouve rien. Cela fonctionne pour tout agent signataire, pas seulement le nôtre.

Agents : GET /api/tool/wba?agent=

Une requête vers le répertoire de clés de l’agent. Les en-têtes collés sont vérifiés en mémoire et ne sont pas stockés ; un nonce vérifié n’est conservé que jusqu’à son expiration, pour repérer un rejeu.

08

À quoi Google peut-il s’accrocher dans votre vidéo ?

Collez une URL YouTube : chapitres, type de sous-titres, description, langue et thèmes, chaque ligne comparée à ce à quoi un résultat de recherche peut s’accrocher. Les chaînes entières et le lien avec le site sont dans Watch.

Comment une revendication de robot est jugée

Trois résultats, jamais deux

Compter les invérifiables comme usurpés gonflerait le taux ; les compter comme authentiques le sous-estimerait. Le taux d’usurpation se divise donc uniquement par vérifiées plus usurpées, et la réponse indique ce dénominateur au lieu de vous laisser le supposer.

Vérifiée

L’adresse est dans la plage publiée par l’opérateur. La requête est bien ce qu’elle prétend être.

Usurpée

L’opérateur publie des plages et cette adresse est en dehors de toutes. Quelqu’un d’autre porte ce nom.

Invérifiable

L’opérateur ne publie aucun flux, donc l’identité ne peut être ni confirmée ni mise en cause. Amazonbot et Meta-ExternalAgent sont ici en permanence.

Pourquoi ils existent

Ce que détectent les deux contrôles

Quand les lancer : après toute modification d’un fichier machine, après tout changement de configuration de cache ou de CDN, et chaque fois qu’un correctif côté robot « devrait » être en ligne. Vérifiez l’URL nue depuis l’extérieur de votre propre session, car votre navigateur connecté est le client le moins représentatif de votre site.

La vérification des fichiers machine

Récupère vos robots.txt, llms.txt et sitemap comme le fait un robot, et lit le type de contenu et le corps, pas seulement le statut. La panne pour laquelle elle existe : un bouclier anti-bot qui répond HTTP 200 avec du HTML là où un fichier texte devrait se trouver. Tout moniteur de disponibilité trouve cela sain ; un validateur le lit comme tout est permis.

La vérification de purge

La purge que vous venez de lancer a-t-elle vraiment évincé quelque chose ? Elle récupère l’URL avant et après sans contournement de cache, compare les octets et lit les en-têtes age et cache-status. Un 200 renvoyé par un point de purge parle de l’appel API, pas du cache.

Prenez les scripts

Les deux mêmes vérifications, pour un terminal.

Aucun n’est un produit. Ce sont les vérifications qui ont attrapé de vraies pannes sur ce projet, publiées parce qu’un article décrivant un outil qu’on ne peut pas avoir est une publicité. Utilisez-les, modifiez-les, sans attribution. Elles ne font aucune requête réseau ailleurs que vers l’URL que vous leur donnez.

cachecheck.sh

Vérifie si un cache sert un document que votre origine ne produit plus. Il ignore totalement les codes de statut : un PURGE qui renvoie 200 prouve que quelque chose a répondu, pas que quoi que ce soit a été évincé. Il récupère l’URL nue et une version sans cache, les compare, et refuse de juger si l’une des deux lectures est une page de vérification.

Voir ou télécharger → · curl -sO https://crawlcheck.io/tools/cachecheck.sh

verify.sh

Vérifie si une modification que vous avez déployée figure vraiment sur la page que reçoit un inconnu. Il compte votre balisage hors des balises style et script, pour qu’un nom de classe présent dans une feuille de style ne passe pas pour un élément de la page ; il récupère trois fois pour faire apparaître tout ce qui est conditionnel ; et il précise qu’il mesure la vue anonyme.

Voir ou télécharger → · curl -sO https://crawlcheck.io/tools/verify.sh

Vous voulez que ces contrôles tournent pour vous, deux fois par jour ?

Ces contrôles tournent quand vous y pensez. Watch remesure deux fois par jour, sur trois domaines, ce que chaque crawler IA nommé reçoit, et ne vous écrit que lorsqu’un résultat change : la réponse qu’un agent reçoit sur votre site, tenue à jour sans que personne ait à penser à vérifier.

Watch, 29 $ par mois →

Les huit contrôles ci-dessus restent gratuits et ne demandent aucun compte.

Questions sur cette page

QQue voit un agent IA de mon site avant d’agir ?
Saisissez votre domaine dans le premier outil. Il affiche la réponse Resolve publique et signée que reçoit tout agent : une décision pour lire, citer, se connecter et transiger, ce que votre site déclare (robots.txt par agent, signaux de droits, capacités), ce qui a été servi à CrawlCheck, ce qui a été cherché sans être trouvé, et quand l’observation a eu lieu. S’il n’y a pas encore d’enregistrement, il indique not_measured et rien n’est deviné, exactement ce qui est dit à l’agent ; une analyse gratuite crée l’enregistrement.
QUn agent peut-il appeler ces outils directement ?
Oui. Chaque contrôle est un point d’accès public nommé sur sa ligne : Resolve sur /api/v1/resolve?domain=, le contrôle des fichiers machine sur /api/tool/files, le contrôle des visiteurs sur /api/v1/visitor, le résolveur robots.txt sur /api/tool/robots, le contrôle Web Bot Auth sur /api/tool/wba. Sans clé, et les réponses Resolve sont signées pour être vérifiables hors ligne.
QComment vérifier qu’une requête de robot signée est réelle ?
Utilisez le vérificateur de signature de cette page. Donnez-lui l’hôte d’un robot : il récupère le répertoire de clés à /.well-known/http-message-signatures-directory sans suivre de redirection, vérifie le type de contenu, calcule l’empreinte RFC 7638 de chaque clé et vérifie les signatures du répertoire lui-même, de sorte qu’une clé ne compte que si elle a signé le répertoire où elle figure. Collez les en-têtes d’une requête signée et il vérifie ensuite la signature de cette requête avec une clé prouvée de cette façon, en montrant les composants couverts et la fenêtre de temps. Cela fonctionne pour tout agent Web Bot Auth, pas seulement le nôtre.
QComment le vérificateur de journaux décide-t-il qu’une requête est réelle ?
Chaque ligne qui nomme un robot connu est vérifiée par rapport aux plages IP publiées par cet opérateur (OpenAI, Anthropic, Perplexity, Google, Bing, Apple). Dans une plage publiée : vérifiée ; hors de toutes les plages : usurpée ; un opérateur sans flux publié (Amazonbot, Meta-ExternalAgent) est invérifiable et n’est compté ni dans un cas ni dans l’autre.
QCe que je colle est-il stocké ?
Non. Jusqu’à 200 lignes sont examinées en mémoire et la réponse n’est pas journalisée.
QQue vérifie le contrôle de domaine ?
Quatre requêtes : robots.txt, sitemap.xml, llms.txt et la page d’accueil. Il indique si chaque fichier est servi avec le bon type de contenu (un robots.txt qui renvoie du HTML est illisible pour un robot, même avec un 200) et si la copie servie est plus ancienne que ce que produit l’origine.
QPourquoi une purge qui a renvoyé 200 sert-elle encore d’anciens octets ?
Un 200 d’un point d’accès de purge concerne l’appel d’API, pas le cache. Le contrôle lit les en-têtes d’âge de la copie servie au lieu de se fier à la réponse de purge.

Partez de ce que vous vérifiez

Pour aller plus loin