Skip to content

Pass Provider

The Pass provider stores secrets using the Unix password manager pass (password-store). Secrets are GPG-encrypted for secure local development.

Terminal window
# Debian/Ubuntu
$ sudo apt-get install pass
# Fedora
$ sudo dnf install pass
# Arch
$ sudo pacman -S pass
# macOS
$ brew install pass
secretspec.toml
[project]
name = "myapp"
[[providers]]
type = "pass"
uri = "pass://"
Terminal window
# Initialize password store (first time only)
$ pass init <gpg-key-id>
# Set a secret
$ secretspec set DATABASE_URL
Enter value for DATABASE_URL: postgresql://localhost/mydb
# Run with secrets
$ secretspec run -- npm start

Secrets are stored with a hierarchical path structure: secretspec/{project}/{profile}/{key}

For example, with project “myapp” and profile “default”:

Terminal window
$ pass show secretspec/myapp/default/DATABASE_URL
postgresql://localhost/mydb