# https://www.wilhelmina.com # # Policy: AI TRAINING crawlers are refused. AI SEARCH and ANSWER engines are # welcome, because they send clients to Wilhelmina. The two are different bots # run by the same companies, and refusing both would hide this agency's talent # from every buyer who now starts a search in ChatGPT, Claude, Perplexity or Siri. # # robots.txt only binds crawlers that choose to obey it. Bytespider in # particular ignores it, which is why the server-side guard refuses the same # list again, and why /.well-known/tdmrep.json reserves the text and data mining # rights independently of any user-agent. All three read one list. Keep them in step. # Content Signals Policy (contentsignals.org). States what the content may be # USED for, which Disallow cannot say: indexing yes, live AI answers yes, # model training no. Repeated on the search group below, because a named # crawler never reads this record. User-agent: * Content-Signal: search=yes, ai-input=yes, ai-train=no Allow: / Disallow: /api # ---------------------------------------------------------------- AI training User-agent: GPTBot User-agent: ClaudeBot User-agent: anthropic-ai User-agent: Claude-Web User-agent: CCBot User-agent: Google-Extended User-agent: Applebot-Extended User-agent: meta-externalagent User-agent: FacebookBot User-agent: Bytespider User-agent: TikTokSpider User-agent: Amazonbot User-agent: cohere-ai User-agent: cohere-training-data-crawler User-agent: Diffbot User-agent: ImagesiftBot User-agent: omgili User-agent: omgilibot User-agent: Timpibot User-agent: PanguBot User-agent: DeepSeekBot User-agent: AI2Bot User-agent: Ai2Bot-Dolma User-agent: Webzio-Extended Disallow: / # ------------------------------------------- Search and answer engines: allowed # Named so nobody moves one into the block list by accident: OAI-SearchBot is # not GPTBot, Claude-SearchBot is not ClaudeBot, Applebot is not # Applebot-Extended. # # The Disallow set is repeated here deliberately. A crawler obeys only its # single most-specific matching group, so the moment Googlebot is named it # stops reading "User-agent: *" — a group of "Allow: /" alone would hand it # /api, which the site has kept out of robots since before this file. User-agent: Googlebot User-agent: Googlebot-Image User-agent: Bingbot User-agent: DuckDuckBot User-agent: Applebot User-agent: OAI-SearchBot User-agent: ChatGPT-User User-agent: Claude-SearchBot User-agent: Claude-User User-agent: PerplexityBot User-agent: Perplexity-User Content-Signal: search=yes, ai-input=yes, ai-train=no Allow: / Disallow: /api Sitemap: https://www.wilhelmina.com/sitemap.xml