Bot catalog
We match the user agent, then verify the IP against the operator list when one exists. The IP is dropped after that. Coding-agent fetches often come from the user's own address, so they stay unverifiable.
Live-answer fetchers are the default citation. Search and training are separate. Blocking training while allowing ChatGPT-User is a valid default. We do not sell opening the site to every scraper.
| Bot | Provider | Purpose | Verification |
|---|---|---|---|
| claude-code | Anthropic | Coding agents | Unverifiable |
| Claude-SearchBot | Anthropic | Search index | IP or rDNS |
| Claude-User | Anthropic | Live answers | IP or rDNS |
| ClaudeBot | Anthropic | Training | IP or rDNS |
| ChatGPT-User | OpenAI | Live answers | IP or rDNS |
| OAI-SearchBot | OpenAI | Search index | IP or rDNS |
| GPTBot | OpenAI | Training | IP or rDNS |
| Perplexity-User | Perplexity | Live answers | IP or rDNS |
| PerplexityBot | Perplexity | Search index | IP or rDNS |
| Google-GeminiNotebook | Live answers | IP or rDNS | |
| Google-Agent | Live answers | IP or rDNS | |
| Googlebot | Search index | IP or rDNS | |
| bingbot | Microsoft | Search index | IP or rDNS |
| meta-externalfetcher | Meta | Live answers | Unverified |
| meta-webindexer | Meta | Search index | Unverified |
| meta-externalagent | Meta | Training | Unverified |
| MistralAI-User | Mistral | Live answers | IP or rDNS |
| MistralAI-Index | Mistral | Search index | IP or rDNS |
| MistralAI-Training | Mistral | Training | Unverified |
| Amzn-User | Amazon | Live answers | IP or rDNS |
| Amzn-SearchBot | Amazon | Search index | IP or rDNS |
| Amazonbot | Amazon | Training | IP or rDNS |
| DuckAssistBot | DuckDuckGo | Live answers | IP or rDNS |
| Applebot | Apple | Search index | IP or rDNS |
| CCBot | Common Crawl | Training | IP or rDNS |
| Bytespider | ByteDance | Training | Unverified |
| opencode | OpenCode | Coding agents | Unverifiable |