¿Qué hace varlock-claude-skill?
Gestón segura de variables de entorno que garantiza que los secretos nunca se expongan en las sesiones de Claude, terminales, registros o commits de git.
Propósito
Este skill permite al asistente manejar variables de entorno confidenciales (secretos) de forma segura, sin mostrarlas en la conversación, logs del sistema, terminales o commits de git. Al usar este skill, el agente puede leer, validar y referenciar secretos sin exponerlos textualmente.
Comportamiento esperado
- Lectura segura: El agente lee variables de entorno desde
process.envo archivos.env, pero nunca imprime los valores en bruto. - Desreferenciación segura: Cuando se necesita usar un secreto (ej: para una llamada API o autenticación), el agente expande la variable pero la mantiene oculta en la salida de texto.
- Protección contra fugas: El agente evita que los secretos aparezcan en logs del sistema, salida de terminal o historial de comandos de git.
Cómo usar
- Carga implícita: Solo menciona la variable de entorno (ej:
API_KEY) y el agente la obtendrá de forma segura desde el entorno. - Desreferenciación: Usa la sintaxis
${VAR_NAME}para indicar que la variable debe expandirse sin exponer su valor en el mensaje.- Ejemplo:
Utiliza la clave API en la cabecera de la solicitud: ${API_KEY}. - El agente reemplazará
${API_KEY}por el valor real, pero no lo mostrará en el log de la sesión.
- Ejemplo:
- Verificación de existencia: Pide validar que las variables requeridas estén definidas:
Verifica que las variables DB_HOST y DB_PASSWORD existan y tengan valores válidos.
Características clave
- Sin exposición en logs: Los secretos nunca aparecen en los registros de la sesión de Claude.
- Sin fugas en terminales: Al usar el agente en terminal, los valores no son visibles al escribir comandos.
- Protección en git: Los secretos no se filtran en diffs o commits (asumiendo que se ignoren archivos
.envcorrectamente). - Portabilidad: Funciona con Claude Code, Cursor, Codex y otros agentes que accedan a variables de entorno del sistema.
Limitaciones
- Requiere que el usuario configure las variables de entorno antes de usar el agente (en su shell o archivo
.env). - No gestiona la rotación de secretos ni la encriptación en reposo; solo previene la exposición en texto plano durante la interacción.
Ejemplo de uso
Usuario: Conecta a la base de datos usando las variables de entorno.
Agente: Configurando conexión con ${DB_HOST} y ${DB_PASSWORD}...
(Los valores reales son usados internamente, pero no mostrados)
Nota: Asegúrate de que los archivos
.envestén listados en.gitignorepara evitar filtraciones accidentales.