Secret Masking
Bivvy automatically masks sensitive values in all output to prevent accidental exposure of secrets.
Built-in Patterns
By default, Bivvy recognizes environment variables matching these patterns:
*_API_KEY,*_APIKEY- API keys*_SECRET,*_SECRET_KEY- Secrets*_TOKEN,*_ACCESS_TOKEN,*_AUTH_TOKEN- Tokens*_PASSWORD,*_PASSWD,*_PWD- Passwords*_CREDENTIAL- Credentials*_PRIVATE_KEY- Private keys*_CONNECTION_STRING,*_DATABASE_URL- Connection strings
Custom Secret Patterns
Add custom environment variable names to treat as secrets:
settings: secret_env: - MY_CUSTOM_SECRET - INTERNAL_API_TOKEN - VENDOR_CREDENTIALSHow Masking Works
When Bivvy outputs any text (logs, command output, status messages),
it replaces actual secret values with [REDACTED]:
$ bivvy runSetting DATABASE_URL=[REDACTED]Running migration with API_KEY=[REDACTED]Masking in Different Contexts
Secrets are masked in:
- Command output - stdout and stderr from executed steps
- Log files - When logging is enabled
- Status messages - Progress and status output
- Error messages - Stack traces and error details
Sensitive Steps
For steps that handle particularly sensitive data, you can mark them as sensitive to receive additional protection. See the Sensitive Steps documentation.