Tus secretos.
Un comando.
Cada entorno.
Una herramienta CLI y GitHub Action que centraliza de forma segura tus variables de entorno desde AWS SSM, Azure Key Vault o GCP Secret Manager como fuente única de verdad. Se acabó copiar y pegar secretos.
$ npm install -g envilder
El problema con archivos .env
Gestionar secretos manualmente no escala. Es inseguro, propenso a errores y crea fricción para todo el equipo.
Desincronización entre entornos
Dev, staging y prod tienen secretos diferentes. Los despliegues fallan. Nadie sabe qué .env es el correcto.
Secretos compartidos por Slack/email
Claves API enviadas en texto plano por chat. Sin trazabilidad. Sin rotación. Un incidente de seguridad esperando a ocurrir.
Onboarding y rotaciones lentas
¿Un nuevo miembro se une al equipo? Copia y pega un .env de la máquina de alguien. ¿Alguien rota? Espera que todos actualicen manualmente.
Fuente de verdad en la nube
Todos los secretos viven en AWS SSM o Azure Key Vault. IAM/RBAC controla quién puede leer qué. Cada acceso queda registrado.
Un comando, siempre sincronizado
Ejecuta envilder y tu .env se regenera desde la fuente de verdad. Idempotente. Instantáneo. Sin margen para el desfase.
Automatizado en CI/CD
Usa la GitHub Action para obtener secretos en el momento del despliegue. Sin secretos en los repos. Sin pasos manuales en los pipelines.
Hecho para equipos reales
Todo lo que necesitas para gestionar secretos de entorno de forma segura y a escala.
Multi-Proveedor
AWS SSM, Azure Key Vault y GCP Secret Manager (próximamente). Elige con --provider o $config en tu archivo de mapeo.
Sincronización bidireccional
Obtén secretos en archivos .env o sube valores .env a tu proveedor en la nube. Soporte completo de ida y vuelta.
GitHub Action
Action para tus workflows CI/CD. Obtén secretos en el momento del despliegue sin intervención manual.
Acceso IAM y RBAC
Aprovecha el control de acceso nativo de la nube. Las políticas IAM de AWS o RBAC de Azure definen quién lee qué, por entorno.
Totalmente auditable
Cada lectura y escritura queda registrada en AWS CloudTrail o Azure Monitor. Trazabilidad completa de quién accedió a qué y cuándo.
Sincronización idempotente
Solo se actualiza lo que hay en tu mapeo. Nada más se toca. Ejecútalo diez veces — mismo resultado, cero efectos secundarios.
Cero infraestructura
Construido sobre servicios nativos de la nube. Sin Lambdas, sin servidores, sin infraestructura extra que gestionar o pagar.
Soporte de perfiles AWS
¿Configuración multi-cuenta? Usa --profile para cambiar entre perfiles AWS CLI. Perfecto para entornos multi-etapa.
SDKs en tiempo real
PróximamenteCarga secretos directamente en tu app al iniciar — TypeScript, Python, Go, .NET, Java. Sin archivos .env, sin intermediarios.
Cómo funciona
Define. Descarga. Listo.
Escribe un param-map.json
Un archivo JSON que mapea nombres de variables de entorno a sus rutas en SSM o nombres de secretos en Key Vault. Confírmalo. Revísalo en PRs. Diferéncialo entre entornos. Es la única configuración que necesitas.
{
"DB_PASSWORD": "/my-app/prod/db-password",
"API_KEY": "/my-app/prod/api-key",
"SECRET_TOKEN": "/my-app/prod/secret-token"
} Ejecuta envilder
Un comando obtiene cada secreto de tu vault en la nube y los escribe en .env. Sin copiar manualmente. Sin desfases. Repetible en cualquier lugar — localmente, en CI o en una máquina nueva.
$ envilder --map=param-map.json --envfile=.env
✔ Obtenido DB_PASSWORD → ···word
✔ Obtenido API_KEY → ···key
✔ Obtenido SECRET_TOKEN → ···oken
✔ Archivo de entorno escrito en .env .env escrito. Los secretos se quedan en el vault.
Un archivo .env limpio, generado bajo demanda desde datos del vault en tiempo real. Úsalo localmente, descárgalo en el despliegue con la GitHub Action o evita el archivo con --exec.
DB_PASSWORD=my-super-secret-password
API_KEY=sk_live_abc123def456
SECRET_TOKEN=tok_prod_xyz789 Míralo en acción
Mira cómo Envilder simplifica la gestión de secretos en menos de 2 minutos.
Tu nube. Tu elección.
Envilder funciona con AWS SSM Parameter Store, Azure Key Vault y GCP Secret Manager (próximamente). Configura en línea o con flags CLI.
AWS SSM Parameter Store
{
"$config": {
"provider": "aws",
"profile": "prod-account"
},
"DB_PASSWORD": "/my-app/prod/db-password",
"API_KEY": "/my-app/prod/api-key"
} $ envilder --map=param-map.json --envfile=.env
- ✔ Soporte de GetParameter con WithDecryption
- ✔ Soporte de perfil AWS para multi-cuenta
- ✔ Control de acceso basado en políticas IAM
- ✔ Registro de auditoría CloudTrail
Azure Key Vault
{
"$config": {
"provider": "azure",
"vaultUrl": "https://my-vault.vault.azure.net"
},
"DB_PASSWORD": "my-app-prod-db-password",
"API_KEY": "my-app-prod-api-key"
} $ envilder --provider=azure --vault-url=https://my-vault.vault.azure.net --map=param-map.json --envfile=.env
- ✔ Auto-normaliza nombres de secretos (barras → guiones)
- ✔ Autenticación DefaultAzureCredential
- ✔ Control de acceso Azure RBAC
- ✔ Registro de auditoría Azure Monitor
GCP Secret Manager
Próximamente{
"$config": {
"provider": "gcp",
"projectId": "my-project-id"
},
"DB_PASSWORD": "my-app-prod-db-password",
"API_KEY": "my-app-prod-api-key"
} $ envilder --provider=gcp --map=param-map.json --envfile=.env
- ✔ Integración con Google Cloud Secret Manager
- ✔ Application Default Credentials (ADC)
- ✔ Control de acceso basado en IAM
- ✔ Cloud Audit Logs
GitHub Action
Obtén secretos en el momento del despliegue. Añádelo a cualquier workflow en minutos.
☁️ AWS SSM
- name: 🪙 Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v6
with:
role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}
aws-region: us-east-1
- name: 🔐 Pull Secrets from AWS SSM
uses: macalbert/envilder/github-action@v0
with:
map-file: param-map.json
env-file: .env 🔑 Azure Key Vault
- name: 🔑 Azure Login
uses: azure/login@v2
with:
client-id: ${{ secrets.AZURE_CLIENT_ID }}
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
- name: 🔐 Pull Secrets from Azure Key Vault
uses: macalbert/envilder/github-action@v0
with:
map-file: param-map.json
env-file: .env
provider: azure
vault-url: ${{ secrets.AZURE_KEY_VAULT_URL }} Inputs de la Action
| Input | Requerido | Descripción |
|---|---|---|
map-file | Sí | Ruta al archivo JSON que mapea variables de entorno a rutas de secretos |
env-file | Sí | Ruta al archivo .env a generar |
provider | No | Proveedor en la nube: aws o azure (por defecto: aws) |
vault-url | No | URL de Azure Key Vault |
Output: env-file-path — Ruta al archivo .env generado
Qué hay de nuevo
Novedades de la última versión. El sitio de documentación ya está en línea.
Documentación y Estabilidad
- Sitio de documentación publicado en envilder.com — guías completas, historial y docs multiidioma
- Corregido: @types/node movido a devDependencies — sin dependencias de runtime innecesarias
- Corregido: inestabilidad en tests e2e — rutas SSM únicas por ejecución evitan condiciones de carrera
Qué viene ahora
Envilder se desarrolla activamente. Aquí es adónde vamos.
Descargar secretos a .env
Mapea nombres de variables de entorno a rutas de secretos en la nube vía JSON y genera archivos .env automáticamente
Modo push (--push)
Sube valores .env o secretos individuales al proveedor en la nube
GitHub Action
Usa Envilder en workflows CI/CD de forma nativa
Multi-proveedor (AWS + Azure)
Soporte de AWS SSM Parameter Store y Azure Key Vault
Web de documentación
Web de docs dedicada con guías, ejemplos y referencia API
TypeScript SDK (@envilder/sdk)
PróximamenteLibrería nativa de ejecución — cargará secretos directamente en process.env desde un map-file. Se publicará en npm
Python SDK (envilder)
PróximamenteLibrería para Django/FastAPI/pipelines de datos. Se publicará en PyPI
Go SDK (envilder)
PróximamenteLibrería para apps cloud-native y herramientas Kubernetes. Se publicará como módulo Go
.NET SDK (Envilder)
PróximamenteLibrería para apps enterprise y Azure-native. Se publicará en NuGet
Java SDK (envilder)
PróximamenteLibrería para Spring Boot y backends Android. Se publicará en Maven Central
Modo exec (--exec)
Inyecta secretos en un proceso hijo sin escribir a disco
GCP Secret Manager
Tercer proveedor cloud — completa el tridente multi-nube
AWS Secrets Manager
Soporte de secretos JSON junto a SSM Parameter Store
Modo check/sync (--check)
Valida secretos en la nube vs .env local — falla CI si están desincronizados
Empieza ahora
En funcionamiento en menos de un minuto.
Prerrequisitos
- Node.js v20+
- AWS CLI configurado (para AWS SSM)
- Azure CLI configurado (para Azure Key Vault)
- Permisos IAM:
ssm:GetParameter/ssm:PutParameter
Instalar
Inicio rápido
- Crea un param-map.json que mapee variables de entorno a rutas de secretos
- Ejecuta envilder --map=param-map.json --envfile=.env
- Tu archivo .env está listo ✔