# Yoshi: A Password Manager A simple command-line pass manager, writtin in Python + SQLite3. This tool allows you to manage accounts and generate random passwords containing ASCII letters, numbers, and punctuation (min. 8 characters) or XKCD-like passphrases (min. 3 words). See the Installation & Usage sections below for more information. # Table of Contents - [Installation](#installation) - [Usage](#usage) - [Arguments](#arguments) - [Contributing](#contributing) # Installation [(Back to top)](#table-of-contents) ## PyPi ```bash pipx install yoshi-cli ``` ## Manual To run the script locally, run the following commands: ```bash git clone REPO_URL cd yoshi-cli pipx install . ``` ![Yoshi CLI Installation](https://git.sr.ht/~cxc/yoshi-cli/blob/main/examples/installation.png) # Usage [(Back to top)](#table-of-contents) All commands can be passed to the program with the following template: `yoshi ` ![Yoshi CLI Help](https://git.sr.ht/~cxc/yoshi-cli/blob/main/examples/help.png) ## Arguments ### Summary
Argument Shortcut Explanation
--help -h Print the welcome message
--new -n Create a new account
--list -l List all saved accounts
--edit -e Edit a saved account (see below for required flags)
--delete -d Delete a saved account (see below for required flags)
--purge N/A Purge all accounts and delete the vault
--encrypt N/A Encrypt the vault database (see below for required flags)
--decrypt N/A Decrypt the vault database (see below for required flags)
#### Flags Flags for the `edit`, `e` command - both are required:
Argument Shortcut Explanation
--uuid -u Provide the account UUID to edit
--field -f Provide the account field to edit
Flags for the `delete`, `d` command - this flag is required:
Argument Shortcut Explanation
--uuid -u Provide the account UUID to delete
Flags for the `encrypt` or `decrypt` command - you must provide at least one when encrypting, none are required when decrypting:
Argument Shortcut Explanation
--generate -g When encrypting, generate a new key
--keyfile -k When encrypting or decrypting, provide the path to a saved key file
![Yoshi CLI New Account](https://git.sr.ht/~cxc/yoshi-cli/blob/main/examples/accounts.png) # Contributing [(Back to top)](#table-of-contents) Any and all contributions are welcome. Feel free to fork the project, add features, and submit a pull request.