Skip to content

Environment variables

Pluma reads these at startup. Every one has a CLI flag and / or config.toml equivalent — env is the middle tier of the precedence ladder.

Variable Equivalent flag Effect
PLUMA_ADDR -addr HTTP bind address.
PLUMA_BASE_URL -base-url Default upstream URL for the boot-time fallback Provider.
PLUMA_API_KEY -api-key Default upstream API key for the boot-time fallback Provider.
PLUMA_DATA_DIR -data-dir Data directory location.
PLUMA_CARD_DIRS -card-dirs Comma-separated extra Tavern-card directories.
PLUMA_OPEN -open Open browser at startup. Accepts 0/false/off/no to disable; anything else enables.
PLUMA_API_TOKEN -token (CLI subcommands) Bearer token for CLI requests. Falls back to ~/.config/pluma/cli.token if unset.

Precedence

For each one of these:

  1. CLI flag (when explicitly passed) wins
  2. Env variable wins next
  3. config.toml entry wins next
  4. Hardcoded default wins last

A flag's default value is the env-resolved value, so passing -addr :8888 from a shell that has PLUMA_ADDR=:9000 set: the flag wins. Passing nothing: env wins.

Dev-time env

Two more env vars matter during development. Neither is read by the binary; they're consumed by the dev-watch script.

Variable Effect
DEV_WATCH_NO_BROWSER Equivalent to dev-watch.sh --no-browser. Appends -open=false so rebuilds don't pop a new tab.