Skip to main content

secret

Store, retrieve, and manage secrets. All secrets are encrypted client-side before being sent to the server.

zopp secret <COMMAND>

Commands

CommandDescription
setSet (create or update) a secret
getRetrieve and decrypt a secret
listList all secrets in an environment
deleteDelete a secret
exportExport secrets to a .env file
importImport secrets from a .env file

secret set

Set (upsert) a secret. The value is encrypted client-side using XChaCha20-Poly1305 before being stored.

zopp secret set [OPTIONS] <KEY> <VALUE>

Arguments

ArgumentRequiredDescription
KEYYesSecret key (e.g., DATABASE_URL)
VALUEYesSecret value (plaintext - encrypted automatically)

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-h, --helpNoPrint help

Examples

# With explicit flags
zopp secret set -w mycompany -p backend -e development DATABASE_URL "postgresql://localhost/mydb"

# With zopp.toml defaults
zopp secret set DATABASE_URL "postgresql://localhost/mydb"

# Set multiple secrets
zopp secret set API_KEY "sk-12345"
zopp secret set REDIS_URL "redis://localhost:6379"

secret get

Retrieve and decrypt a secret.

zopp secret get [OPTIONS] <KEY>

Arguments

ArgumentRequiredDescription
KEYYesSecret key to retrieve

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-h, --helpNoPrint help

Examples

$ zopp secret get DATABASE_URL
postgresql://localhost/mydb

# Use in scripts
export DATABASE_URL=$(zopp secret get DATABASE_URL)

secret list

List all secret keys in an environment. Only keys are shown, not values.

zopp secret list [OPTIONS]

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-h, --helpNoPrint help

Example

$ zopp secret list
DATABASE_URL
REDIS_URL
API_KEY
JWT_SECRET

secret delete

Delete a secret from an environment.

zopp secret delete [OPTIONS] <KEY>

Arguments

ArgumentRequiredDescription
KEYYesSecret key to delete

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-h, --helpNoPrint help

Example

$ zopp secret delete OLD_API_KEY
Secret "OLD_API_KEY" deleted

secret export

Export all secrets from an environment to a .env file format.

zopp secret export [OPTIONS]

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-o, --output <OUTPUT>NoOutput file path (defaults to stdout)
-h, --helpNoPrint help

Examples

# Export to file
zopp secret export -o .env

# Export to stdout
zopp secret export

# Export specific environment
zopp secret export -e production -o .env.production

secret import

Import secrets from a .env file into an environment.

zopp secret import [OPTIONS]

Options

OptionRequiredDescription
-w, --workspace <WORKSPACE>NoWorkspace name (defaults from zopp.toml)
-p, --project <PROJECT>NoProject name (defaults from zopp.toml)
-e, --environment <ENVIRONMENT>NoEnvironment name (defaults from zopp.toml)
-i, --input <INPUT>NoInput file path (defaults to stdin)
-h, --helpNoPrint help

Examples

# Import from file
zopp secret import -i .env

# Import from stdin
cat .env | zopp secret import

# Import to specific environment
zopp secret import -e staging -i .env.staging