Package: clpm
CLPM: A Command-Line Password Manager.Table of ContentsAboutInstallationRequirementsRegular InstallLocal/Manual InstallUninstallUsageAdd AccountRemove AccountQuery DatabaseResetTODOAboutCLPM is a is an easy-to-use out-of-the-box password manager accesible solely
through the command-line. The passwords are encrypted using 256 bit AES and the
master password is hashed using 256 bit SHA-3. The master password is used to
generate a key for encryption and for accessing the accounts. The accounts are
stored in a local SQL database.InstallationRequirementspython >= 3.9pip >= 21.1.2Automatically installed by pip:Click >= 8.1.3pycryptodome >= 3.14.1prettytable >= 3.3.0Regular InstallFor most, installing this project can be done runningpip install clpm,
which pulls the project fromPyPI.Local/Manual InstallIf needed, this project can be installed and run locally:Clone this project to a local repository.Runpython setup.py installNote: setup.py uses pip to install the project as a package on the local systemUninstallTo uninstall this project, for both remote and local installations, runpip uninstall clpmIf clpm has been already been initialized, pip won't delete the filepasswords.dbwhich contains all stored account information. This means that
clpm can be reinstalled and still retain the same accounts & master password.
If you wish to completely remove clpm from your device, you must manually removepasswords.dbby either using thermcommand or a file explorer.UsageRunclpm initto initialize the database. A prompt & confirmation will appear
to input amaster password. The master password is required for to access
the database for all commands. In fact, all commands - includinginit- accept
a--passwordargument for the master password instead of a prompt.Note: clpm will not work unless a master password is set throughclpm initfirst.Add AccountTo add an account to the database, runclpm add. After a prompt to input the
master password, a menu will appear that requests input foraccount name,
username, email, tag andpassword. Bolded fields are required. If the field
is not required, pressEnterto leave it empty. At any point, pressqto
terminate the command.Each Account includes an automatically generated id that iterates for each
added account.Remove AccountTo remove an account from the database, runclpm delete IDwhere ID is the
accounts id. Once again, a prompt to input the master password will appear.Query DatabaseTo query the database, runclpm query. This command alone will simply output
all accounts and information. Use arguments to search by attributes:-l/--allserve the same purpose asclpm querywith no arguments.-a/--accounts ACCOUNTsearch for accounts with the account field ACCOUNT.-t/--tags TAGsearch for accounts that with the tag field TAG.-i/--ids IDretrieves the acccount with an id field of ID.ResetTo reset the database (i.e, remove all accounts and master password), runclpm reset. A confirmation prompt as well as a master password prompt will
appear. This will clearpasswords.dbbut leave the file on the system.Note: after reset, clpm will not work unless it is reinitialized.TODOEncrypt all account information rather than just passwords.Revamp menu.Fix double init/reset error.Clear terminal history after query/add.