Email List Cleaning Skill
Clean an email list offline: typos, duplicates, disposable domains, role addresses, unsubscribe/bounce suppression and optional MX checks. Reason per row, no per-email fees.
View Email List Cleaning Skill
Know exactly which rule blocks which URL for which crawler, catch the mistakes Google silently ignores, and see the effect of a robots.txt change before it ships.

Test any URL against a robots.txt the way Google documents it (RFC 9309: longest matching rule wins, ties go to allow, * and $ wildcards, percent-encoding, one group per crawler), lint the file, see which AI crawlers can fetch your site, and diff a new robots.txt against the live one before you deploy it.
python3 robots_check.py test robots.txt /blog/post /admin --ua Googlebot
python3 robots_check.py test robots.txt --urls urls.txt --ua Googlebot,Bingbot,GPTBot
python3 robots_check.py lint robots.txt
python3 robots_check.py ai robots.txt
python3 robots_check.py diff live.txt new.txt --urls important-urls.txt # exit 1 if any URL becomes blocked
python3 robots_check.py fetch https://example.com/robots.txt -o live.txt # optional downloadEverything except fetch runs offline. --json on every command. Python 3.9+, standard library only. ./demo.sh shows each command on the examples; ./run_tests.sh runs the tests, which include every example table from Google's robots.txt documentation.
The screenshot is real output from the kit’s own commands. Tested from a fresh download of this exact zip: ./run_tests.sh ran 10 tests OK on Python 3.13 and 3.10.

ALLOW / BLOCK, the exact rule and line number that decided it, and which group the crawler used. Crawler groups follow Google's rules: the most specific user-agent group wins, groups for the same crawler are merged, and * is not combined with a crawler's own group. Googlebot-Image, -Video, -News and Google-InspectionTool fall back to a Googlebot group, as listed in Google's crawler docs.
Shows ALLOW/BLOCK for / (or --path) for GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, Claude-User, PerplexityBot, Perplexity-User, Google-Extended, Applebot-Extended, meta-externalagent, Amazonbot, CCBot, Bytespider, MistralAI-User and DuckAssistBot, and whether each one is governed by its own group or by *. Google-Extended and Applebot-Extended are control tokens, not crawlers. User-triggered fetchers (ChatGPT-User, Perplexity-User and others) may not follow robots.txt at all, so blocking them here is a request, not a guarantee.
Zip, 11 KB, v1.0, 10 files. Free to use, modify and share for any purpose, including commercial work, as long as this notice stays in copies. Not affiliated with or endorsed by Google or any crawler operator.
Free robots.txt tester and validator: test URLs with Google's matching rules, catch typos and dropped * rules, check GPTBot/ClaudeBot access, diff before deploy.
Clean an email list offline: typos, duplicates, disposable domains, role addresses, unsubscribe/bounce suppression and optional MX checks. Reason per row, no per-email fees.
View Email List Cleaning SkillFind HubSpot and Salesforce duplicate contacts and companies from a CSV export: emails, Gmail aliases, phones, nicknames, Inc/LLC names. Master record, filled blanks, merge files.
View CRM Duplicate Cleanup SkillMap old URLs to new ones for a site migration, collapse redirect chains, catch loops, and export 301 rules for Apache, Nginx, Netlify, Vercel, Cloudflare and Shopify.
View 301 Redirect Mapper Skill