pi-dotenv1.0.1
Load ~/.pi/agent/.env into process.env at pi startup
Untested on omp
This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.
Reports 0
No reports yet.
Readme
pi-dotenv
Load ~/.pi/agent/.env into process.env at pi startup.
Install
pi install npm:pi-dotenv
Or install from a local path:
pi install /path/to/pi-dotenv
Usage
Create ~/.pi/agent/.env:
TAVILY_API_KEY=tvly-...
AGENTMAIL_API_KEY=...
XYZ_API_KEY=fake_123
Restart pi. Existing shell env vars are never overwritten.
Load order
pi-dotenv loads the file when pi loads the extension. An extension that reads
process.env when pi loads it (not in an event handler) sees these values only
if pi-dotenv loads first. Put npm:pi-dotenv first in packages in
~/.pi/agent/settings.json. Extensions from pi -e, .pi/extensions/,
~/.pi/agent/extensions/, and project packages always load before global
packages. Extensions that read process.env in session_start or later are
not affected.
How it works
- Loads the dotenv file at extension load (factory time), so extensions that read
process.envwhile pi loads are already served; reloads on eachsession_start(idempotent, picks up edits across/new,/resume,/fork) - Uses
@dotenvx/dotenvxwithprocessEnv: {}(no ambient variable interpolation) - Never overrides an env var already set in the shell
- Synchronous, minimal, zero network calls