varlock
Faz seu agente usar variáveis de ambiente de forma segura. Protege informações confidenciais durante o desenvolvimento, evitando vazamentos acidentais.
O que ela faz
Varlock é uma ferramenta que ajuda a gerenciar informações sensíveis (como senhas e chaves de API) em seus projetos de programação. Ele garante que essas informações nunca sejam mostradas acidentalmente em logs ou no histórico de comandos, mantendo seu código mais seguro.
Quando usar
- ✓Quando você precisa usar senhas ou chaves de API em um projeto.
- ✓Ao compartilhar seu código ou histórico de comandos com outras pessoas.
- ✓Para garantir que informações confidenciais não sejam expostas em logs de erro.
Exemplo do que pedir para a IA
“Como posso verificar se minha chave de API está configurada corretamente sem mostrá-la?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Varlock funciona definindo regras sobre como as informações sensíveis devem ser tratadas. Ele pode validar se as informações necessárias estão presentes e mascarar os valores reais em qualquer saída, impedindo que sejam vistos.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill varlockOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/varlock/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Habilidade Varlock Security
Gerenciamento de variáveis de ambiente seguro por padrão para sessões do Claude Code.
Repositório: https://github.com/dmno-dev/varlock Documentação: https://varlock.dev
Quando Usar
- Você precisa trabalhar com variáveis de ambiente ou segredos em uma sessão do Claude Code sem expor seus valores.
- A tarefa envolve validar, carregar ou auditar segredos, mantendo-os fora de logs, diffs e contexto do assistente.
- Você deseja um fluxo de trabalho seguro por padrão construído em torno do Varlock em vez da inspeção direta de
.env.
Princípio Central: Segredos Nunca Expostos
Ao trabalhar com o Claude, os segredos NUNCA devem aparecer em:
- Saída do terminal
- Contexto de entrada/saída do Claude
- Arquivos de log ou rastreamentos
- Commits ou diffs do Git
- Mensagens de erro
Esta habilidade garante que todos os dados sensíveis sejam devidamente protegidos.
CRÍTICO: Regras de Segurança para Claude
Regra 1: Nunca Repita Segredos
# ❌ NEVER DO THIS - exposes secret to Claude's context
echo $CLERK_SECRET_KEY
cat .env | grep SECRET
printenv | grep API
# ✅ DO THIS - validates without exposing
varlock load --quiet && echo "✓ Secrets validated"
Regra 2: Nunca Leia .env Diretamente
# ❌ NEVER DO THIS - exposes all secrets
cat .env
less .env
Read tool on .env file
# ✅ DO THIS - read schema (safe) not values
cat .env.schema
varlock load # Shows masked values
Regra 3: Use Varlock para Validação
# ❌ NEVER DO THIS - exposes secret in error
test -n "$API_KEY" && echo "Key: $API_KEY"
# ✅ DO THIS - Varlock validates and masks
varlock load
# Output shows: API_KEY 🔐sensitive └ ▒▒▒▒▒
Regra 4: Nunca Inclua Segredos em Comandos
# ❌ NEVER DO THIS - secret in command history
curl -H "Authorization: Bearer sk_live_xxx" https://api.example.com
# ✅ DO THIS - use environment variable
curl -H "Authorization: Bearer $API_KEY" https://api.example.com
# Or better: varlock run -- curl ...
Início Rápido
Instalação
# Install Varlock CLI
tmpdir="$(mktemp -d)"
trap 'rm -rf "$tmpdir"' EXIT
curl -sSfL https://varlock.dev/install.sh -o "$tmpdir/varlock-install.sh"
cat "$tmpdir/varlock-install.sh" # review the full installer before executing
sh "$tmpdir/varlock-install.sh" --force-no-brew
# Add to PATH (add to ~/.zshrc or ~/.bashrc)
export PATH="$HOME/.varlock/bin:$PATH"
# Verify
varlock --version
Inicializar Projeto
# Create .env.schema from existing .env
varlock init
# Or create manually
touch .env.schema
Arquivo de Schema: .env.schema
O schema define tipos, validação e sensibilidade para cada variável.
Estrutura Básica
# Global defaults
# @defaultSensitive=true @defaultRequired=infer
# Application
# @type=enum(development,staging,production) @sensitive=false
NODE_ENV=development
# @type=port @sensitive=false
PORT=3000
# Database - SENSITIVE
# @type=url @required
DATABASE_URL=
# @type=string @required @sensitive
DATABASE_PASSWORD=
# API Keys - SENSITIVE
# @type=string(startsWith=sk_) @required @sensitive
STRIPE_SECRET_KEY=
# @type=string(startsWith=pk_) @sensitive=false
STRIPE_PUBLISHABLE_KEY=
Anotações de Segurança
| Anotação | Efeito | Usar Para |
|---|---|---|
@sensitive |
Redigido em toda saída | Chaves de API, senhas, tokens |
@sensitive=false |
Mostrado em logs | Chaves públicas, configuração não secreta |
@defaultSensitive=true |
Todas as vars sensíveis por padrão | Projetos de alta segurança |
Anotações de Tipo
| Tipo | Valida | Exemplo |
|---|---|---|
string |
Qualquer string | @type=string |
string(startsWith=X) |
Validação de prefixo | @type=string(startsWith=sk_) |
string(contains=X) |
Validação de substring | @type=string(contains=+clerk_test) |
url |
URL válida | @type=url |
port |
1-65535 | @type=port |
boolean |
true/false | @type=boolean |
enum(a,b,c) |
Um dos valores | @type=enum(dev,prod) |
Comandos Seguros para Claude
Validando Ambiente
# Check all variables (safe - masks sensitive values)
varlock load
# Quiet mode (no output on success)
varlock load --quiet
# Check specific environment
varlock load --env=production
Executando Comandos com Segredos
# Inject validated env into command
varlock run -- npm start
varlock run -- node script.js
varlock run -- pytest
# Secrets are available to the command but never printed
Verificando Schema (Seguro)
# O schema é seguro para ler - não contém valores
cat .env.schema
…
Perguntas frequentes
O que são 'variáveis de ambiente'?
São como notas adesivas para o seu programa, onde você pode guardar informações como senhas ou chaves de API, em vez de escrevê-las diretamente no código. Varlock ajuda a gerenciar essas notas de forma segura.
Por que não devo mostrar minhas senhas ou chaves de API?
Mostrar essas informações pode permitir que pessoas mal-intencionadas roubem o acesso às suas contas ou dados. É como deixar a chave da sua casa à vista de todos.
O que é um `.env.schema`?
É um arquivo que descreve quais informações sensíveis seu projeto precisa e como elas devem ser (por exemplo, se são senhas ou URLs). Ele não contém os valores reais, apenas as regras, tornando-o seguro para visualização.
Detalhes
Descrição original do autor
Secure-by-default environment variable management for Claude Code sessions.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4480
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC