Skip to main content
The CLI can list remote environment variable names, compare a local .env file with the encrypted remote values, and push local values to a project. Remote secret values are never printed by the CLI. For pxxl env diff, Pxxl decrypts the remote values server-side, compares them to the local .env, and returns only comparison statuses.

List

pxxl env list <project-id>
pxxl env list <project-id> --global
pxxl env list returns keys, secret status, and scope. It does not reveal secret values.

Diff

pxxl env diff <project-id>
pxxl env diff <project-id> --file .env.production
pxxl env diff <project-id> --global
Diff statuses:
StatusMeaning
sameLocal and remote values match.
changedThe key exists locally and remotely, but the values differ.
missing_remoteThe key exists locally but not remotely.
missing_localThe key exists remotely but not in the local .env file.
pxxl env diff compares values, but it does not print values. Treat the local .env file as sensitive and keep it excluded by .pxxlignore.

Push

pxxl env push <project-id>
pxxl env push <project-id> --file .env.production
pxxl env push <project-id> --global
pxxl env push <project-id> --force
pxxl env push reads a local dotenv file and upserts the keys into Pxxl. By default, values are stored as secrets. Use --force when the remote environment should be replaced by the local file:
pxxl env push <project-id> --file .env.production --force
If you run the command inside a folder with pxxl.toml, the CLI can use the saved projectId:
pxxl env diff
pxxl env push --file .env.production

Permissions

Environment operations require an API key with scope=env, scope=project, or scope=all.
OperationRequired permission
list, diffread
pushread_write