invictus v1.1.5
Invictus - Secure Password Manager CLI
Invictus is a powerful and easy-to-use CLI tool built with Node.js for securely managing passwords. It securely stores your passwords in the OS keychain using the keytar library and provides an intuitive web interface for managing passwords with a beautiful, responsive UI.
š Installation
To install Invictus, run the following command:
npm install -g invictus
š Usage
Once installed, you can use the invictus
command to manage your passwords.
How to do things
Showing Organisation and Accounts Data (except password)
: use show commandGetting account's password
: You cannot directly get the password printed in console, but you can get it copyied on clipboard with copy command.Showing fav and archived organisations
: use show commandCreating an account in an organisation
: use create commandCreating an organisation
: There is no command explicitly for creating an orgnaisation, but you can create it with create command, when creating an account if the specified organisation does'nt exist it will created.Deleting an account
: use delete commandDeleting whole organisation
: use delete command, when you specify the organisation title as positional argument or in prompt, you will be propmted whether to delete the whole organisation or a account within it.Updating account password
: use update command.Updating account's other information
: No command available for this as of now.marking an organisation as favourite
: use fav command- `removing an organisation from favourites: use fav command
Archiving an organisation
: use archive command- `Unarchiving an organisation: use archive command
Generating a random password
: use generate commandGenerating a random password of custom length
: use generate command, and specify length as positional argument or in prompt.Open an interactive WebApp
: use web command
š Available Commands
show
invictus show [title]
Usages
- Can be used to list all the organisations and accounts within them
invictus show --all
- can be used to list all the accounts within a specific organisation
invictus show [organisation title]
- Can be used to list all the organisations (not the accounts withing them)
invictus show --orgs
- Can be used to list all favourite organisations (not the accounts within them)
invictus show --orgs --fav
- Can be used to list all archived organisations (not the accounts within them)
invictus show --orgs --archived
Positional Arguments:
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
Aditional Options
--orgs
or-o
specifies whether to show only organisations not account within them. If not specified then all accounts of a choose organisation is shown.--fav
or-f
specifies whether to show favourite organisations. Cannot be used without specifying--orgs
flag--archived
or-a
specifies whether to show archived, Cannot be used without specifying--orgs
flag
create
invictus create [title] [email] [des]
Creates a new a account within an organisation, if the organisation doesn't exist then it will create a new organisation.
Positional Arguments:
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
false | The email or username for the account. If not specified, CLI prompts for input. | |
des | false | An optional description of the account. |
delete
invictus delete [title] [email]
It can used to delete an account within an organisation or the whole organisation.
Positional Arguments:
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
false | Your account's email/username. If not specified, CLI prompts for input. |
update
invictus update [title] [email]
Updates the password of a specific account, it cannot update any other metadata (email/username, description) as of now.
Positional Arguments:
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
false | Your account's email/username. If not specified, CLI prompts for input. |
fav
invictus fav
Toggle favourite status of an organisation i.e. if it is a favourite then it wil l be removed from favourites and vice versa
Positional Arguments
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
archive
invictus archive
Toggle archived status of an organisation i.e. if it is a archived then it wil l be removed from archived and vice versa
Positional Arguments
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
copy
invictus copy [title] [email]
Copy a password of a specific account to the clipboard.
Positional Arguments:
Name | Required | Description |
---|---|---|
title | false | The title of the organization/website. If not specified, CLI prompts for input. |
false | Your account's email/username. If not specified, CLI prompts for input. |
generate
invictus generate
Generate a new password of length 16 (unless specified) and copy it to the clipboard.
Additional options
--length
or-l
ā Specify the password length (default: 16 characters).--save
or-s
ā Copy the generated password to clipboard.
web
invictus web
Starts the Node.js server and opens the web-based password manager.
Help or Version
invictus --help
invictus --version
Displays usage instructions or the current version of Invictus.
š Key Features
- š Secure Storage: Uses keytar to securely store passwords in your OS keychain.
- š„ Web UI: Comes with a beautifully designed web app accessible via
invictus web
. - š Easy Management: Create, delete, update accounts and password with simple CLI commands.
- š” Secure Generation: Create strong passwords with the
generate
command.
š¦ Dependencies
Invictus relies on the following libraries:
- chalk - CLI text styling
- clipboardy - Clipboard access
- cors - Cross-origin support for the web app
- crypto-js - Encryption for password security
- dotenv - Environment variable management
- express - Web server for the web app
- keytar - Secure password storage in OS keychain
- open - Opens the web UI in a browser
- prompts - Interactive CLI prompts
- yargs - Command-line argument parsing
š License
This project is licensed under the MIT License.
š© Reporting Issues
For any issues, please open a ticket on GitHub: š GitHub Issues\ Or email me at š§ kanhaiyadav.me@gmail.com.
Enjoy using Invictus and keep your passwords secure! š