Eu construí um git git pre-push hook que usa um LLM para escanear seus diferenciais em busca de segredos antes mesmo de saírem da sua máquina. Veja como funciona 🧵
Quando você executa o git push, o gancho dispara primeiro. Ele descobre o que é novo — ou todos os commits em um novo branch, ou apenas os novos commits em um já existente — e gera um git diff exatamente do que está prestes a ser lançado.
Esse diferencial é enviado para o CLI do Kimi com um prompt muito restrito. O modelo é instruído a responder EXATAMENTE com uma de duas cadeias: SAFE_TO_PUSH ou BLOCK_PUSH.
Ele escaneia os suspeitos de sempre: - Chaves de API (OpenAI, Anthropic, AWS...) - Senhas e tokens de autenticação - Chaves privadas (SSH, SSL, JWT secretos) - Strings de conexão de banco de dados com creds - .env que entraram furtivamente em um commit
Se voltar BLOCK_PUSH, o gancho sai de 1 — o empurrão é rejeitado, e você vê exatamente quais linhas o acionaram, além de uma classificação de gravidade. Conserte, depois empurre de novo.
O bom de usar um LLM aqui em vez de padrões regex é que ele entende o contexto. Um regex para "sk-" captura as chaves da OpenAI, mas não detecta um token interno personalizado chamado PROD_SECRET. O modelo capta ambos.
268