Skip to main content

A lightweight secret storage vault with CLI and Python API. Stores secrets in encrypted files with master password secured via OS keychain (keyring).

Project description

lbx - Lock Box

A lightweight secret storage vault with CLI and Python API. Stores secrets in encrypted files with master password secured via OS keychain.

Features

  • Secure Encryption: AES-256 encryption with master password protection
  • Cross-Platform: Works on Windows, macOS, and Linux
  • Dual Interface: Both CLI and Python API available
  • Keychain Integration: Master password stored securely in OS keychain
  • Simple Workflow: Intuitive commands for daily use
  • Minimal Dependencies: Lightweight and secure

Installation

pipx install lbx

For other installation methods, see the Installation Guide.

Quick Start

CLI Usage

# Create a new vault
lbx vault init

# Add a secret
lbx secret add github token --value ghp_xxxxxx

# Retrieve a secret
lbx secret get github token

# Update a secret
printf "new-value" | lbx secret update github token

# List services and secrets
lbx service list
lbx secret list
lbx secret list --service github

# Rename or move secrets
lbx secret rename github token api_key
lbx secret move github api_key gitlab

# Lock or delete the vault
lbx vault lock
lbx vault delete

Python API

from lbx import Lbx

vault = Lbx()

vault.add_secret("github", "token", "value")
entry = vault.get_secret("github", "token")
print(entry.value)

vault.list_services()
vault.list_secrets()

For complete examples and tutorials, see the Quick Start Guide.

Use Cases

  • Development Teams: Store API keys, database credentials, and service tokens securely
  • DevOps & CI/CD: Manage secrets in deployment pipelines and infrastructure automation
  • Personal Projects: Keep sensitive configuration data encrypted and organized
  • Security-Conscious Users: Replace plain-text config files with encrypted secret storage

Documentation

Complete documentation is available at: https://jd-35656.github.io/lbx/

Requirements

  • Python 3.10 or higher
  • Windows, macOS, or Linux
  • OS keychain support (automatic)

Contributing

Contributions are welcome! Please read the Contributing Guide for details on our development process, coding standards, and how to submit pull requests.

License

MIT License - see LICENSE file for details.

Support


© 2025 Jitesh Sahani (JD)
📧 jitesh.sahani@outlook.com

"Your secrets are safe, your mind at peace."
🐺 Crafted by a dreamer, for dreamers 🐺

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lbx-1.0.0.tar.gz (61.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lbx-1.0.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file lbx-1.0.0.tar.gz.

File metadata

  • Download URL: lbx-1.0.0.tar.gz
  • Upload date:
  • Size: 61.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lbx-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ae5a528fbae8989d7db81666841408a97f3bce8490aaa809c5b4870d989f4baa
MD5 738077f741d3c49f62abf139e77e3938
BLAKE2b-256 baf54d11989190629b9af8115987a9b726ba4b78fa3519eddd708088033adbc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for lbx-1.0.0.tar.gz:

Publisher: release.yml on jd-35656/lbx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lbx-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: lbx-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 26.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lbx-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 687fc22d555e92f4b370902bfc8f1ba8e4c74af18e071f1b49968a81ac4ea2a6
MD5 3b3df44be4f267556ba1330076f6473e
BLAKE2b-256 2511b258d42ebe6488e314c30d106604009324bcec24423910075702e3a71f40

See more details on using hashes here.

Provenance

The following attestation bundles were made for lbx-1.0.0-py3-none-any.whl:

Publisher: release.yml on jd-35656/lbx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page