@lucaconlaq/psst v0.6.0
psst 🤫
A secret management tool that helps you manage and inject secrets into your environment. Supports 1Password CLI, Vault and shell commands.
📦 Installation
You can install psst in several ways:
Using npm (global installation)
npm install -g @lucaconlaq/psst
Using npx (no installation required)
npx @lucaconlaq/psst
Using mise (recommended)
mise is a modern version manager that makes it easy to manage multiple versions of tools. To install psst with mise:
mise use npm:@lucaconlaq/psst
This is the recommended way to install psst as it provides better version management and isolation.
🚀 Usage
Interactive Console
Open the interactive console to manage your secrets:
psst
Run Commands with Secrets
Run any command with your secrets injected into its environment:
psst <any command>
Examples
# Open a shell with secrets
psst zsh
# Run a development server
psst npm run dev
# View injected secrets
psst env
# Use secrets in a shell command
psst sh -c 'echo $A_SECRET'
⚙️ Configuration
psst looks for a config file in this order:
- Use
PSST_CONFIG
if it is set. - Look for
psst.json
or.psst.json
in the following locations:- Current directory
- Parent directories (up to and including the home directory)
- If no configuration file is found, use
.psst.json
in the current directory.
If the file does not exist, it will be created when the first secret is added via the console.
Example config:
{
"API_KEY": {
"source": "op",
"value": "op://vault/item/field"
}
}
⚠️ Limitations
This tool has only been tested on macOS. While it may work on other Unix-like systems, it hasn't been thoroughly tested on them.