Blinder - ferramenta CLI que oculta segredos do projeto para AI Agents
(github.com/YellowC-137)Olá.
Toda vez que eu passava um projeto para um AI Agent, apagar manualmente um por um os dados importantes era trabalhoso demais, então criei eu mesmo uma ferramenta de automação que oculta essas informações com um único comando.
Antes de entregar um projeto existente para um agente de IA, ela bloqueia preventivamente o vazamento externo de chaves de API hardcoded, credenciais, certificados etc. presentes no código-fonte.
-
As strings suspeitas encontradas por regex passam por uma segunda verificação via análise sintática para confirmar se realmente estão dentro de um "literal de string (String Literal)" no código.
-
Transformação automática de código (Auto-fix), não apenas mascaramento
Ela extrai segredos hardcoded para um arquivo.enve substitui automaticamente o código-fonte, de acordo com cada linguagem, porprocess.env.API_KEY,System.getenv(),@Valueetc. -
Processamento de arquivos sob medida para cada plataforma:
Além de código-fonte simples, tentei separar com precisão também os segredos presentes em arquivos de build/configuração comoInfo.plistdo iOS,build.gradledo Android,pubspec.yamldo Flutter eapplication.ymldo Spring, usando parsers específicos para cada caso.
As principais funcionalidades são
Separar segredos hardcoded, como chaves e URLs, em .env e transformar o código automaticamente
blinder blind
- String apiKey = "sk_live_abc123..." # Before
+ String apiKey = BuildConfig.STRIPE_KEY # After (빌드 가능)
Criar um projeto somente leitura para AI Agent
blinder mask
- apiKey: "AIzaSy9xK2mP3rT..." # Before
+ apiKey: "__BLINDER_VAR__FIREBASE_API_KEY" # After (빌드 불가)
existem.
Você pode instalar globalmente em um ambiente Node.js e usar imediatamente.
Bash
npm install -g github:YellowC-137/Blinder
Atualmente ele oferece suporte a iOS, Android, Flutter, Node.js, React, Spring Boot e Ruby, e estamos adicionando novas plataformas continuamente.
Como é um projeto open source em estágio inicial, pode haver pontos a melhorar.
Agradeço muito qualquer feedback!
GitHub Repo: https://github.com/YellowC-137/Blinder
Ainda não há comentários.