/Flow.Launcher.Plugin.BitwardenSearch

Quick access to your Bitwarden vault via Flow Launcher.

Primary LanguageC#

Flow Launcher - Bitwarden Vault Plugin

This is a Flow Launcher plugin for Bitwarden - an application I like to use for password management. I noticed there wasn't a plugin to provide this functionality, so I thought I'd make one myself.

This is my first ever Flow Launcher plugin, so I am open to suggestions/critique on ways I can improve this.

Features

As of this release (2.1.0), it contains the following capabilities:

  1. Search across your entire vault from within Flow Launcher.
    • Icon population for each vault item if you have a URL associated with that item and it resolves and can produce a favicon.
    • Copy common vault item values including username, password, TOTPs, and URLs.
    • Icon and vault item caching so searching across your vault using Flow Launcher has never been faster.
      • Sensitive information for your vault is not stored in the cache. Information stored specifically are what you can see in the item results of Flow Launcher including username, URLs, and whether or not your vault item has a TOTP code associated with it.
  2. Self-hosted server support.
    • Self-host your own instance of Bitwarden or Vaultwarden? Enter your server information from within the plugin settings to connect to your own instance.
  3. Adjustable autolock parameters to securely lock your vault after a period of inactivity of your choosing.
  4. Adjustable clipboard history control to clear your clipboard after a period of time of your choosing.
  5. Customizable notifications.
    • Adjust notifications for vault item copying actions, sync actions, auto-lock, etc. from within the plugin settings.
  6. Automatic download, extraction, and configuration of the Bitwarden CLI to a place of your choosing and will configure your PATH variables for you.
  7. Shortcut and context menu support - can use keyboard shortcuts to perform copy actions or use Flow Launcher's built-in context menus on your vault items to copy what you want.
  8. Re-prompt for master password on vault items configured for it.

Requirements

In order to use this plugin, you have to have the Bitwarden CLI downloaded.
  • Please ensure you download the latest version as there are login issues with previous versions. If you're not sure where to go, download it direct from the settings screen for the plugin.
  • Installation Instructions

    Install from the Plugin Store from the Flow Launcher settings menu or type the following in Flow Launcher 😊:

    pm install bitwarden

    How to Use:

    • Upon installation of the plugin, you'll need to configure the plugin settings and provide the following attributes:
      • Your Bitwarden CLI executable location.
        • You should keep this file named bw.exe so command references work correctly.
        • Make sure to click the text to add the path to your user PATH environment variable if it isn't already there.
        • If this is a fresh installation of the plugin and you've never downloaded the CLI before, just download it from the settings menu. Once you pick a place for it to go it'll handle all the system configurations.
      • If you're using a self-hosted instance, you'll need to check the box to use self-hosted instance and provide at a bare minimum, the URL to your self-hosted instance.
        • You'll want to do this before you set your client_id and client_secret, or else when you check the box to use a self-hosted instance, it's going to clear your entries.
        • If you have some additional advanced configurations, you can expand the optional advanced settings dropdown to populate various additional attributes about your instance.
        • Make sure to click the 'Apply Server Configuration' button to apply your changes.
      • Your Bitwarden client_id from your respective Bitwarden API menu
      • Your Bitwarden client_secret from your respective Bitwarden API menu
        • Instructions for the API stuff can be found in the plugin settings menu.
      • Adjust your desired settings for logging, notifications, vault unlock timeout, and automatic clipboard clearing settings.
  • Type bw before your search-term to start populating items in your vault.
    • If your vault is locked, you will be prompted to unlock it first. Press ENTER or click on the item and you'll be prompted for your master password. Press ENTER again at the new window after you've supplied it.
    • You will be notified when your vault is unlocked and ready to be used with a OS notification.
      • If you have sync status notifications enabled, as soon as you see the notification that your vault is syncing, it is ready to use.
      • Otherwise, if you have those notifications turned off, you'll just get the standard 'vault is unlocked' notification and you'll know it's ready.
    • To manually lock or sync your vault, open the context menu immediately after tying in bw without a search term and that's where you'll find them.
    • Just pressing ENTER on the populated item will copy the password.
    • Pressing CTRL+ENTER copies the username.
    • Pressing CTRL+SHIFT+ENTER brings up the URI menu where you can use the UP and DOWN arrow keys to select your preferred URI and press ENTER to copy it to your clipboard.
    • Pressing CTRL+T+ENTER copies the TOTP.
    • If you don't want to remember shortcuts, each vault item has context menus for each operation.

    Screenshots

    Initial look after typing in the keyword.

    Some search results.

    Multiple search results.

    Flow Launcher plugin settings screen.

    Context menu for vault item example.