Bots do SWPanel

SWPanelBot-Code

Descobre se o CMS, os plugins e os temas do site estão em dia, para a análise e a auditoria de código.

User-Agent Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)

Função: Análise de código Operador: DeepThink Software SLU Contato: [email protected] Versão: 1.1 Revisado em: 17 de outubro de 2026

Ficha técnica

Tudo o que faz o SWPanelBot-Code

Extraído do código do módulo. Se o bot mudar o que faz, mudam esta ficha e a sua versão.

Identidade

Nome
SWPanelBot-Code. É também o seu nome para o robots.txt.
Família
SWPanelBot: o nome comum de todos os bots do SWPanel.
Versão
1.1, a que vai no User-Agent. As mudanças de cada versão estão mais abaixo.
Tipo
Direto: é executado e controlado pelo SWPanel, sempre por encomenda do proprietário do serviço.
Categoria
Outros
Operador
DeepThink Software SLU, titular do SWPanel. Informação legal.
Contato
[email protected]
Nomes anteriores
SWPanel-CodeAnalyzer/2026 SWPanel/SEOAnalyzer/1.0; headless

Quando e quanto

Quando entra
Ao pedir uma análise ou uma auditoria de código, e nas análises do SOC.
Frequência
Uma vez por análise.
Por análise
Uma consulta às APIs por componente (CMS, plugin ou tema) e, na análise ao vivo, até 20 páginas do site.
Em paralelo
Nunca. Uma página de cada vez.

Como pede

O código
É lido no próprio servidor, com o agente do SWPanel. Não passa pela web.
Versões
Consulta api.wordpress.org, api.github.com e endoflife.date. Espera 10 segundos para conectar e 25 pela resposta.
Análise ao vivo
Abre até 20 páginas: a página inicial, as mais visitadas segundo os logs do servidor e as do sitemap.
O navegador
Um Chromium sem janela (Playwright), com uma tela de 1920 × 1080. Executa JavaScript e carrega tudo o que a página pede: imagens, estilos, scripts e serviços de terceiros.
Nome do navegador
Cumpre Apresenta-se como SWPanelBot-Code.
Aviso de cookies
Cumpre Não mexe nele: nem o aceita nem o rejeita, de modo que não carrega a analítica do site nem deixa um consentimento que ninguém deu.
Esperas
Até 25 segundos por página, até que a rede fique calma. Se um script próprio falhar, volta a pedi-lo, com 8 segundos de espera, para ler o trecho do erro.
Origem
Em preparação Dos servidores do SWPanel. Estamos reservando alguns IPs de saída só para os bots; quando existirem, vamos publicá-los aqui num arquivo JSON.
DNS reverso
Em preparação Cada IP terá um nome sob bots.swpanel.com que volte ao mesmo IP.

Normas que aplica

robots.txt
Isento, com motivo Não o consulta. A análise ao vivo é pedida pelo proprietário, como os «fetchers acionados pelo usuário» do Google, e as APIs não têm robots.txt a aplicar.
A que sites vai
Cumpre Só visita sites de serviços ativos do SWPanel e deixa de passar assim que o serviço é cancelado: verifica antes de cada requisição.
Se o site pede para frear
Pendente O navegador da análise ao vivo ainda não freia com 429 e 503. Compensa indo devagar: uma página de cada vez e 20 no máximo.
Cache HTTP
Não se aplica Cada análise tem de ver a página como a vê hoje um visitante.
Assinatura
Pendente O navegador da análise ao vivo ainda não assina. As consultas de versões vão a APIs públicas, não ao seu site.
Contato na requisição
Pendente O navegador da análise ao vivo ainda não leva From: [email protected].

O que faz com os dados

O que lê
As versões do CMS, dos plugins e dos temas e, ao vivo, os erros de JavaScript, as requisições que falham e uma captura da página.
O que guarda
As versões encontradas e os erros, com o trecho do código próprio onde cada um falha.
Quanto tempo
Com o relatório da análise, no SWPanel do proprietário.
Para quê
Para a análise e a auditoria de código do proprietário do serviço.
Privacidade
Política geral de privacidade do SWPanel.

Como funciona

Uma passagem, passo a passo

  1. Lê o código

    O agente do SWPanel lê no servidor que CMS, plugins e temas há, e em que versão.

  2. Consulta versões

    Pergunta às APIs públicas qual é a última versão de cada um e se continua com suporte.

  3. Escolhe páginas

    A página inicial, as mais visitadas segundo os logs e as do sitemap, até 20.

  4. Abre-as

    Uma de cada vez, num navegador sem janela, e espera que termine de carregar. Não mexe no aviso de cookies.

  5. Recolhe os erros

    Erros de JavaScript, exceções e requisições que falham, e separa os do próprio site dos de terceiros.

  6. Deixa o relatório

    Com o que é preciso atualizar e cada erro com o seu trecho de código.

Nos seus logs

Assim se vê o SWPanelBot-Code

Um exemplo em formato combinado de Apache e Nginx. O IP e o domínio são de documentação: os seus serão outros.

203.0.113.40 - - [17/Oct/2026:12:30:10 +0200] "GET / HTTP/1.1" 200 48211 "-" "Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)" 203.0.113.40 - - [17/Oct/2026:12:30:10 +0200] "GET /wp-content/themes/tema/style.css HTTP/1.1" 200 18320 "https://example.com/" "Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)" 203.0.113.40 - - [17/Oct/2026:12:30:11 +0200] "GET /wp-content/themes/tema/js/app.js HTTP/1.1" 200 9120 "https://example.com/" "Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)" 203.0.113.40 - - [17/Oct/2026:12:30:12 +0200] "GET /wp-content/uploads/2026/10/portada.webp HTTP/1.1" 200 88450 "https://example.com/" "Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)" 203.0.113.40 - - [17/Oct/2026:12:30:36 +0200] "GET /tienda/ HTTP/1.1" 200 30554 "-" "Mozilla/5.0 (compatible; SWPanelBot-Code/1.1; +https://www.swpanel.com/bots/code)"

A análise ao vivo carrega cada página com tudo o que ela leva, como um navegador. As consultas de versões vão às APIs e não aparecem nos seus logs.

Comprovar

É mesmo o SWPanelBot-Code?

Um User-Agent pode ser copiado. Por isso é preciso olhá-lo junto com o resto. Os exemplos usam um IP de documentação.

DNS reverso Em preparação

$ host 203.0.113.10 10.113.0.203.in-addr.arpa domain name pointer crawl-203-0-113-10.bots.swpanel.com. $ host crawl-203-0-113-10.bots.swpanel.com crawl-203-0-113-10.bots.swpanel.com has address 203.0.113.10

O IP tem de resolver para um nome de bots.swpanel.com, e esse nome para o mesmo IP. Se só se cumpre a primeira parte, não é nosso.

Lista de IPs Em preparação

$ curl -s https://www.swpanel.com/bots/ips.asp {"formatVersion": "1.0", "creationTime": "…", "prefixes": [{"ipv4Prefix": "203.0.113.0/28", "service": "SWPanelBot"}]}

Um arquivo JSON com o formato JAFAR que propõe o IETF, ligado a partir desta página.

Assinatura da requisição Pendente

Signature-Agent: "https://www.swpanel.com" Signature-Input: sig1=("@authority" "signature-agent"); created=1792224000;expires=1792224300; keyid="…";alg="ed25519";tag="web-bot-auth" Signature: sig1=:…:

Cabeçalhos do Web Bot Auth. A chave pública está em /.well-known/http-message-signatures-directory de www.swpanel.com: com ela, qualquer firewall que entenda o Web Bot Auth comprova que a requisição é nossa.

O que pede Disponível

Compare o que você vê com a ficha: as rotas, a frequência e o volume. Um bot que se chama SWPanelBot-Code e faz outra coisa não é nosso.

Se você duvida de uma visita, escreva-nos para [email protected] com o domínio, a hora com o seu fuso horário, o IP e a linha do log, e nós comprovamos.

Pará-lo

O proprietário o pede. Ele o desliga.

Os nossos bots só visitam sites de serviços ativos do SWPanel, só para as funções que o proprietário tem ativas, e deixam de passar assim que o serviço é cancelado.

Se você é o proprietário

Desative a análise de código do serviço no seu SWPanel.

Se você não é

Se o domínio já não está no SWPanel, não deveria chegar nenhuma visita programada. Se chegar, escreva-nos para [email protected] e a paramos.

No firewall

Para deixá-lo passar, use o nome junto com o IP ou a assinatura, não só o nome. Cuidado com as regras genéricas: um padrão como «bot» também alcança o SWPanelBot.

Se você o bloquear

A análise ao vivo não encontrará os erros de JavaScript.

O robots.txt não o para: explicamos em Normas. Quem o para é o seu proprietário, a partir do SWPanel.

Normas

O que pedem os padrões, e como está o SWPanelBot-Code

A nossa situação em cada ponto, sem enfeites.

O que pedem os padrões, e como está o SWPanelBot-Code
Um nome próprio no User-Agent, com o endereço da sua página RFC 9110, 10.1.5, e rascunho IETF «Crawler best practices», 2.2 Cumpre
Um nome válido para robots.txt: letras, hífens e sublinhado RFC 9309, 2.2.1 Cumpre
Visitar só sites de serviços ativos do SWPanel, e deixar de fazê-lo assim que o serviço é cancelado Compromisso próprio do SWPanel Cumpre
Que o navegador sem janela se apresente com o seu nome e não aceite cookies Mesmas normas: identidade honesta e não agir em nome de um visitante Cumpre
Ler e respeitar o robots.txt RFC 9309 e «Crawler best practices», 2.1. O rascunho permite a isenção documentada dos rastreadores que trabalham por encomenda. É pedido pelo proprietário e é uma verificação pontual. Isento, com motivo
Não atrapalhar o site: uma requisição de cada vez, limites de páginas e de tempo, e esperas curtas «Crawler best practices», 2.3 Cumpre
Frear se o site responde 429 ou 503 «Crawler best practices», 2.3, e RFC 9110, 15.6. O navegador da análise ao vivo, ainda não. Pendente
Respeitar o cache HTTP «Crawler best practices», 2.4, e RFC 9111. Precisa da resposta de agora. Não se aplica
Um contato na requisição: cabeçalho From RFC 9110, 10.1.2 Pendente
Publicar os IPs de saída em JSON, ligados a partir desta página «Crawler best practices», 2.5, com o formato JAFAR Em preparação
DNS reverso que se possa confirmar Prática do Google, Bing e Cloudflare para verificar bots Em preparação
Assinar as requisições (Web Bot Auth) Rascunho IETF «HTTP Message Signatures for Bots», setembro de 2026. Hoje assina as consultas às APIs; o navegador da análise ao vivo, ainda não. Pendente
Página pública com o que faz, o que guarda, contato, como pará-lo e as isenções «Crawler best practices», 2.6 Cumpre

Em parte: cumpre com uma ressalva, explicada na linha. Em preparação: depende da rede, como os IPs próprios e o seu DNS reverso. Pendente: ainda sem data.

Versões

O que mudou

A versão vai no User-Agent. Quando o bot muda o que faz, mudam a versão e esta ficha.

O que mudou
1.0 12-10-2026 Nome novo, SWPanelBot-Code, nas consultas de versões. Substitui o SWPanel-CodeAnalyzer.
1.1 17-10-2026 Aponta para esta ficha. O navegador da análise ao vivo apresenta-se como SWPanelBot-Code e já não aceita o aviso de cookies. Só visita serviços ativos.
Próxima Sem data O navegador da análise ao vivo passa a assinar, a frear com 429 e 503 e a levar o cabeçalho From.

Perguntas frequentes

Dúvidas sobre o SWPanelBot-Code

Não. O código é lido no próprio servidor, com o agente do SWPanel. Pelo site só abre páginas públicas para procurar erros de JavaScript.

A análise em direto pode, porque é um navegador que executa JavaScript. São no máximo 20 páginas por análise.

Não. Até 17-10-2026 clicava em «Aceitar» para ver a página como um visitante; agora não toca no aviso, pelo que não carrega a análise de tráfego do site nem deixa um consentimento que ninguém deu.