Skip to main content

Dmenu/Rofi frontend for Bitwarden CLI tool

Project description

Bitwarden-menu

PyPI - Python Version PyPI GitHub contributors

Dmenu/Rofi frontend for managing Bitwarden vaults. Uses the Bitwarden CLI tool to interact with the Bitwarden database.

This project is not associated with the Bitwarden project nor 8bit Solutions LLC.

Installation

pip install --user bitwarden-menu

Ensure ~/.local/bin is in your $PATH. Run bwm and enter your database path, keyfile path, and password.

NOTE: Initial login to some servers, including vault.bitwarden.com, will require the client_secret from your account settings page. Ensure this is in your clipboard and ready to paste prior to first run. Once logged in for the first time, you will not need this value again.

For full installation documention see the [installation docs][docs/install.md].

Full Documentation

Installation - Configuration - Usage

Requirements

  1. Python 3.7+
  2. Bitwarden CLI. Ensure the bw command is in $PATH
  3. Pynput and Xdg
  4. Dmenu, Rofi, Wofi or Bemenu
  5. (optional) Pinentry.
  6. (optional) xdotool, ydotool(>= 1.0.0)/wtype (for Wayland).

Features

  • Supports multiple bitwarden.com and self-hosted Vaultwarden accounts. Accounts can be switched on the fly.
  • Auto-type username and/or password on selection. No clipboard copy/paste involved.
  • Supports login with 2FA code from Authenticator(TOTP), Email, or Yubikey.
  • Background process allows selectable time-out for locking the database.
  • Use a custom Keepass 2.x style auto-type sequence.
  • Type, view or edit any field.
  • Open the URL in the default web browser.
  • Non U.S. English keyboard languages and layouts supported via xdotool or ydotool/wtype (for Wayland).
  • Edit notes using terminal or gui editor.
  • Add and Delete entries
  • Rename, move, delete and add folders and collections
  • Move any item to or from an organization, including support for multiple collections.
  • Hide selected folders from the default and 'View/Type Individual entries' views.
  • Configure the characters and groups of characters used during password generation.
  • Optional Pinentry support for secure passphrase entry.
  • Add, edit and type TOTP codes.

License

  • MIT

Usage

bwm [-h] [-v VAULT] [-l LOGIN] [-a AUTOTYPE]

  • Run bwm or bind to keystroke combination.
  • Enter account URL on first run.
  • Start typing to match entries.
  • Configure ~/.config/bwm/config.ini as desired.
  • More detailed usage information.
  • Screencast (Using Bemenu on Sway):

Screencast

Tests

To run tests in a venv: make test (not implemented yet)

Development

  • To install bitwarden-menu in a venv: make
  • Build man page from Markdown source: make man

Planned features

  • Unit tests
  • Notifications for syncing status (e.g. when a sync is complete)
  • Clipboard support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bitwarden-menu-0.4.1.tar.gz (34.4 kB view details)

Uploaded Source

Built Distribution

bitwarden_menu-0.4.1-py3-none-any.whl (43.9 kB view details)

Uploaded Python 3

File details

Details for the file bitwarden-menu-0.4.1.tar.gz.

File metadata

  • Download URL: bitwarden-menu-0.4.1.tar.gz
  • Upload date:
  • Size: 34.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for bitwarden-menu-0.4.1.tar.gz
Algorithm Hash digest
SHA256 382f8c1c489453a6c34f6c12483b6ed0a9f00f00696cb4c1b5ad318dfbb394e2
MD5 93af1bca2506b25d241cd69d759271d1
BLAKE2b-256 318bfbdbcb5bd222d7dd2a9421fa4444fc052a2cbb24b2b8be566768f9f8fb7b

See more details on using hashes here.

File details

Details for the file bitwarden_menu-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for bitwarden_menu-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3cddb0611c44683e3656317e9774c4d9a90dd1b70455327cd69319e743cc8275
MD5 f8772bf365914018c85d271c1f9dc1de
BLAKE2b-256 134699e7cc103fea98ec75bcd4ba1521f9d3cae4e4ccb64a761ed123f24532cf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page