Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Multi DotenvNew to Visual Studio Code? Get it now.
Multi Dotenv

Multi Dotenv

AuraBox

|
5 installs
| (0) | Free
Environment configuration management: multi-file .env profiles, effective config, environment diffing, validation diagnostics, and secret masking
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Multi Dotenv

A VS Code extension for environment configuration management: multi-file .env profiles with a dashboard UI, effective-config resolution, environment comparison, secret masking, validation diagnostics, and one-click sync to .env.local.

Author: dark-aura-95 · Publisher: AuraBox · Repo: vscode-env-manger

Features

  • Multi-file profiles — Each .env* file in the workspace is a named profile (.env, .env.dev, .env.prod, …), including nested env files in monorepos
  • Multi-root & monorepo support — Detects .env files recursively (skipping node_modules, .git, dist, …) and manages each workspace folder independently
  • Effective config — Resolve the effective value for every key (base .env → environment file → .env.local), showing the source file and why a value wins
  • Compare environments — Diff any two profiles: added, removed, changed, and identical variables with masked secret values
  • Editor diagnostics — Duplicate keys, empty values, and missing required variables surface in the Problems panel directly on the env files
  • .gitignore protection — Warns when .env files are not protected by .gitignore and offers a one-command fix
  • Live status bar — Shows the active environment; click to switch from the status bar
  • Dashboard UI — Search, edit, reorder, and manage variables from a webview panel
  • Apply → .env.local — Switch the active profile and sync its values to .env.local for local development
  • Shared keys across profiles — Add a variable to all profiles at once; set values per profile
  • Notes — Optional one-line notes stored as # comment lines above variables in profile files
  • Duplicate profile — Copy a profile file to a new .env.* name from the toolbar
  • Copy variable — Copy key, value, or KEY=value from each row via the copy menu
  • Secret masking — Masks values for keys containing SECRET, TOKEN, PASSWORD, API_KEY, JWT_SECRET, and other patterns
  • Generate .env.example — Create a sanitized keys-only example from all profiles
  • Validation — Warns about duplicate keys, empty values, and missing required variables

Getting Started

  1. Open a workspace with profile files such as .env.dev and .env.prod (or create .env from the empty state)
  2. Run Multi Dotenv: Open Dashboard from the Command Palette, or click ENV in the status bar
  3. Select a profile, edit variables, then click Apply to sync it to .env.local

How profiles work

File Role
.env, .env.dev, .env.prod, … Profile sources — edited in the dashboard and stored on disk
.env.local Local runtime — written when you click Apply (not shown as a profile)
.env.example Template — generated from the active profile; not treated as a profile

Supported profile names

File Profile name
.env Default
.env.dev / .env.development DEV
.env.test / .env.testing TEST
.env.qa QA
.env.uat UAT
.env.uat_gcp UAT GCP (from tokens)
.env.staging / .env.stg STAGING
.env.prod / .env.production PROD
.env.local (in filename) LOCAL
Other .env.* Stage tokens from the suffix (e.g. .env.preprod → PREPROD)

Example layout

my-project/
  .env.dev          # development values
  .env.prod         # production values
  .env.local        # created/updated on Apply
  .env.example      # optional generated template

Monorepos work out of the box — env files in subfolders are detected too:

repo/
  .env              # root base
  apps/api/.env.prod
  apps/web/.env.dev
# .env.dev
# API base URL for development
API_URL=https://api-dev.example.com
DB_HOST=localhost

After Apply on the DEV profile, .env.local contains only that profile's active variables.

Effective configuration

Effective values resolve with this precedence (lowest → highest):

  1. .env (base) — values shared across environments
  2. the environment file (e.g. .env.prod)
  3. .env.local (local override, when the inspected environment is active)

Multi Dotenv: Show Effective Config lists each key with its effective value, the source file that provides it, and an explanation of why it wins (e.g. "Overrides .env; .env.prod wins (environment-specific value)").

Commands

Command Description
Multi Dotenv: Open Dashboard Open the environment dashboard
Multi Dotenv: Open Dashboard in New Editor Open the dashboard beside the current editor
Multi Dotenv: Switch Environment Pick and activate a profile (syncs to .env.local)
Multi Dotenv: Show Effective Config Show effective values with source attribution for a profile
Multi Dotenv: Compare Environments Diff two profiles (added/removed/changed variables)
Multi Dotenv: Generate Example File Create .env.example from all profiles
Multi Dotenv: Refresh Environment Reload profiles and variables from disk
Multi Dotenv: Add Variable Add a variable to all profiles
Multi Dotenv: Delete Variable Remove a variable from all profiles
Multi Dotenv: Add .env Files to .gitignore Protect env files (keeps .env.example)

Settings

Setting Default Description
multiDotenv.showSecretsMasked true Mask secret environment variable values by default
multiDotenv.autoDetectEnvFiles true Auto-detect .env* files as profiles (excludes .env.example and .env.local)
multiDotenv.checkGitignoreProtection true Warn when .env files are not protected by .gitignore

License

MIT © 2026 dark-aura-95 / AuraBox — see LICENSE.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft