FZ-009 · SEGURANÇA
promptdecode
Encontra texto invisível em revisões de código que um revisor humano deixaria passar.
- Status
- Alfa
- Etapa do pipeline
- VALIDAÇÃO
- Setor
- SEGURANÇA
- Meta de autonomia
- NÍVEL 4 · AUTO-OTIMIZÁVEL
- Construído com
- 3 ao vivo · 1 planejado
O problema
Texto oculto em um pull request ou issue pode mandar um agente de código fazer o merge, e o revisor nunca vê.
O que ele faz
O promptdecode decodifica texto Unicode oculto no seu navegador, não envia nada e mostra o que ele diz.
Como funciona
- Cole qualquer texto e ele revela os caracteres ocultos e decodifica a mensagem
- Roda inteiramente no seu navegador; nada é enviado a lugar nenhum
- Um scanner de configuração verifica seus workflows do GitHub em busca de etapas de agente que entrada não confiável consegue alcançar
Uso gratuito hoje em promptdeco.de.
Pegue uma instrução oculta antes que seu agente aja.
HojeO decodificador funciona hoje no navegador. O promptdecode-core 0.1.0 está no crates.io; o scanner e a GitHub Action ainda não foram lançados.
Objetivos
- Operação autônoma
- A revisão é o alvo da automação. Um agente de código com um token de escrita lê um pull request que um revisor humano já aprovou, e os dois não estão lendo o mesmo documento: caracteres do bloco de tags, overrides bidi e seletores de variação não aparecem na tela e são tokenizados normalmente. Os scanners devem rodar no CI a cada mudança, decodificar o que encontram em vez de apenas sinalizar e postar o texto simples de volta no pull request, sem nenhum modelo no loop e sem nada sair do runner.
- Inteligência
- Deliberadamente nenhum, onde não é necessário. Os dois motores planejados são determinísticos: um rastreia entrada não confiável de workflow até uma etapa de agente que detém um token de escrita, o outro casa classes Unicode nomeadas no conteúdo do repositório. Um detector que precisa de um modelo para decidir o que é suspeito não consegue declarar a própria cobertura, e cobertura que pode ser declarada é o produto.
- Crescimento
- Guiado por evidências, e por isso mais lento. Nenhum percentual de ataques bloqueados é publicado, porque as taxas de evasão em nível de caractere variam demais com a técnica para que um único número signifique algo. O que se publica é cobertura determinística de uma lista nomeada de classes Unicode e recall a uma taxa de falsos positivos declarada em um corpus nomeado, com o corpus e o harness abertos. O crescimento é repositórios escaneados por semana quando a Action existir.
O detalhe técnico
Encontra texto invisível para um revisor humano e totalmente legível para um modelo de linguagem, e o decodifica. Instruções ocultas no título de um pull request, no corpo de uma issue ou em um arquivo do repositório podem mandar um agente de código aprovar, integrar ou comentar, enquanto o diff não mostra nada de incomum. Duas partes funcionam hoje. O decodificador no site, que lê três classes nomeadas de code points (o bloco de tags Unicode, controles e overrides bidi, seletores de variação), reconstrói o payload que elas codificam e roda inteiramente no navegador do leitor, sem enviar nada a lugar nenhum. E o scanner de configuração, que rastreia entrada não confiável de workflow até uma etapa de agente que detém um token de escrita, e roda a partir do código-fonte, sem release ainda. O resto está projetado e não foi escrito: um motor de conteúdo que decodifica payloads em um repositório, um scanner de linha de comando, uma GitHub Action e um benchmark aberto. Se uma classe não está na lista publicada, ela não é detectada; a lista é a alegação.
Relacionadas
A partir da mesma base.
- Owlpost. API de e-mail para apps e agentes de AI, com caixas de entrada próprias.
- Colonizer. Transforma issues do GitHub em pull requests para desenvolvedores na própria máquina.
- Cratefield. Um backend para quem prefere compilar a configurar.
- Keep Shipping. Fluxos de deploy para engenheiros, como um arquivo tipado por repositório.