A terminal-based graphical interface for KeePassXC password manager, built with Python and Textual.
Important
This application uses keepassxc-cli which handles the decryption of your password database. The password is only passed via stdin to the subprocess and is never stored or logged. However, always ensure you're using the application in a secure environment.
- This project was built with the assistance of LLM/AI tools
- Always backup your files. I am not responsible if your file gets corrupted. This program uses
keepassxc-clito read/write the database file. The program doesn't affect any database file by it's own.
- Browse Database Files: Navigate your filesystem to select
.kdbxdatabase files - Unlock Database: Secure password prompt to unlock your KeePassXC databases
- Tree Navigation: Hierarchical view of groups and entries
- Entry Management:
- View entry details (username, password, URL, notes)
- Create new entries and groups
- Edit existing entries
- Delete entries and groups
- Export Database: Export your database to CSV or XML format
- Database Information: View database metadata
- Clipboard Integration:
- Copy passwords to clipboard
- Copy all entry details
- Password Visibility: Toggle password visibility with Ctrl+S
- Keyboard Shortcuts: Full keyboard navigation support
For testing purposes there is a database file included in this project. The password is test. Do not use this file to store your passwords. Create a new one, using keepassxc-cli.
- Python 3.8 or higher
- KeePassXC installed with
keepassxc-cliin PATH - Linux, macOS, or Windows (with WSL for best experience)
# Ubuntu/Debian
sudo apt install keepassxc
# Fedora
sudo dnf install keepassxc
# Arch Linux
sudo pacman -S keepassxc
# macOS
brew install --cask keepassxcgit clone https://github.com/yourusername/clipass.git
cd clipass
pip install -r requirements.txt
pip install textual
sudo apt install xclip
sudo dnf install xclip
python clipass.py
python clipass.py -f /path/to/database.kdbx
python clipass.py -d /path/to/databases/
python clipass.py -d /path/to/databases/ -f database.kdbx
Option Description
-f, --file Database file to open directly
-d, --dir Directory where password databases are stored
Shortcut Action
Ctrl+Q Quit application
Esc Go back / Cancel
Shortcut Action
c Copy password to clipboard
Ctrl+S Toggle password visibility
Ctrl+E Edit selected entry
Ctrl+Q Quit
Shortcut Action
Ctrl+G Generate random password
Ctrl+Enter Save/Create entry
Esc Cancel
The main interface is split into two panels:
- Left Panel: Tree view showing all groups and entries
- Right Panel: Details of the selected entry
- Select a group/folder in the tree
- Click "New Entry" or press Ctrl+N
- Fill in the entry details: -Title (required) - Username - Password (required, can generate with Ctrl+G) - URL - Group path (auto-filled from selection) - Notes
- Click "Create" or press Ctrl+Enter
- Select an entry in the tree
- Click "Edit Entry" or press Ctrl+E
- Modify the fields as needed
- Click "Save" or press Ctrl+Enter
- CSV Export: Export to CSV format for spreadsheet applications
- XML Export: Export to XML format for further processing
Files are saved in the same directory as the database with the same name
Click "DB Info" to view:
- Database name and location
- Creation date
- Last modified date
- Number of entries
- Other metadata
"keepassxc-cli not found"
Ensure KeePassXC is installed and keepassxc-cli is in your PATH:
which keepassxc-cliClipboard not working on Linux
Install xclip:
sudo apt install xclip # Debian/Ubuntu
sudo dnf install xclip # FedoraExport fails
Ensure you have write permissions in the database directory:
ls -la /path/to/database.kdbxPassword not working
Verify the password using the command line:
keepassxc-cli ls /path/to/database.kdbxMIT License - see LICENSE file for details
** v1.0.0 (Current) **
- Initial release
- Basic database browsing and entry management
- Export to CSV/XML
- Clipboard integration
- Password visibility toggle
Built with ❤️ using Python and Textual



