User-agent: * Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # ───────────────────────────────────────────────────────────── # AI crawlers — explicitly allowed. # The wildcard rule above already permits these; the named blocks make the # intent unambiguous and carry the per-agent Content-Signal declaration. # ───────────────────────────────────────────────────────────── # OpenAI — training, search index, and live user-initiated fetches User-agent: GPTBot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: OAI-SearchBot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: ChatGPT-User Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # Anthropic — ClaudeBot is the current crawler; Claude-Web is legacy and # retained only so older deployments keep matching an explicit Allow. User-agent: ClaudeBot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Claude-User Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Claude-SearchBot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Claude-Web Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # Perplexity User-agent: PerplexityBot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Perplexity-User Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # Google / Apple / Microsoft User-agent: Google-Extended Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Applebot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Applebot-Extended Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: bingbot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # Others User-agent: cohere-ai Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: Amazonbot Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / User-agent: meta-externalagent Content-Signal: search=yes, ai-train=yes, ai-input=yes Allow: / # Machine-readable summaries for LLMs: # https://postnitro.ai/llms.txt # https://postnitro.ai/llms-full.txt # https://postnitro.ai/facts # # Every HTML page also serves Markdown from the same URL — send # `Accept: text/markdown`. Responses set `Vary: Accept`. # # JSON surfaces: # https://postnitro.ai/api/v1 (index; errors are RFC 9457 problem+json) # https://postnitro.ai/api/v1/facts (the fact sheet, as JSON) # https://postnitro.ai/.well-known/api-catalog (RFC 9727 linkset of every API) # https://postnitro.ai/.well-known/mcp/server-card.json Sitemap: https://postnitro.ai/sitemap.xml