$ dotenv run -- node index.js
◇ injected env (2) from .env
Hello Dotenv
NEW: Dotenv now has a fast parser thanks to @homanp of superagent.sh. Pass config({ fast: true }), flag --fast, or set DOTENV_FAST=true to opt-in to ~2x faster character-scanner parser. (#1010)
$ dotenv run --fast -- node index.js
◇ injected env (2) from .env
Hello Dotenv
Add skills/ folder with focused agent skills: skills/dotenv/SKILL.md (core usage) and skills/dotenvx/SKILL.md (encryption, multiple environments, variable expansion) for AI coding agent discovery via the skills.sh ecosystem (npx skills add motdotla/dotenv)
Changed
Tighten up logs: ◇ injecting env (14) from .env (#1003)
Add a new README section on dotenv’s approach to the agentic future.
Changed
Rewrite README to get humans started more quickly with less noise while simultaneously making more accessible for llms and agents to go deeper into details.
🙏 A big thank you to new sponsor Tuple.app - the premier screen sharing app for developers on macOS and Windows. Go check them out. It's wonderful and generous of them to give back to open source by sponsoring dotenv. Give them some love back.
Add additional security and configuration tips to the runtime log (#884)
Dim the tips text from the main injection information text
constTIPS=['🔐 encrypt with dotenvx: https://dotenvx.com','🔐 prevent committing .env to code: https://dotenvx.com/precommit','🔐 prevent building .env in docker: https://dotenvx.com/prebuild','🛠️ run anywhere with `dotenvx run -- yourcommand`','⚙️ specify custom .env file path with { path: \'/custom/path/.env\' }','⚙️ enable debug logging with { debug: true }','⚙️ override existing env vars with { override: true }','⚙️ suppress all logs with { quiet: true }','⚙️ write to custom object with { processEnv: myObject }','⚙️ load multiple .env files with { path: [\'.env.local\', \'.env\'] }']
This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [dotenv](https://github.com/motdotla/dotenv) | [`^16.4.7` → `^18.0.0`](https://renovatebot.com/diffs/npm/dotenv/16.6.1/18.0.8) |  |  |
---
### Release Notes
<details>
<summary>motdotla/dotenv (dotenv)</summary>
### [`v18.0.8`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1808-2026-10-14)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.7...v18.0.8)
##### Changed
- Fast parser should strip appended extra quotes ([#​1073](https://github.com/motdotla/dotenv/pull/1073))
- Type detail improvement ([#​1074](https://github.com/motdotla/dotenv/pull/1074))
### [`v18.0.7`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1807-2026-10-09)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.6...v18.0.7)
##### Changed
- Treat undefined settings like `quiet: true` as null rather than falsey ([#​1070](https://github.com/motdotla/dotenv/pull/1070))
- CLI should honor `DOTENV_QUIET` setting in `.env` file ([#​1071](https://github.com/motdotla/dotenv/pull/1071))
### [`v18.0.6`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1806-2026-10-06)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.5...v18.0.6)
##### Changed
- Use smarter `parseBoolean` not Boolean() to fix override ([#​1069](https://github.com/motdotla/dotenv/pull/1069))
### [`v18.0.5`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1805-2026-09-30)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.4...v18.0.5)
##### Changed
- Fix missing typescript module declaration ([#​1068](https://github.com/motdotla/dotenv/pull/1068))
- Improve performance for large .env files ([#​1066](https://github.com/motdotla/dotenv/pull/1066))
### [`v18.0.4`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1804-2026-09-25)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.3...v18.0.4)
##### Changed
- `import dotenv/config` should default quiet: true ([#​1063](https://github.com/motdotla/dotenv/pull/1063))
### [`v18.0.3`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1803-2026-09-22)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.2...v18.0.3)
##### Changed
- Patch `DOTENV_QUIET` setting when inside .env file ([#​1059](https://github.com/motdotla/dotenv/pull/1059))
### [`v18.0.2`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1802-2026-09-21)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.1...v18.0.2)
##### Changed
- Patch additional edge cases for the fast parser ([#​1056](https://github.com/motdotla/dotenv/pull/1056))
### [`v18.0.1`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1801-2026-09-18)
[Compare Source](https://github.com/motdotla/dotenv/compare/v18.0.0...v18.0.1)
##### Changed
- Handle file urls in config logging ([#​1054](https://github.com/motdotla/dotenv/pull/1054))
### [`v18.0.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1800-2026-09-17)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.4.2...v18.0.0)
##### Added
- NEW: Dotenv now has a CLI. ([#​1022](https://github.com/motdotla/dotenv/pull/1022))
```sh
$ dotenv run -- node index.js
◇ injected env (2) from .env
Hello Dotenv
```
- NEW: Dotenv now has a fast parser thanks to [@​homanp](https://github.com/homanp) of [superagent.sh](https://superagent.sh). Pass `config({ fast: true })`, flag `--fast`, or set `DOTENV_FAST=true` to opt-in to \~2x faster character-scanner parser. ([#​1010](https://github.com/motdotla/dotenv/pull/1010))
```sh
$ dotenv run --fast -- node index.js
◇ injected env (2) from .env
Hello Dotenv
```
[faster than Node native parseEnv!](https://dotenvx.com/blog/2026/09/28/dotenv-fast.html)
##### Changed
- Injecting message sent to stderr rather than stdout and tips removed ([#​1037](https://github.com/motdotla/dotenv/pull/1037))
##### Removed
- Remove tips ([#​1031](https://github.com/motdotla/dotenv/pull/1031))
- Remove skill files ([#​1032](https://github.com/motdotla/dotenv/pull/1032))
- Remove Spanish README ([#​1034](https://github.com/motdotla/dotenv/pull/1034))
- Remove .env.vault support ([#​1033](https://github.com/motdotla/dotenv/pull/1033))
- Remove preloading. Instead use cli `dotenv run -- your-command` ([#​1035](https://github.com/motdotla/dotenv/pull/1035))
### [`v17.4.2`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1742-2026-04-12)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.4.1...v17.4.2)
##### Changed
- Improved skill files - tightened up details ([#​1009](https://github.com/motdotla/dotenv/pull/1009))
### [`v17.4.1`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1741-2026-04-05)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.4.0...v17.4.1)
##### Changed
- Change text `injecting` to `injected` ([#​1005](https://github.com/motdotla/dotenv/pull/1005))
### [`v17.4.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1740-2026-04-01)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.3.1...v17.4.0)
##### Added
- Add `skills/` folder with focused agent skills: `skills/dotenv/SKILL.md` (core usage) and `skills/dotenvx/SKILL.md` (encryption, multiple environments, variable expansion) for AI coding agent discovery via the skills.sh ecosystem (`npx skills add motdotla/dotenv`)
##### Changed
- Tighten up logs: `◇ injecting env (14) from .env` ([#​1003](https://github.com/motdotla/dotenv/pull/1003))
### [`v17.3.1`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1731-2026-02-12)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.3.0...v17.3.1)
##### Changed
- Fix as2 example command in README and update spanish README
### [`v17.3.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1730-2026-02-12)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.2.4...v17.3.0)
##### Added
- Add a new README section on dotenv’s approach to the agentic future.
##### Changed
- Rewrite README to get humans started more quickly with less noise while simultaneously making more accessible for llms and agents to go deeper into details.
### [`v17.2.4`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1724-2026-02-05)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.2.3...v17.2.4)
##### Changed
- Make `DotenvPopulateInput` accept `NodeJS.ProcessEnv` type ([#​915](https://github.com/motdotla/dotenv/pull/915))
* Give back to dotenv by checking out my newest project [vestauth](https://github.com/vestauth/vestauth). It is auth for agents. Thank you for using my software.
### [`v17.2.3`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1723-2025-09-29)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.2.2...v17.2.3)
##### Changed
- Fixed typescript error definition ([#​912](https://github.com/motdotla/dotenv/pull/912))
### [`v17.2.2`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1722-2025-09-02)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.2.1...v17.2.2)
##### Added
- 🙏 A big thank you to new sponsor [Tuple.app](https://tuple.app/dotenv) - *the premier screen sharing app for developers on macOS and Windows.* Go check them out. It's wonderful and generous of them to give back to open source by sponsoring dotenv. Give them some love back.
### [`v17.2.1`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1721-2025-07-24)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.2.0...v17.2.1)
##### Changed
- Fix clickable tip links by removing parentheses ([#​897](https://github.com/motdotla/dotenv/pull/897))
### [`v17.2.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1720-2025-07-09)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.1.0...v17.2.0)
##### Added
- Optionally specify `DOTENV_CONFIG_QUIET=true` in your environment or `.env` file to quiet the runtime log ([#​889](https://github.com/motdotla/dotenv/pull/889))
- Just like dotenv any `DOTENV_CONFIG_` environment variables take precedence over any code set options like `({quiet: false})`
```ini
# .env
DOTENV_CONFIG_QUIET=true
HELLO="World"
```
```js
// index.js
require('dotenv').config()
console.log(`Hello ${process.env.HELLO}`)
```
```sh
$ node index.js
Hello World
or
$ DOTENV_CONFIG_QUIET=true node index.js
```
### [`v17.1.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1710-2025-07-07)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.0.1...v17.1.0)
##### Added
- Add additional security and configuration tips to the runtime log ([#​884](https://github.com/motdotla/dotenv/pull/884))
- Dim the tips text from the main injection information text
```js
const TIPS = [
'🔐 encrypt with dotenvx: https://dotenvx.com',
'🔐 prevent committing .env to code: https://dotenvx.com/precommit',
'🔐 prevent building .env in docker: https://dotenvx.com/prebuild',
'🛠️ run anywhere with `dotenvx run -- yourcommand`',
'⚙️ specify custom .env file path with { path: \'/custom/path/.env\' }',
'⚙️ enable debug logging with { debug: true }',
'⚙️ override existing env vars with { override: true }',
'⚙️ suppress all logs with { quiet: true }',
'⚙️ write to custom object with { processEnv: myObject }',
'⚙️ load multiple .env files with { path: [\'.env.local\', \'.env\'] }'
]
```
### [`v17.0.1`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1701-2025-07-01)
[Compare Source](https://github.com/motdotla/dotenv/compare/v17.0.0...v17.0.1)
##### Changed
- Patched injected log to count only populated/set keys to process.env ([#​879](https://github.com/motdotla/dotenv/pull/879))
### [`v17.0.0`](https://github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1700-2025-06-27)
[Compare Source](https://github.com/motdotla/dotenv/compare/v16.6.1...v17.0.0)
##### Changed
- Default `quiet` to false - informational (file and keys count) runtime log message shows by default ([#​875](https://github.com/motdotla/dotenv/pull/875))
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNzguMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE3OC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 18.x releases. But if you manually upgrade to 18.x then Renovate will re-enable minor and patch updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.
### Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for *any* future `18.x` releases. But if you manually upgrade to `18.x` then Renovate will re-enable `minor` and `patch` updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.
Pull request closed
This pull request cannot be reopened because the branch was deleted.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
^16.4.7→^18.0.0Release Notes
motdotla/dotenv (dotenv)
v18.0.8Compare Source
Changed
v18.0.7Compare Source
Changed
quiet: trueas null rather than falsey (#1070)DOTENV_QUIETsetting in.envfile (#1071)v18.0.6Compare Source
Changed
parseBooleannot Boolean() to fix override (#1069)v18.0.5Compare Source
Changed
v18.0.4Compare Source
Changed
import dotenv/configshould default quiet: true (#1063)v18.0.3Compare Source
Changed
DOTENV_QUIETsetting when inside .env file (#1059)v18.0.2Compare Source
Changed
v18.0.1Compare Source
Changed
v18.0.0Compare Source
Added
config({ fast: true }), flag--fast, or setDOTENV_FAST=trueto opt-in to ~2x faster character-scanner parser. (#1010)faster than Node native parseEnv!
Changed
Removed
dotenv run -- your-command(#1035)v17.4.2Compare Source
Changed
v17.4.1Compare Source
Changed
injectingtoinjected(#1005)v17.4.0Compare Source
Added
skills/folder with focused agent skills:skills/dotenv/SKILL.md(core usage) andskills/dotenvx/SKILL.md(encryption, multiple environments, variable expansion) for AI coding agent discovery via the skills.sh ecosystem (npx skills add motdotla/dotenv)Changed
◇ injecting env (14) from .env(#1003)v17.3.1Compare Source
Changed
v17.3.0Compare Source
Added
Changed
v17.2.4Compare Source
Changed
DotenvPopulateInputacceptNodeJS.ProcessEnvtype (#915)v17.2.3Compare Source
Changed
v17.2.2Compare Source
Added
v17.2.1Compare Source
Changed
v17.2.0Compare Source
Added
DOTENV_CONFIG_QUIET=truein your environment or.envfile to quiet the runtime log (#889)DOTENV_CONFIG_environment variables take precedence over any code set options like({quiet: false})v17.1.0Compare Source
Added
v17.0.1Compare Source
Changed
v17.0.0Compare Source
Changed
quietto false - informational (file and keys count) runtime log message shows by default (#875)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.
67cdc2dbc6tod568118d6eRenovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future
18.xreleases. But if you manually upgrade to18.xthen Renovate will re-enableminorandpatchupdates automatically.If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.
Pull request closed