Swiss-army knife for .env file management. Validate syntax, diff environments, generate templates, merge files, and check for missing keys.
Check .env syntax, find duplicates, empty values, and formatting issues:
bash
python3 scripts/env_toolkit.py validate .env
Compare two .env files — shows keys only in one file and changed values:
bash
python3 scripts/env_toolkit.py diff .env.local .env.production
Generate a .env.example with smart placeholders (strips secrets, infers types):
bash
python3 scripts/env_toolkit.py template .env
python3 scripts/env_toolkit.py template .env -o .env.example
python3 scripts/env_toolkit.py template .env --keep-values # keep actual values
Merge multiple .env files (later files override earlier):
bash
python3 scripts/env_toolkit.py merge .env.defaults .env.local -o .env.merged
List all variable names in a .env file:
bash
python3 scripts/env_toolkit.py list-keys .env
python3 scripts/env_toolkit.py list-keys .env --with-values
Verify a target .env has all keys from a template:
bash
python3 scripts/env_toolkit.py check-missing .env.example .env
python3 scripts/env_toolkit.py check-missing .env.example .env --strict