Export Bitwarden vault
Project description
Bitwarden Exporter
Python Wrapper for Password Manager CLI for exporting bitwarden vaults to KeePass.
Features
- Comprehensive data mapping
- Credentials
- URIs (Compatible with keepass URL)
- Notes (Compatible with keepass note)
- TOTP codes (Compatible with keepass totp)
- Custom Fields (Compatible with additional attributes)
- Identity/Cards (Backup only, not supported by Keepass yet)
- Attachments (Compatible with keepass attachment)
- SSH keys (Compatible with keepass ssh and attachments)
- Fido U2F Keys (Backup only, not supported by Keepass yet)
- Preserves vault structure
- Collection and Folder hierarchy is preserved as Keepass groups.
- Built-in JSON snapshot of vault data for auditing.
- Configurable CLI with options for duplicates handling, custom temp directory, debug logging, and Bitwarden CLI path.
Bitwarden Web
Structure TOTP
Prerequisites
Installation
(Recommended) Run with uvx from PyPI
BW_SESSION=<session token> uvx bitwarden-exporter==VERSION --help
or
BW_SESSION=<session token> uvx bitwarden-exporter --help
Run it from source
BW_SESSION=<session token> uvx git+https://github.com/arpanrec/bitwarden-exporter.git@main bitwarden-exporter --help
BW_SESSION=<session token> pipx install bitwarden-exporter
Options
Run bitwarden-exporter --help to see all available options.
Required Options
--export-password, -p
Required - Password for the exported KeePass database.
You can provide the password in multiple ways:
- Direct value:
--export-password "my-secret-password" - From file:
--export-password file:secret.txt - From environment:
--export-password env:SECRET_PASSWORD - From vault (JMESPath expression):
--export-password "jmespath:[?id=='xx-xx-xx-xxx-xxx'].fields[] | [?name=='export-password'].value"
Optional Configuration
--export-location, -l
Path for the exported KeePass database file.
- Default:
bitwarden_dump_<timestamp>.kdbx - Note: If the file exists, it will be overwritten.
--allow-duplicates, -d
Allow duplicate entries in the export. Since Bitwarden items can belong to multiple collections, this option controls whether to create duplicate entries in KeePass.
- Default:
--no-allow-duplicates
--tmp-dir, -t
Custom temporary directory for storing temporary sensitive files during export.
- Default: System temporary directory
- ⚠️ Security Note: Make sure to delete this directory after export.
--bw-executable, -e
Path to the Bitwarden CLI executable.
- Default:
bw(from system PATH)
--version
Show the version and exit.
--debug
Enable verbose logging for troubleshooting.
- Default:
--no-debug - ⚠️ Warning: Debug logs may contain sensitive information. When enabled, the temporary directory will NOT be automatically deleted.
Credits
@ckabalan for bitwarden-attachment-exporter
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bitwarden_exporter-1.8.1.tar.gz.
File metadata
- Download URL: bitwarden_exporter-1.8.1.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f037518ec4fc257b23c7d9e7a242b76fc67b41d372c4f2b804b04e40461e8c92
|
|
| MD5 |
a31d16bf4b18a2a8711cc74b22a355bd
|
|
| BLAKE2b-256 |
2dad59be81070d1d265017f9365b3a0017bdb534f9e1c9b70a5885399cb060c6
|
File details
Details for the file bitwarden_exporter-1.8.1-py3-none-any.whl.
File metadata
- Download URL: bitwarden_exporter-1.8.1-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e315683aba65a67ede3bf8bb56a05444760cbc5e8801ee408948db667eb5e40
|
|
| MD5 |
6e630d879f7f7727d85d63792b8ac74d
|
|
| BLAKE2b-256 |
41569f4a57c6d16fcac48794e70220de3eb0fa0d97c04655b047a1f75b83ab51
|