Skip to content

Proton Pass Provider

The Proton Pass provider integrates with Proton Pass for end-to-end encrypted cloud secret storage.

  • Proton Pass CLI (pass-cli) - download from proton.me/pass/download
  • A Proton account, signed in via pass-cli login
  • A vault to store secrets in (e.g. pass-cli vault create secretspec)
protonpass://[vault_name[/title-template]]
  • vault_name: Target vault (defaults to secretspec)
  • title-template: Item title pattern supporting {project}, {profile}, {key} placeholders
Terminal window
# Default vault ("secretspec")
protonpass://
# Specific vault
protonpass://Work
# Specific vault and custom title template
protonpass://Work/{project}/{profile}/{key}
Terminal window
# Set a secret
$ secretspec set DATABASE_URL --provider protonpass://Personal
Enter value for DATABASE_URL: postgresql://localhost/mydb
# Get a secret
$ secretspec get DATABASE_URL --provider protonpass://Personal
# Run with secrets
$ secretspec run --provider protonpass://Personal -- npm start
# Profile-specific vault
$ secretspec set DATABASE_URL --profile prod --provider protonpass://Production

Secrets are stored as note items; the item title defaults to {project}/{profile}/{key}.

Terminal window
# Create a token
$ pass-cli personal-access-token create --name ci --expiration 1y
# Authenticate in CI (store the token as a CI secret)
$ pass-cli login --pat $PROTON_PASS_PAT
$ secretspec run -- deploy