CLI Reference
Complete reference for the sirr command-line interface. Every command, flag, and environment variable.
Installation
# macOS
brew install sirrlock/tap/sirr
# Windows
scoop bucket add sirrlock https://github.com/sirrlock/scoop-bucket
scoop install sirr
# Or download from GitHub Releases
# https://github.com/sirrlock/sirr/releasesEnvironment Variables
| Variable | Default | Description |
|---|---|---|
| SIRR_SERVER | sirr://localhost:39999 | Server URL (sirr:// → http, sirrs:// → https) |
| SIRR_API_KEY | — | API key for write operations (must match server) |
push
Store a secret with optional TTL and read limit.
sirr push KEY=VALUE [--ttl <duration>] [--reads <n>] [--no-delete]
sirr push .env [--ttl <duration>] # push entire .env file--ttl— Time to live. Format:30s,5m,2h,7d,30d--reads— Maximum number of reads before the secret is burned--no-delete— Secret is sealed when reads are exhausted but stays in the database. Can be updated viaPATCH /secrets/:keyand unsealed
get
Retrieve a secret value. Increments the read counter. Burns or seals the secret if the read limit is reached.
sirr get KEYpull
Pull all secrets into a .env file on another machine.
sirr pull .envrun
Inject all secrets as environment variables and execute a command.
sirr run -- node app.jslist
List all active secrets. Metadata only — values are never shown.
sirr listdelete
Burn a secret immediately, regardless of TTL or read count.
sirr delete KEYprune
Delete all expired secrets immediately.
sirr pruneshare
Print a shareable reference URL for a secret.
sirr share KEYrotate
Re-encrypt all records with a new master key. Offline operation — stop the server first.
sirr rotateRequires SIRR_NEW_MASTER_KEY_FILE or SIRR_NEW_MASTER_KEY to be set.
Open source
The CLI is part of the Sirr Rust monorepo, licensed under BSL 1.1 (converts to Apache 2.0 in February 2028).
View on GitHub →