@vietor/serun
v0.9.3
Published
Secure environment variable runner with encrypted storage
Maintainers
Readme
serun
Secure environment variable runner with encrypted storage.
Installation
npm install -g @vietor/serunQuick Start
- Set the master key environment variable:
export SERUN_SAFEKEY="your-master-password"- Configure environment variables:
serun-cfg set API_KEY abc123- Run commands with encrypted environment variables:
serun npm run devCommands
serun
Execute commands with encrypted environment variables loaded from ~/.serun/global and optionally a channel-specific file.
Usage: serun [options] <command> [args...]
Options:
-h, --help Show help message
-c, --channel <name> Load additional env from ~/.serun/<name>
Description:
Load encrypted environment variables from ~/.serun/global and optionally
from a channel-specific file, then execute the specified command.
Examples:
serun npm install Run with global env
serun -c dev npm run Run with global + ~/.serun/dev
serun --channel prod node Run with global + ~/.serun/prodserun-cfg
Configure encrypted environment variables for use with serun.
Usage: serun-cfg [options] <action> [args...]
Options:
-h, --help Show help message
-c, --channel <name> Target config file ~/.serun/<name> (default: global)
Actions:
import <file> Import environment variables from .env format file
set <key> <value> Set an environment variable
show Show saved environment variables
Description:
Configure encrypted environment variables for use with serun.
Variables are stored in ~/.serun/global or a channel-specific file.
Examples:
serun-cfg set API_KEY abc123 Set global variable
serun-cfg -c dev set DB_URL pg:// Set variable in ~/.serun/devEnvironment Variables
| Variable | Description |
|----------|-------------|
| SERUN_SAFEKEY | Master password for encrypting/decrypting environment variables |
Storage
Environment variables are stored encrypted in:
~/.serun/global- Default global configuration~/.serun/<channel>- Channel-specific configurations
Security
- All environment variables are encrypted using AES-256-CBC
- The master key (
SERUN_SAFEKEY) is never stored on disk - Each channel provides isolated environment variable sets
