Vokul is a local-first command-line interface (CLI) password manager designed for security and ease of use. It allows you to securely store, retrieve, and manage your sensitive credentials directly on your machine, encrypted with a master password.
- Local-First Storage: Your data stays on your machine, never touching external servers.
- Strong Encryption: Utilizes
cryptographywith AES-GCM and Argon2id for key derivation. - CLI Interface: Manage your vault efficiently from the terminal.
- TOTP Support: Generate Time-based One-Time Passwords for 2FA-enabled services.
- Password History: Keeps a short history of previous passwords for each service.
- Clipboard Integration: Automatically copies passwords to clipboard and clears them after a short delay.
- Security Throttling: Protects against brute-force attacks with persistent lockout mechanisms.
- Vault Backup & Recovery: Automatic backups and self-healing from corrupted vaults.
- JSON Output: Supports machine-readable output for integration with other tools.
- Python 3.8 or higher
pip install vokul- Clone the repository:
git clone https://github.com/your-repo/vokul-cli.git cd vokul-cli - Install dependencies:
pip install -e .
Before you can use VOKUL, you need to initialize a new vault and set your master password. This will create a vault.vk file in your current directory.
vokul initStore credentials for a new service. You will be prompted for the password if not provided directly.
vokul add --service github
vokul add --service mybank --password "StrongP@ssw0rd!" --totp "JBSWY3DPEHPK3PXP"Get a password for a service. By default, it copies to your clipboard and clears after 15 seconds.
vokul get --service githubTo display the password directly in the terminal (use with caution):
vokul get --service github --showIf you've stored a TOTP secret, you can generate the current 2FA code.
vokul totp --service mybankSee all services stored in your vault.
vokul listCreate a new strong password. You can specify length, exclude symbols, or generate a memorable passphrase.
vokul generate --length 20
vokul generate --memorable
vokul generate --no-symbolsRemove a service from your vault. This requires confirmation.
vokul delete --service oldservicePermanently delete your entire vault file. This action is irreversible.
vokul destruct --forceFor a full list of commands and options, use the --help flag:
vokul --help
vokul [command] --helpContributions are welcome! Please see the CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
For questions or feedback, please open an issue on the GitHub repository.
