Pular para o conteúdo
Ghostchars

Sobre o Ghostchars

Uma ferramenta pequena e gratuita que encontra caracteres ocultos, se recusa a adivinhar quem escreveu o seu texto e mostra as contas.

O que ele é

O Ghostchars revela e remove caracteres Unicode ocultos em textos e em documentos. Ele começou como um único arquivo Python sem dependências, escrito para responder a uma pergunta específica: o que exatamente tem nesta string que eu não consigo ver. E continuou assim. O site é o mesmo mecanismo compilado para o navegador, com uma página em volta.

Não há conta, não há upload, não há fila e não há chave de API. Você cola o texto, vê o que tem nele e decide o que remover.

Por que ele existe

Procure um jeito de encontrar caracteres invisíveis e você cai em ferramentas que prometem detectar marcas d'água de IA e te entregam uma porcentagem de confiança. Essa porcentagem não está medindo nada: nenhum caractere de um texto consegue dizer quem o escreveu, e as ferramentas que dizem o contrário costumam estar informando um número fixo.

A versão honesta do produto é mais estreita e mais útil. Caracteres ocultos existem, causam problemas reais (busca quebrada, comparações que falham, instruções invisíveis dirigidas a modelos de linguagem) e podem ser encontrados com exatidão, sem palpite nenhum. É isso que esta ferramenta faz. Onde um caractere é ambíguo, a página diz; onde uma afirmação não se sustenta, ela não é feita.

Como o Ghostchars decide o que remover

As regras que ele segue

Nada é enviado

O site é um conjunto de arquivos estáticos e o mecanismo roda no seu dispositivo. Não há processamento no servidor, então não há nada para ninguém registrar, guardar ou vazar.

Nada é afirmado sem poder ser mostrado

Sem detecção de IA, sem probabilidades, sem "remove marcas d'água de IA". A página que diz o que a ferramenta não consegue fazer é publicada junto da que diz o que ela consegue.

Toda decisão fica visível

Cada ocorrência traz a sua linha, a sua coluna, o seu ponto de código, o seu nome Unicode, a sua categoria e o que aconteceu com ela: removido, substituído, mantido por ser essencial, ou encontrado e não alterado. Nada é mudado em silêncio.

O navegador e o CLI concordam

Fixtures de referência geradas a partir da implementação em Python prendem o mecanismo do navegador a ela. Se os dois discordarem em qualquer fixture, o build falha.

Código aberto

O mecanismo, os testes e este site são de código aberto sob a licença MIT. A ferramenta de linha de comando é um arquivo só, sem dependências além da biblioteca padrão do Python, e tem um modo `--check` que sai com código diferente de zero quando um arquivo contém algo escondido, o que a torna utilizável como hook de pre-commit ou como passo de CI.

./strip_invisible.py --show draft.md
./strip_invisible.py --check *.md

Ler o código

Privacidade

Nada do que você cola ou envia é transmitido para lugar nenhum, porque não há para onde transmitir. A medição de uso é opcional, depende do seu consentimento, é hospedada na UE e passa por proxy neste domínio, e nenhum evento carrega conteúdo de texto, só contagens e quais opções estavam ligadas. Se você disser não, nada é carregado.

Ler a política de privacidade

Quem mantém este site

Kris Vinters

cria e mantém o Ghostchars

Correções e perguntas vão para privacy@ghostchars.com.

Contato e correções

Se alguma página aqui estiver errada sobre um ponto de código, uma escrita ou uma técnica, isso vale a pena corrigir. Correções, relatos de bug e acréscimos ao índice de caracteres vão para privacy@ghostchars.com, e são corrigidos.

Estatísticas de uso anônimas?

O Ghostchars processa seu texto no navegador e nunca o envia para lugar nenhum. Gostaríamos de contar as visitas às páginas com um serviço de medição hospedado por nós, com o mínimo de cookies. Nunca o conteúdo, em hipótese alguma.