SecretsCLI
Secure, simple secrets management for developers
Stop sharing .env files over Slack.
The Problem
We've all been there:
- "Hey, can you send me the database credentials?"
- "Which
.envfile is the latest one?" - "I just set up a new laptop and now I need to ask everyone for secrets again"
Sharing secrets through Slack, email, or sticky notes is a mess. It's insecure, hard to track, and honestly just annoying.
What SecretsCLI Does
It's simple: one command to pull all your secrets, anywhere.
pip install secretscli-py
secretscli login
secretscli project use my-app
secretscli secrets pull
That's it. Your .env file is ready. No asking around. No digging through old messages.
How It Works
- You store secrets once - encrypted, in the cloud
- Your team pulls them anywhere - new laptop, CI/CD, staging server
- Server never sees plaintext - zero-knowledge encryption
No more "which version is correct?" - there's one source of truth.
Getting Started
First Time Setup
New to SecretsCLI? Here's how to get started:
pip install secretscli-py
# Create your account
secretscli init
# Create a project for your app
secretscli project create my-app
# Add your secrets
secretscli secrets set DATABASE_URL=postgresql://... API_KEY=sk_live_...
# Or if you already have a .env file, just push it
secretscli secrets push
Setting Up a New Machine
Already have an account? Just pull your secrets:
pip install secretscli-py
secretscli login
# Connect to your project
secretscli project use my-app
# Pull all secrets
secretscli secrets pull
# Done - your .env is ready
Creating a Project in a Specific Workspace
Want to create a project in a team workspace instead of your personal one?
# See all your workspaces
secretscli workspace list
# Switch to the workspace you want
secretscli workspace switch "Backend Team"
# Now create your project - it goes into the selected workspace
secretscli project create api-service
Team Collaboration
Got a team? Here's how to share secrets securely:
# Create a team workspace
secretscli workspace create "Backend Team"
# Invite your teammates
secretscli workspace invite alice@company.com
secretscli workspace invite bob@company.com
# Create a shared project
secretscli project create shared-api
# Your teammates just need to:
pip install secretscli-py
secretscli login
secretscli project use shared-api
secretscli secrets pull
# They now have all the secrets
Everyone in the workspace gets the same secrets. When you update something, they get it on their next pull.
Security (the boring-but-important part)
- Zero-knowledge - API never sees your plaintext secrets
- End-to-end encryption - X25519 + Fernet (industry standard)
- Your keys, your control - stored in your system keychain
We can't read your secrets even if we wanted to.
Full Documentation
- Command Reference - Every command explained
- Developer Guide - Contributing, testing, architecture
Other Languages
This is the Python implementation, but SecretsCLI can be built in any language - Go, Rust, JavaScript, whatever you prefer.
If you want to create an implementation in another language:
- Open an issue with the title "New Language Implementation: [Language]"
- We'll create an official repository under our org
- You build it, we help maintain it
This keeps all implementations organized and gives contributors proper credit.
Requirements
- Python 3.9+
- Internet connection
Contributing
Found a bug? Got an idea? PRs are welcome.
Check out CONTRIBUTING.md to get started.
Links
If this saves you time, consider giving it a star. It helps others find it.
MIT License
Metadata
Release files for secretscli-py 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| secretscli_py-1.0.2.tar.gz | 32.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| secretscli_py-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 71.7 kB
Release files / secretscli_py-1.0.2.tar.gz
| Download URL | secretscli_py-1.0.2.tar.gz |
|---|---|
| Size | 32.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8c6c6f08e6f64fa08ccb2f1c63b2968c481d550610fa0a5473f521e5440e675d
|
|
BLAKE2b-256 checksum How to use checksums |
736beb9dc0bc6f811eff9d642f1fc01ca1306ee3da4d1281652af333a64dac23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2
|
Release files / secretscli_py-1.0.2-py3-none-any.whl
| Download URL | secretscli_py-1.0.2-py3-none-any.whl |
|---|---|
| Size | 39.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e0a7b5428639114b3e63980bfdc9874073ef3352e3bb2e483fa4ad9eb6bb7528
|
|
BLAKE2b-256 checksum How to use checksums |
cd5929c9a8e95baa727387f5bd614442ace95b0386ddb0090807751c0dc72868
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2
|