🦊 FoxKey — Secure TOTP Manager
Minimalist, secure terminal 2FA client with strong defaults and zero footguns.
More about me / other projects: abhrankan.netlify.app
Features
- Encrypted vault (Argon2id + ChaCha20-Poly1305)
- Plaintext label index (list without password)
- otpauth:// URI support
- Clipboard auto-clear + live countdown
- Export / Import encrypted backups
- Change master password
- BusyBox-style single script
Installation
From PyPI
pip install foxkey
Single binary (recommended)
pip install pyinstaller
pyinstaller --onefile --name foxkey foxkey.py
# Move dist/foxkey to ~/bin or /usr/local/bin
Development
git clone https://github.com/foxhackerzdevs/foxkey.git && cd foxkey
pip install -e .
Usage
foxkey add github # prompts for the secret (recommended)
foxkey add github otpauth://totp/... # also accepted, but exposes the secret
# in shell history and `ps` -- scripting only
foxkey list
foxkey get github
foxkey export --file backup.enc
foxkey import backup.enc
foxkey change-password
Security Notes
- Master password never touches CLI args
- The service secret (
add's second argument) is optional and prompted viagetpasswhen omitted — same reasoning as the master password: passing it directly leaks it into shell history andps. The positional form still works for scripted use. importalways re-encrypts the vault under its current live master password, even when restoring a backup that was encrypted under a different (e.g. older) password. Importing an old backup can never silently change your master password to match it.- Vault refuses weak operations
- Clipboard cleared after token lifetime
Release files for foxkey 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| foxkey-0.2.0.tar.gz | 9.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| foxkey-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.2 kB
Release files / foxkey-0.2.0.tar.gz
| Download URL | foxkey-0.2.0.tar.gz |
|---|---|
| Size | 9.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ac064505ac8eaa19cd9e1bb7d6265c9cdc19e376867672266065d0cb182e0753
|
|
BLAKE2b-256 checksum How to use checksums |
012b2c02e5b1d1e3527daea22879d69f788956cf76d67fd8187444e07a7ca970
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / foxkey-0.2.0-py3-none-any.whl
| Download URL | foxkey-0.2.0-py3-none-any.whl |
|---|---|
| Size | 9.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1e394ac3435a5894f63ad3bdbe368066bf550c4c34d91ee0049ebb5cae6af164
|
|
BLAKE2b-256 checksum How to use checksums |
dc86f30aa242c3a36fb0f4b35b1f66b55bac1df80544197dcbd32f088fa824c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|