Penv Cloud
Start free
Docs
Referencesince 1.0.0

CLI reference

Every penv command, grouped by what you are doing.

Every command in penv 1.0.0, with its usage, arguments, flags and exit codes, generated from the manifest that release publishes.

Start with the global options, which every command takes.

Validate and run

Declare what the app needs, then run it.

CommandWhat it does
penv initCreate .env.schema from your .env and keep .env out of git
penv lsList your keys and show which ones have a value
penv checkFind problems in .env.schema and missing values
penv whySay where a key's value comes from, never the value
penv scanFind secret values committed to files
penv runRun a command with your secrets loaded into it

Local-first values

Values kept in files, encrypted at rest, and packed for a deploy.

CommandWhat it does
penv encryptEncrypt the secrets in your .env files
penv decryptWrite the .env files' secrets back in plain text
penv bundleWrite an encrypted file of one environment's values for a deploy

Penv Cloud

Values we store in your Penv Cloud workspace.

CommandWhat it does
penv loginSign in
penv logoutSign out on this machine
penv pushSend your local .env to the cloud, then delete the file
penv pullWrite a .env file from the cloud
penv setSave one value (typed hidden, never shown)
penv unsetDelete one value
penv machineIdentities for servers and CI
penv machine enrollGive this server its own identity, from a one-time secret made in the console

Projects and environments

Project and environment management.

CommandWhat it does
penv projectYour projects: ls, new, rename, rm
penv project lsList your projects and their environments
penv project newCreate a project with a development environment
penv project renameRename a project; a folder linked to it is updated too
penv project rmDelete a project and every value in it, for good
penv envA project's environments: ls, new, rename, copy, rm
penv env lsList the project's environments
penv env newCreate an empty environment
penv env renameRename an environment
penv env copyCreate an environment with another one's keys; values are never copied
penv env rmDelete an environment and every value in it, for good

Typed access

The schema, and the file your language reads it through.

CommandWhat it does
penv genWrite the typed file for your language (ts, py, go, rust, php, java, csharp)
penv schemaPrint the schema as JSON
penv lspServe .env.schema to an editor over the Language Server Protocol on stdio

Coding agents

What an agent may see, and what it has to ask for.

CommandWhat it does
penv guardWrite the rules that keep AI tools out of .env
penv hookRun as a harness hook; a payload it cannot read is refused
penv revealShow one value; an AI agent needs your approval first

Distribution

Keeping the binary and the shell current.

CommandWhat it does
penv upgradeReplace penv with the latest release
penv completionsPrint the shell completion script
penv helpShow help for a command