---
title: "Como testar a camada agêntica com curl (receitas prontas) | Grupo Marfre"
description: "Receitas de curl para testar a camada agêntica: Accept text/markdown, ?mode=agent, GPTBot, Googlebot, Vary, Link, 404 e robots.txt, com a saída esperada."
canonical: https://grupomarfre.com.br/sites-agenticos/testar-camada-agentica-com-curl/
alternate_html: https://grupomarfre.com.br/sites-agenticos/testar-camada-agentica-com-curl/
language: pt-BR
last_updated: 2026-10-27
type: guia
---
# Como testar a camada agêntica com curl (receitas prontas)

**Resposta rápida:** Rode uma bateria de comandos curl contra o domínio publicado: Markdown com Accept, o parâmetro ?mode=agent, os user-agents GPTBot e Googlebot, os cabeçalhos Vary e Link, uma rota inventada, o README, a contagem de link rel=alternate e o robots.txt. Cada um tem uma saída esperada. Divergência que se repete depois de alguns minutos indica falha na camada agêntica.

O curl é a prova mais barata de que a camada agêntica funciona em produção. Em poucos minutos ele mostra o que o servidor entrega a cada tipo de pedido: Markdown ou HTML, quais cabeçalhos acompanham a resposta e o que acontece em endereços que não deveriam existir.

Todos os exemplos usam `exemplo.com.br`, um domínio fictício. Troque pelo seu e rode na ordem. As saídas esperadas seguem a régua do Grupo Marfre para sites agênticos.

## Como testar a negociação de conteúdo (Accept, ?mode=agent, GPTBot e Googlebot)?

Faça quatro pedidos à mesma página: um com `Accept: text/markdown`, um com `?mode=agent`, um com user-agent de robô de IA e um com Googlebot. Na régua do Grupo Marfre, os três primeiros recebem o espelho `.md` e o Googlebot recebe o HTML, que é a versão canônica.

```bash
## 1. Accept
curl -s -H "Accept: text/markdown" https://exemplo.com.br/servicos/ | head -n 15

## 2. Parâmetro
curl -s "https://exemplo.com.br/servicos/?mode=agent" | head -n 15

## 3. Robô de IA
curl -s -A GPTBot https://exemplo.com.br/servicos/ | head -n 15

## 4. Googlebot
curl -s -A Googlebot https://exemplo.com.br/servicos/ | head -n 15
```

| Comando | Saída esperada |
| --- | --- |
| 1, 2 e 3 | Começa com frontmatter YAML (title, description, canonical, alternate\_html, language, last\_updated, type), sem `<!doctype html>` |
| 4 | HTML normal da página |
| Sem cabeçalho nenhum | HTML normal (serve de controle) |

Se o Googlebot receber Markdown, a versão `.md` está disputando com a canônica. Se o GPTBot receber HTML, a regra de user-agent não casou. Lembre que `-A` simula só o nome do robô, não o IP, então o teste vale para a regra do seu site e não para o firewall (veja [Seu firewall pode estar bloqueando robôs de IA](https://grupomarfre.com.br/sites-agenticos/firewall-bloqueando-robo-de-ia/)). Para entender a lógica por trás, leia [negociação de conteúdo](https://grupomarfre.com.br/sites-agenticos/negociacao-de-conteudo-markdown/).

## O que os cabeçalhos devem mostrar em Vary e Link?

Com `-D - -o /dev/null`, o curl faz um GET completo e mostra só os cabeçalhos da resposta. Na régua do Grupo Marfre, toda resposta leva `Vary: Accept, Accept-Encoding, User-Agent` (a regra decide também por user-agent) e um cabeçalho `Link` apontando o `.md`, o `llms.txt` e o sitemap.

```bash
curl -s -D - -o /dev/null https://exemplo.com.br/servicos/
curl -s -D - -o /dev/null -H "Accept: text/markdown" https://exemplo.com.br/servicos/
curl -s https://exemplo.com.br/sitemap.xml | grep -c "\.md"
```

O que conferir:

1.  O `Vary` aparece nas duas respostas, a de HTML e a de Markdown. O navegador segue o padrão HTTP; na borda da Cloudflare, o `Vary` só separa as versões se estiver configurado nas Cache Rules. Detalhes em [cabeçalho Vary](https://grupomarfre.com.br/sites-agenticos/cabecalho-vary/).
2.  O `Link` lista o espelho `.md`, o `llms.txt` e o sitemap.
3.  A resposta em Markdown traz `X-Robots-Tag: noindex`.
4.  A contagem de `.md` no sitemap dá `0`. O espelho fica fora do sitemap para não virar conteúdo duplicado.

Prefira essa forma ao `curl -I`: o `-I` faz um pedido HEAD, e a resposta a ele pode diferir da que o GET recebe.

## Como testar rota inventada e README (404)?

Peça um endereço que não existe e um arquivo de ferramenta. Os dois devem devolver HTTP 404. Na régua do Grupo Marfre, a rota inexistente também responde em Markdown quando o pedido vem de agente.

```bash
curl -s -o /dev/null -w "%{http_code}\n" https://exemplo.com.br/rota-inventada-x7k2
curl -s -H "Accept: text/markdown" -w "\n%{http_code}\n" https://exemplo.com.br/rota-inventada-x7k2
curl -s -o /dev/null -w "%{http_code}\n" https://exemplo.com.br/README
curl -s -o /dev/null -w "%{http_code}\n" https://exemplo.com.br/README.md
```

Saída esperada: `404` nos quatro. Dois defeitos reais aparecem aqui:

- **Soft 404.** Medido em 3 sites que o Grupo Marfre publica: sem `404.html` na pasta, o Cloudflare Pages entra em modo SPA e devolve a home com HTTP 200 em qualquer endereço inexistente. No Cloudflare Pages, se o primeiro comando mostrar `200`, a causa provável é essa. Veja [página 404 para agentes](https://grupomarfre.com.br/sites-agenticos/pagina-404-para-agentes/).
- **Arquivo de ferramenta exposto.** Num site que o Grupo Marfre publica, um `/README` com cabeçalho de markdown virava `/README.md` e saía inteiro para o robô. Arquivo que sobe junto no deploy (README, config) precisa ser barrado.

## Como conferir os link rel="alternate" e o robots.txt?

Conte as tags `link rel="alternate"` que apontam para Markdown e confirme que o `robots.txt` abre normalmente, inclusive para um user-agent de robô de IA.

```bash
curl -s https://exemplo.com.br/servicos/ | grep -o '<link rel="alternate"[^>]*text/markdown[^>]*>' | wc -l

curl -s -o /dev/null -w "%{http_code}\n" https://exemplo.com.br/robots.txt
curl -s -o /dev/null -w "%{http_code}\n" -A GPTBot https://exemplo.com.br/robots.txt
curl -s https://exemplo.com.br/robots.txt
```

Leitura da saída:

- **Contagem.** O esperado é `1` por página, apontando para o `.md` dela. `0` é tag ausente. Mais de `1` pode ser template repetindo a tag. Se o grep não achar nada mas a tag existir, confira a ordem dos atributos no HTML. Mais em [link rel="alternate" para Markdown](https://grupomarfre.com.br/sites-agenticos/link-rel-alternate-markdown/).
- **robots.txt.** `200` nos dois pedidos. Um `403` com `-A GPTBot` indica firewall barrando antes da regra do arquivo.
- **Conteúdo.** Leia o arquivo inteiro e confira o grupo de cada robô: um grupo começa com uma ou mais linhas `User-agent`, e as regras `Allow` e `Disallow` que vêm depois delas valem para todos os robôs do grupo. Confirme que as regras são as que você quer ([robots.txt na era da IA](https://grupomarfre.com.br/sites-agenticos/robots-txt-para-ia/)).

## O que fazer logo após publicar?

Rode a bateria completa em até alguns minutos do deploy e, se algo divergir, repita antes de concluir que há falha. Resposta antiga pode ser cache da borda ou deploy incompleto. Só depois peça scan novo em ferramentas de nota.

1.  Rode os comandos acima e anote as saídas. Servem de linha de base.
2.  Se o curl ainda mostra a versão antiga, aguarde e repita. Alterne pedidos de HTML e de Markdown e confira se cada um recebe o próprio formato, para ver se o cache está separando as versões.
3.  Confirme que README e rota inventada dão 404 no ambiente publicado, não só no local.
4.  Peça scan novo no [is-agentic](https://grupomarfre.com.br/sites-agenticos/is-agentic/). O relatório é cacheado: sem Rescan, ele devolve a nota antiga, e o resultado novo pode levar de 5 a 10 minutos.

Uma ressalva sobre prazos: o seu servidor reflete a mudança conforme o cache. Já os robôs da Perplexity e da Amazon podem levar até cerca de 24 horas para refletir a mudança no `robots.txt`, segundo a documentação das duas. Teste de curl não prova citação por IA: prova só que o site entrega o que deveria.

## Como o Grupo Marfre trabalha isso

Na entrega de um site agêntico, o Grupo Marfre faz a prova em produção com curl: Markdown com `Accept`, `-A GPTBot` recebendo o `.md`, `-A Googlebot` recebendo HTML, rota inexistente com 404 em Markdown e README com 404. Só depois dispara um scan novo no is-agentic. A medição antes e depois fica guardada como linha de base. O Grupo Marfre não promete citação por IA: controla o site e as fontes, e a escolha é do modelo.

## Perguntas frequentes

### Posso rodar esses comandos em qualquer site?

Pode, são pedidos públicos comuns. Rode no seu domínio ou em um que você administra, e evite repetir pedidos em sequência longa para não disparar proteção de rate limit.

### O curl com -A Googlebot prova que o Google vê o site assim?

Não. Ele só prova como o seu servidor reage a esse nome de user-agent. O Google rastreia com IPs próprios, e o teste não cobre regras de firewall baseadas em IP.

### Meu site devolve 200 numa rota inventada. É grave?

É um soft 404: o agente recebe a home como se a página existisse. No Cloudflare Pages, corrija com um `404.html` na pasta publicada e repita o teste até aparecer 404.

### Preciso refazer os testes depois de cada publicação?

Convém repetir quando mudar o middleware, o robots.txt, o template ou a estrutura de pastas. Uma publicação de texto novo pede apenas conferir que a página nova entrega o espelho `.md`.

## Leia também

### [Negociação de conteúdo: servir Markdown a quem pede Accept: text/markdown](https://grupomarfre.com.br/sites-agenticos/negociacao-de-conteudo-markdown/)

Negociação de conteúdo em Markdown: como servir o .md a quem manda Accept: text/markdown, ?mode=agent ou user-agent de IA, e testar tudo com curl.

### [Cabeçalho Vary: por que o site agêntico precisa dele](https://grupomarfre.com.br/sites-agenticos/cabecalho-vary/)

Cabeçalho Vary avisa ao cache que a mesma URL tem versão HTML e Markdown. Veja o que a borda da Cloudflare respeita, quando incluir User-Agent e como conferir.

### [Cabeçalho Link (RFC 8288): como o agente descobre a versão em Markdown](https://grupomarfre.com.br/sites-agenticos/cabecalho-link-rfc-8288/)

Cabeçalho Link (RFC 8288): como apontar o espelho .md, o llms.txt e o sitemap por HTTP, com formato, exemplo e teste com curl, sem baixar o HTML.

### [Página 404 que o agente entende (e o soft 404 que engana)](https://grupomarfre.com.br/sites-agenticos/pagina-404-para-agentes/)

Página 404 para agentes de IA: por que endereço inexistente deve responder 404 e não a home com 200, o caso do Cloudflare Pages e como testar com curl.

### [is-agentic.com: o que mede e como ler a nota](https://grupomarfre.com.br/sites-agenticos/is-agentic/)

is-agentic.com mede se o site está pronto para agentes de IA. Veja como a nota é composta, por que o número de checks varia e como pedir scan novo.

### [is-agentic: 4 armadilhas que enganam quem lê a nota](https://grupomarfre.com.br/sites-agenticos/armadilhas-do-is-agentic/)

is-agentic: 4 armadilhas na leitura da nota: relatório cacheado, scan em sequência, palavra api no caminho e soft 404. Veja como evitar cada uma.

---

## Sobre o Grupo Marfre

Grupo Marfre Automação e Tecnologia LTDA (CNPJ 49.685.676/0001-55): agência de marketing digital e inteligência artificial com base em Contagem/MG, que atende o Brasil inteiro de forma remota.

- Endereço: Alameda das Cotovias, 75, Cabral, Contagem - MG, Brasil
- WhatsApp: (31) 93618-7272, https://wa.me/5531936187272
- E-mail: contato@grupomarfre.com.br
- Instagram: https://instagram.com/marfregrupo
- Serviços: gestão de tráfego pago (Meta Ads e Google Ads), site agêntico (site pronto pra assistentes de IA lerem), site que vira contato, SEO e Google, IA no WhatsApp, CRM e automação
- Serviço de site agêntico: https://grupomarfre.com.br/servicos/site-agentico/ · serviço de gestão de tráfego: https://grupomarfre.com.br/servicos/gestao-de-trafego/
- Guias: https://grupomarfre.com.br/sites-agenticos/ e https://grupomarfre.com.br/gestao-de-trafego/
- Método em 4 etapas: Diagnóstico, Estratégia, Execução, Otimização
- Segmentos já atendidos: clínica, consultório, advocacia, loja, igreja
- Preço e escopo não são publicados: são definidos por diagnóstico, caso a caso
- Todas as páginas em Markdown: https://grupomarfre.com.br/llms.txt · conteúdo completo: https://grupomarfre.com.br/llms-full.txt

Página HTML equivalente: https://grupomarfre.com.br/sites-agenticos/testar-camada-agentica-com-curl/
