keydex
Manage KeePass databases from your terminal.
⚡️ Quick start
Installation
MacOS and Linux
OS=$(uname | tr '[:upper:]' '[:lower:]')
ARCH=$([[ $(uname -m) == "x86_64" ]] && echo "amd64" || echo "386")
sudo wget -O /usr/local/bin/keydex https://github.com/shikaan/keydex/releases/latest/download/keydex-${OS}-${ARCH}
sudo chmod u+x /usr/local/bin/keydex
Windows and manual instructions
Head to the releases page and download the executable for your system and architecture.
Usage
You can get started simply opening your database.
# opens the interactive editor
keydex open ~/example.kdbx
However, the most common use case for keydex is copying a password to your clipboard.
# copies password from the referenced entry (or stdinput)
keydex copy ~/example.kdbx /example/group/entry
Using environment variables and aliases you can save a couple of keystrokes
# ~/.bashrc or ~/.zshrc
export KEYDEX_PASSPHRASE=${MY_SECRET_PHRASE}
export KEYDEX_DATABASE=~/example.kdbx
alias entry-pwd="keydex copy /example/group/entry"
# and then you can use it like
$ entry-pwd
Opening a given entry and listing accept environment variables too.
# opens the editor at the given location
keydex open /example/group/entry
# lists all the
keydex list
Interoperability
keydex was designed to integrate in your existing workflow: it accepts inputs from stdin and can be piped to your existing toolchain.
For example, here's an of how you can use it to browse entries with fzf
# copy entry's password selected with fzf to the clipboard
keydex list | fzf | keydex copy
# open entry at ref selected with fzf
keydex list | fzf | keydex open
📄 Documentation
More detailed documentation can be found here.
🤓 Contributing
Have a look through existing Issues and Pull Requests that you could help with. If you'd like to request a feature or report a bug, please create a GitHub Issue.
License
MIT