Documentation

Install the CLI, learn the model and look up every command.

CLI reference

storeenv import

Import environments from shared library projects: list, add, remove, pin, unpin, enable, disable, move.

Global flags
zsh
$ cd ~/code/my-app
$ storeenv import add ada/shared-stripe --env default --only "STRIPE_*"
ada/my-app default now imports ada/shared-stripe default (STRIPE_*).
Each teammate gets these values only if they can read the source themselves. Local keys win.
$ storeenv import [action] [args..]

Arguments

<action>What to do with this environment's imports. One of: list, add, remove, pin, unpin, enable, disable, move, used-by. Default: list.
<args>add: the source project (namespace/name). Other actions: an import id from storeenv import list, then a source version id (pin) or a position, 0 first (move).

Flags

--from-env <value>Source environment (default: the same name as --env).
--only <value>Key patterns to import, like STRIPE_* (default: all keys you can read).
--pin <value>With add: stay on this source version id instead of following the latest.

More examples

$ cd ~/code/my-app
$ storeenv import list --env default
ID INTO FROM SOURCE ENV KEYS VERSION STATE
imp_5da1c05a8187e22505617467 default ada/shared-stripe default STRIPE_* latest on

Good to know

  • Values stay in the library project: every pull checks that the person pulling can read the source themselves.
  • This project's own keys always win; among imports, later ones win over earlier ones (move changes the order).
  • Imports don't chain: a library's own imports don't reach its importers. A direct cycle is refused (SE_IMPORT_CYCLE).

Global flags

--project <value>Project as <namespace/name> or its id (default: .storeenv.json, then this repository's remotes).
--env <value>Environment name.
--jsonMachine readable output.
--yes, -ySkip confirmations.
--colorColoured output (--no-color to turn off). Default: true.
--verboseShow debug details.
--api <value>API base URL of a self-hosted StoreEnv.
--trust-writer <value>Trust a writer for this run: @login=SE:XXXX-XXXX-XXXX.
--allow-unsignedpull and diff: use values that aren't signed by a trusted writer, after you confirm on a terminal (or with STOREENV_ALLOW_UNSIGNED=1). Never applies to run or copy.