# robots.txt do Minha Adega Online # # POR QUE ESTE ARQUIVO É ESTÁTICO # # Era gerado por src/app/robots.js, que foi removido. O tipo RobotsFile do # Next 14 aceita só userAgent, allow, disallow, crawlDelay e sitemap — não há # como emitir a diretiva Content-Signal por ele, e ela é o que reserva os # direitos de uso do conteúdo. Arquivo estático é a única forma de ter as duas # coisas no mesmo robots.txt. # # ATENÇÃO: enquanto o bloco gerenciado da Cloudflare estiver ligado # (AI Crawl Control → Manage robots.txt), ele é injetado ACIMA deste conteúdo e # é o que vale na prática. Este arquivo só passa a valer sozinho depois de # desligar aquela preferência no painel. # # NÃO adicione Disallow de caminho aqui. Em especial /resetPassword: a página é # noindex por meta tag, e bloquear o rastreamento impediria o Google de ler # essa tag — a URL ficaria indexada sem conteúdo. Ver src/app/resetPassword/layout.js. # # ── A política ────────────────────────────────────────────────────────────── # # Buscar e citar: liberado. Treinar modelo: bloqueado. # # A distinção que importa aqui é que os grandes fornecedores usam agentes # SEPARADOS para as duas coisas, e o controle da Cloudflare tratava todos como # um bloco só: # # Anthropic ClaudeBot = treino | Claude-User, Claude-SearchBot = uso e busca # OpenAI GPTBot = treino | OAI-SearchBot, ChatGPT-User = busca # # Bloquear ClaudeBot e GPTBot não tira o site das respostas dessas ferramentas; # tira o conteúdo do conjunto de treino. É exatamente o corte que se quer. # # Quem NÃO aparece listado abaixo cai no grupo "*" e fica liberado, com os # sinais de conteúdo do grupo. Isso é proposital: um parser de robots.txt usa # só o grupo mais específico que casa, então dar grupo próprio a um bot que se # quer liberar o faria perder o Content-Signal do grupo "*". # ── Sinais de conteúdo ────────────────────────────────────────────────────── # Vocabulário de contentsignals.org. Vale como reserva expressa de direitos nos # termos do artigo 4 da Diretiva (UE) 2019/790. # # search = indexar e devolver link e trecho curto # ai-input = usar como fonte em resposta gerada (RAG, grounding, citação) # ai-train = treinar ou ajustar modelo # # ai-input=yes é a mudança em relação ao que a Cloudflare vinha servindo, que o # deixava em branco (nem concedido, nem negado). Um catálogo público de 190 # rótulos com preço mediano, nota e safra é conteúdo feito para ser citado. User-agent: * Content-Signal: search=yes, ai-input=yes, ai-train=no, use=reference Allow: / # ── Treino de modelo: bloqueado ───────────────────────────────────────────── User-agent: GPTBot Disallow: / User-agent: ClaudeBot Disallow: / User-agent: CCBot Disallow: / User-agent: Bytespider Disallow: / User-agent: Amazonbot Disallow: / User-agent: Applebot-Extended Disallow: / User-agent: meta-externalagent Disallow: / # ── Onde um agente começa ─────────────────────────────────────────────────── # llms.txt é gerado no build (scripts/gerar-agente.mjs) e diz o que este site # responde bem, o que ele não responde, e como chamá-lo por máquina. # # https://minhaadegaonline.com/llms.txt # https://minhaadegaonline.com/openapi.json # https://minhaadegaonline.com/mcp Sitemap: https://minhaadegaonline.com/sitemap.xml