# As a condition of accessing this website, you agree to abide by the following # content signals: # (a) If a Content-Signal = yes, you may collect content for the corresponding # use. # (b) If a Content-Signal = no, you may not collect content for the # corresponding use. # (c) If the website operator does not include a Content-Signal for a # corresponding use, the website operator neither grants nor restricts # permission via Content-Signal with respect to the corresponding use. # The content signals and their meanings are: # search: building a search index and providing search results (e.g., returning # hyperlinks and short excerpts from your website's contents). Search does not # include providing AI-generated search summaries. # ai-input: inputting content into one or more AI models (e.g., retrieval # augmented generation, grounding, or other real-time taking of content for # generative AI search answers). # ai-train: training or fine-tuning AI models. # use: how AI systems may consume the content (immediate, reference, or full). # ANY RESTRICTIONS EXPRESSED VIA CONTENT SIGNALS ARE EXPRESS RESERVATIONS OF # RIGHTS UNDER ARTICLE 4 OF THE EUROPEAN UNION DIRECTIVE 2019/790 ON COPYRIGHT # AND RELATED RIGHTS IN THE DIGITAL SINGLE MARKET. # BEGIN Cloudflare Managed content User-agent: * Content-Signal: search=yes,ai-train=no,use=reference Allow: / # Training crawlers User-agent: Amazonbot Disallow: / User-agent: Applebot-Extended Disallow: / User-agent: Bytespider Disallow: / User-agent: CCBot Disallow: / User-agent: ClaudeBot Disallow: / User-agent: Diffbot Disallow: / User-agent: Google-Extended Disallow: / User-agent: GPTBot Disallow: / User-agent: omgili Disallow: / User-agent: anthropic-ai Disallow: / User-agent: Claude-Web Disallow: / User-agent: cohere-ai Disallow: / User-agent: MistralAI-Training Disallow: / User-agent: meta-externalagent Disallow: / User-agent: GoogleOther Disallow: / User-agent: Baiduspider Disallow: / User-agent: PetalBot Disallow: / User-agent: AwarioSmartBot User-agent: AwarioRssBot Disallow: / User-agent: Google-CloudVertexBot Disallow: / User-agent: QualifiedBot Disallow: / User-agent: Cotoyogi Disallow: / User-agent: ICC-Crawler Disallow: / User-agent: atlassian-bot Disallow: / User-agent: FishBot Disallow: / User-agent: BorderxBot Disallow: / User-agent: NavuBot Disallow: / User-agent: SemrushBot-SWA Disallow: / User-agent: WARDBot Disallow: / User-agent: magpie-crawler Disallow: / User-agent: KimiBot Disallow: / User-agent: CitibotSiteCrawler Disallow: / # END Cloudflare Managed Content # See https://www.robotstxt.org/robotstxt.html for documentation on how to use the robots.txt file # # Search engines are welcome on every page here, and so is a crawler that # fetches one page to answer a question somebody asked it and links back. The # groups below are the other kind: crawlers whose operators say the pages they # take may go into training a model. A puzzle on this site was written by a # person and published under CC BY-SA 4.0, which asks for two things, credit # and the same freedom passed on, and a model gives back neither. # # The reasoning is Orbit's decisions/0021-refuse-the-crawlers-that-train-models.md. # The same refusal in the form a machine reads is /.well-known/tdmrep.json. # What it promises a player is at /documentation/terms. # # The rule for editing this list: a crawler is here because its operator # documents training as a use of what it takes. One that only fetches to answer # and cite stays out of it, whatever its parent company also sells. User-agent: GPTBot User-agent: ClaudeBot User-agent: Claude-Web User-agent: anthropic-ai User-agent: CCBot User-agent: Google-Extended User-agent: Applebot-Extended User-agent: Meta-ExternalAgent User-agent: meta-externalfetcher User-agent: Amazonbot User-agent: Bytespider User-agent: TikTokSpider User-agent: cohere-ai User-agent: cohere-training-data-crawler User-agent: AI2Bot User-agent: Ai2Bot-Dolma User-agent: Diffbot User-agent: omgili User-agent: omgilibot User-agent: Webzio-Extended User-agent: ImagesiftBot User-agent: PanguBot User-agent: Timpibot User-agent: ICC-Crawler User-agent: img2dataset User-agent: FriendlyCrawler Disallow: / # Answer engines. These fetch a page because a reader asked something, show a # few lines of it and link here, which is a visit. Written out rather than left # to the wildcard so that a later blanket rule cannot swallow them by accident. User-agent: OAI-SearchBot User-agent: ChatGPT-User User-agent: Claude-User User-agent: Claude-SearchBot User-agent: PerplexityBot User-agent: Perplexity-User User-agent: DuckAssistBot Disallow: # Everyone else is welcome on every page, and refused the LiveView socket. # # A crawler does not do WebSockets, so app.js boots, the socket fails and # LiveView falls back to longpoll, which answers JSON and then asks again. On # 2026-08-05 that had cost 41% of ten days of Google's crawling here, with # another 39% on the grammar chunks pulled in behind it. HTML got 10%, and # discovery, the part that puts a new page in the index, got 3%. # # None of it could ever rank. The dead render carries the whole page already; # the socket only adds the interactivity a crawler has no use for. Blocking the # two transports is safe for the same reason: the rule against hiding JavaScript # from a crawler is about resources a page needs in order to render, and these # run after it already has. # # Only the transports, and nothing under /assets. A grammar chunk is a rendering # resource by that same test, and guessing which ones a crawler may skip is how # a page ends up indexed with half of itself missing. User-agent: * Disallow: /live/longpoll Disallow: /live/websocket Sitemap: https://codincod.com/sitemap.xml