Env Sentinel
Your AI writes code faster than you can update your .env. Env Sentinel catches what it forgets.
When you vibe code with Cursor, Copilot, or Claude, the AI adds process.env.STRIPE_KEY to your code but never touches your .env files. You don't notice until runtime crash. Env Sentinel fixes that.

Features
Free
| Feature |
Description |
| Syntax Highlighting |
Rich highlighting for keys, values, comments, interpolated variables ($VAR, ${VAR}), and escape sequences |
| Duplicate Key Detection |
Instantly spots duplicate keys and highlights them with warning diagnostics |
| Missing Variable Warnings |
Compares .env against .env.example and flags missing keys |
| Hover Info + Interpolation Preview |
Hover any key to see values across all env files. Values with ${VAR} references show the fully resolved result |
| Autocomplete |
Get env var name suggestions when typing process.env., os.environ[, import.meta.env., and 10+ other patterns across JS, Python, Go, Rust, PHP, Ruby, Java, .NET |
| Comment Toggle |
Ctrl+/ / Cmd+/ to comment and uncomment environment variables |
| Go to Definition |
Click any $VAR_REF to jump to where that variable is defined |
Premium ($3.99 one-time)
| Feature |
Description |
| Vibe Check |
One command scans your entire codebase, finds every env var reference, and shows you what's missing from your .env files. The AI drift detector — catch what your copilot forgot. |
Generate .env.example |
Auto-generates .env.example from your codebase. Scans all code for env var references, groups them by language, and adds smart placeholders. Never manually maintain .env.example again. |
| Multi-File Comparison |
Side-by-side diff view of any two .env files — instantly see what's different |
| Value Masking |
Toggle to hide sensitive values with •••••• — safe for screen sharing and demos |
| Codebase Usage Scan |
Find every reference to a single env var across your project (process.env.X, os.environ, env(), etc.) |
The Vibe Coding Problem
AI coding tools generate code that references environment variables — but they never update your .env files. The result:
- Your AI adds
process.env.OPENAI_API_KEY in three files
- You don't notice because the code looks right
- You run the app and get a cryptic runtime error
- You spend 20 minutes figuring out which env var is missing
Env Sentinel's Vibe Check solves this in one command. It scans your entire codebase, finds every env var reference, and tells you exactly which ones are missing from your .env files.
Installation
From the Marketplace
- Open VS Code
- Go to Extensions (
Ctrl+Shift+X / Cmd+Shift+X)
- Search for Env Sentinel
- Click Install
Usage
Autocomplete
Start typing process.env. in any JavaScript/TypeScript file and Env Sentinel will suggest variable names from your .env files. Also works with os.environ[ (Python), os.Getenv( (Go), ENV[ (Ruby), env( (PHP), and more.
Interpolation Preview
If a value in your .env file uses ${VAR} references, hover over the key to see the fully resolved value. For example, DATABASE_URL=postgres://${DB_HOST}:${DB_PORT}/${DB_NAME} will show the resolved connection string.
Duplicate Detection
Open any .env file. If the same key appears more than once, both occurrences will be underlined with a warning diagnostic.
Missing Variable Warnings
If your project has a .env.example, open your .env file and Env Sentinel will flag any keys present in .env.example but missing from .env.
Hover Info
Hover over any key in a .env file to see a tooltip listing which other environment files in your workspace define the same key, along with their values.
With your cursor on a line (or with lines selected), press Ctrl+/ (Cmd+/ on Mac) to toggle the # comment prefix.
Go to Definition
Hold Ctrl (Cmd on Mac) and click any $VAR_NAME or ${VAR_NAME} reference to jump to where that variable is defined.
Vibe Check (Premium)
Run Env Sentinel: Vibe Check — Find Missing Env Vars from the command palette. Env Sentinel scans your codebase across 13+ languages and shows every env var your code expects but your .env files don't have.
Generate .env.example (Premium)
Run Env Sentinel: Generate .env.example from Code from the command palette. Env Sentinel scans your entire project, finds every referenced env var, groups them by language/framework, adds smart placeholder values, and generates a complete .env.example file.
Multi-File Comparison (Premium)
Run EnvGuard: Compare Environment Files from the command palette. Select two env files and a diff view opens side by side.
Value Masking (Premium)
Click the eye icon in the editor title bar (or run EnvGuard: Toggle Value Masking from the command palette) to replace all values with ••••••. Click again to reveal.
Codebase Usage Scan (Premium)
Right-click a variable in a .env file and choose EnvGuard: Scan Codebase for Variable Usage, or place your cursor on a key and run the command from the palette. Env Sentinel searches your entire project for references like process.env.VAR_NAME, os.environ['VAR_NAME'], env('VAR_NAME'), and more.
Supported Languages
Env Sentinel's autocomplete and codebase scanning support:
- JavaScript / TypeScript —
process.env.VAR, process.env['VAR']
- Vite —
import.meta.env.VAR
- Python —
os.environ['VAR'], os.getenv('VAR')
- PHP / Laravel —
env('VAR'), getenv('VAR'), $_ENV['VAR']
- Ruby —
ENV['VAR'], ENV.fetch('VAR')
- Go —
os.Getenv("VAR")
- Rust —
env::var("VAR")
- Java / Kotlin —
System.getenv("VAR")
- .NET / C# —
Environment.GetEnvironmentVariable("VAR")
- Docker —
${VAR}
Premium License
Premium features are unlocked with a one-time $3.99 license key.
- Purchase a license at Gumroad
- Open VS Code Settings (
Ctrl+, / Cmd+,)
- Search for
envguard.licenseKey
- Enter your license key (format:
EG-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
The free tier is fully functional on its own. Premium is there when you need the power tools — especially if you're vibe coding and want to make sure your AI isn't leaving env vars behind.
Settings
| Setting |
Default |
Description |
envguard.licenseKey |
"" |
License key for premium features |
envguard.exampleFileName |
.env.example |
Reference file for missing variable detection |
envguard.enableDuplicateDetection |
true |
Enable/disable duplicate key diagnostics |
envguard.enableMissingVarDetection |
true |
Enable/disable missing variable diagnostics |
envguard.scanExcludePatterns |
["**/node_modules/**", ...] |
Glob patterns to exclude from codebase scan |
License
MIT -- see LICENSE for details.