<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jan Driessen</title>
    <description>The latest articles on DEV Community by Jan Driessen (@janibertdev).</description>
    <link>https://dev.to/janibertdev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4118437%2F3ba83389-ce4f-4410-a755-8b7fcf2922f9.png</url>
      <title>DEV Community: Jan Driessen</title>
      <link>https://dev.to/janibertdev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/janibertdev"/>
    <language>en</language>
    <item>
      <title>Your robots.txt might not say what you think it says</title>
      <dc:creator>Jan Driessen</dc:creator>
      <pubDate>Thu, 10 Sep 2026 03:11:20 +0000</pubDate>
      <link>https://dev.to/janibertdev/your-robotstxt-might-not-say-what-you-think-it-says-lmg</link>
      <guid>https://dev.to/janibertdev/your-robotstxt-might-not-say-what-you-think-it-says-lmg</guid>
      <description>&lt;p&gt;I ship a bunch of small free tools, and last week I wanted a quick way to double-check what &lt;code&gt;robots.txt&lt;/code&gt; a site was &lt;em&gt;actually&lt;/em&gt; serving to crawlers — not what's sitting in the repo, what's actually on the wire.&lt;/p&gt;

&lt;p&gt;Turns out those aren't always the same thing. Cloudflare has a feature called AI Crawl Control that can rewrite &lt;code&gt;robots.txt&lt;/code&gt; at the edge — inject its own rules for AI crawlers — without touching your origin file at all. If you're only ever checking the file in your repo (or your CMS, or wherever it's generated), you'd never see that. The version Googlebot, GPTBot, or your own CI sees can be different from the one you think you're serving.&lt;/p&gt;

&lt;p&gt;Every &lt;code&gt;robots.txt&lt;/code&gt; tool I could find is a &lt;em&gt;generator&lt;/em&gt; — it helps you build a static file. None of them check what's actually live. So I built a tiny one that does:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx github:janibert1/robots-check yourdomain.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Zero dependencies, just fetches the live file and tells you what's there, including whether anything looks CDN-injected. There's also a &lt;code&gt;--ci&lt;/code&gt; flag for build pipelines (exits 1 if the whole site is accidentally disallowed) and a stricter &lt;code&gt;--fail-on-cloudflare-managed&lt;/code&gt; flag if you want CI to fail on any Cloudflare-injected rewrite specifically, plus a matching GitHub Action (&lt;code&gt;janibert1/robots-check@v1&lt;/code&gt;) if you'd rather wire it into a workflow than run it by hand.&lt;/p&gt;

&lt;p&gt;Repo (MIT): &lt;a href="https://github.com/janibert1/robots-check" rel="noopener noreferrer"&gt;https://github.com/janibert1/robots-check&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you run a site behind Cloudflare, it's worth a 10-second check — worst case it confirms nothing weird is happening.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>cloudflare</category>
      <category>seo</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
