omp packages

pi-dotenv1.0.1

Load ~/.pi/agent/.env into process.env at pi startup

tacotakumi Published 1 month ago MIT ~360 downloads/mo

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.

Did it work for you?

Result

One report per person. A new report replaces your old one.

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.env while pi loads are already served; reloads on each session_start (idempotent, picks up edits across /new, /resume, /fork)
  • Uses @dotenvx/dotenvx with processEnv: {} (no ambient variable interpolation)
  • Never overrides an env var already set in the shell
  • Synchronous, minimal, zero network calls