Install
openclaw skills install @voronindenis5/password-manager-migratorUse when moving between password managers (Bitwarden/1Password/Keepass/Apple/Chrome/Proton), merging vaults, or auditing one — builds a safe migration plan (export format matrix, dedupe/merge precedence rules, TOTP and attachment traps, 2FA-site re-enrollment list), generates the field-mapping worksheet, and runs a post-migration audit for duplicates, weak leftovers, and reused entries. Never touches actual secrets — works from counts and metadata you paste.
openclaw skills install @voronindenis5/password-manager-migratorMigrating password managers is one of the highest-stakes household data moves: do it wrong and you lose TOTP seeds, attachments, and folder structure — or silently drop accounts you won't notice for a year. The export formats don't map 1:1 (Bitwarden JSON has folders + TOTP; KeePass has groups + icons + history; Chrome CSV loses both), and every path has specific traps.
This skill builds the migration plan, never touching your secrets: it works from metadata (counts, formats) and produces checklists, worksheets, and the audit logic.
Don't use for: live secret values — nothing here ever needs your actual passwords. If a tool asks for them outside the manager itself, stop.
plan — from → to: the best route (native import > JSON > CSV),
what transfers and what's LOST per hop, ordered steps with checkpoints,
rollback point (keep the old vault read-only for 30 days).worksheet — the field-mapping CSV template + precedence rules for
duplicates (newer modified-date wins; conflicts flagged for manual
review, never auto-merged silently).totp — TOTP inventory + re-enrollment list: which sites' 2FA won't
survive and must be re-enrolled BEFORE deleting anything.audit — paste counts (pre/post item counts per type, duplicates
found, weak flags) → verification verdict + residual-risk list.# Bitwarden -> 1Password
python3 scripts/vault_migrate.py plan --from bitwarden --to 1password
# Merge two Bitwarden vaults (couple merge)
python3 scripts/vault_migrate.py plan --from bitwarden --to bitwarden --merge
# The TOTP trap list for Chrome CSV hop
python3 scripts/vault_migrate.py totp --via csv
# Post-migration numbers check
python3 scripts/vault_migrate.py audit --pre-logins 412 --post-logins 398 \
--pre-notes 55 --post-notes 55 --pre-cards 9 --post-cards 9 \
--duplicates 41 --weak-left 23
# Field mapping worksheet (CSV) for the hop
python3 scripts/vault_migrate.py worksheet --from keepass --to bitwarden
Stdlib-only Python 3. Offline. Zero network. Zero secrets.
| From → To | Best route | Survives | LOST |
|---|---|---|---|
| Bitwarden → 1Password | 1P native Bitwarden importer | logins, notes, cards, TOTP | folders→tags (approx), attachments (manual) |
| 1Password → Bitwarden | BW native 1P importer (or 1PIUX→enc JSON) | logins, notes, TOTP | tags, attachments, document count check |
| KeePass → Bitwarden | BW native KP importer | logins, notes, TOTP (otp field), groups→folders | icons, entry history, auto-type |
| Any → Chrome | CSV only | URL/user/pass | TOTP, folders, notes attachments, card CVV |
| Chrome → Bitwarden | BW native Chrome importer | logins | passwords saved after last export |
| Proton ↔ Bitwarden | Proton importer / BW importer | logins, notes | Proton aliases need email-forward check |
audit run with pre/post counts — deltas explainedreferences/route-matrix.md — full per-hop details, per-manager export
menu paths, importer quirks, encrypted-export optionsreferences/audit-worksheet.md — the dedupe precedence rules, TOTP
re-enrollment protocol, merge conflict workflow, 30-day cutover plan