An open API service indexing awesome lists of open source software.

https://github.com/jasperdevs/shush-vault

Open-source, encrypted secret and API key manager for desktop and CLI
https://github.com/jasperdevs/shush-vault

Last synced: about 1 month ago
JSON representation

Open-source, encrypted secret and API key manager for desktop and CLI

Awesome Lists containing this project

README

          


shush vault logo

🤫 shush vault

open-source, encrypted secret and API key management for desktop and CLI.


GitHub release downloads
GitHub latest release downloads
GitHub stars


Shush Vault is a local-first vault for storing, organizing, importing, and copying secrets and API keys from native desktop apps and a cross-platform CLI.
The repo is native-first: WinUI 3 for Windows, SwiftUI for macOS, GTK 4 for Linux, and Rust for the CLI/shared vault crate.

features



Feature
Preview


Encrypted local vault for API keys, tokens, and secrets
Encrypted vault placeholder


Workspaces for projects, clients, and apps
Workspaces placeholder


Environment labels like Dev, Staging, and Prod
Environment labels placeholder


Search, filters, and masked values by default
Search and masking placeholder


Add, edit, delete, and copy secrets quickly
Secret editor placeholder


Provider, notes, and metadata for each secret
Metadata placeholder


.env import with preview, errors, and conflict handling
.env import placeholder


CLI for init, add, list, copy, import, and export
CLI placeholder

recommended codebase



Layer
Choice
Why


Desktop shell
Native per OS
WinUI 3 for Windows, SwiftUI for macOS, GTK/libadwaita for Linux. No Electron.


Core logic
Rust vault core plus matching .NET adapter
Shared encrypted vault format using PBKDF2-SHA256 and AES-256-GCM so the Windows app and CLI can read the same vault file.


CLI
Rust binary with clap
Fast startup, easy distribution, and direct reuse of the vault crate.


UI
OS-native UI
Each platform uses its own native UI instead of sharing a web shell.


Storage
Encrypted local database
Store searchable metadata separately from encrypted secret values.


Key handling
Passphrase unlock
Interactive hidden prompts are preferred. CLI env/argument passphrases are automation paths.

status



Area
Status


Windows app
WinUI 3 app with custom titlebar, monochrome UI, shared encrypted vault storage, CRUD, search/filter, copy, .env import/export, and Velopack packaging.


CLI
shush Rust command for init, add, get, update, delete, list/search, copy, import, and export using the shared encrypted vault core.


macOS
SwiftUI native client with encrypted vault unlock, CRUD, search, copy, .env import/export, and macOS CI tests.


Linux
GTK 4 native client with encrypted vault unlock, CRUD, search/filter, copy, .env import/export, and Linux CI checks.


Sync
The data model is sync-shaped with stable IDs and timestamps. E2E sync transport is not implemented.

starter CLI shape

shush init

shush add OPENAI_API_KEY sk-... --workspace my-app --env Dev
shush list --workspace my-app --env Dev --search openai
shush get OPENAI_API_KEY --workspace my-app --env Dev
shush update OPENAI_API_KEY --workspace my-app --env Dev --value sk-new...
shush copy OPENAI_API_KEY --workspace my-app --env Dev
shush import .env --workspace my-app --env Dev --preview
shush import .env --workspace my-app --env Dev --conflict overwrite
shush export --workspace my-app --env Dev --stdout
shush delete OPENAI_API_KEY --workspace my-app --env Dev

copy and export expose plaintext by design. Clipboard copies clear after 30 seconds by default, and export requires --stdout or --output.

MIT