RBW(1)

πŸ“¦
version 1.15.0 Β· 2 versions
, in ubuntu stonking

okay bestie, you just pulled up RBW(1) β€” that's rbw, section 1, General Commands Manual πŸŽ€ grab a snack, this is gonna be good.

πŸ’– NAME πŸ’–

rbw β€” the unofficial command line client for Bitwarden ✨

Like. it's Bitwarden. but in your terminal. no browser, no extension, just vibes πŸ’…

✨ SYNOPSIS ✨

rbw command [options]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so rbw is an unofficial command line client for Bitwarden πŸ—οΈ and the way it works is genuinely iconic: it runs a background agent (rbw-agent) that just... keeps your decrypted vault chilling in memory πŸ‘‘

which means?? you do not have to type your master password for every single operation. no cap. it's the same energy as ssh-agent(1) or gpg-agent(1), if you know those besties β€” and if you don't, you're about to, iykyk 🫢

🌸 COMMANDS 🌸

🧚 Account Management

  • register β€” register this device with the Bitwarden server πŸ“± when you're on the official Bitwarden server, you need to do this before your first login, otherwise the bot detection gets suspicious of you 😭 (rude). use your personal API key credentials.
  • login β€” log in to the Bitwarden server πŸ‘‹
  • unlock β€” unlock the local Bitwarden database πŸ”“
  • unlocked β€” check whether the local Bitwarden database is currently unlocked right now, at this very moment πŸ‘€
  • lock β€” lock the password database πŸ”’ (self care, honestly)
  • sync β€” update the local copy of the Bitwarden database from the server πŸ”„
  • purge β€” remove the local copy of the password database πŸ—‘οΈ it's giving "we're done here"
  • stop-agent β€” terminate the background agent πŸ’€ bye bestie

πŸ‘€ Viewing Entries

  • list [--fields fields] β€” list every entry in the local Bitwarden database πŸ“‹ --fields takes a comma-separated list of id, name, user, folder, type. default is name. alias: ls ✨
  • get name [user] β€” display the password for the given entry πŸ”‘ [--field field] prints a specific field instead of the password; [--full] also prints the notes πŸ“ alias: show
  • search term β€” search for entries whose name, username, or URI matches term πŸ”
  • code name [user] β€” display the current TOTP authenticator code for the given entry ⏱️ alias: totp
  • history name [user] β€” view the password history for the given entry πŸ•°οΈ the lore

✏️ Modifying Entries

  • add name [user] β€” add a new password entry βž• it opens $VISUAL or $EDITOR so you can type in the password and the notes. the first line gets saved as the password; everything after that becomes the notes ✍️
  • generate len [name [user]] β€” generate a fresh random password of length len 🎲 if you give it a name, it saves that password to the database too. [--no-symbols] generates without special characters, [--only-numbers] generates a numeric password, [--nonconfusables] avoids visually similar characters, and [--diceware] generates a passphrase of len words from the EFF word list πŸ“– alias: gen
  • edit name [user] β€” modify an existing entry πŸ› οΈ opens $VISUAL or $EDITOR with the current password and notes loaded up
  • remove name [user] β€” remove an entry from the database ❌ alias: rm

βš™οΈ Configuration

  • config show β€” display all your current configuration settings πŸ–₯️ the whole situation
  • config set key value β€” set a configuration option πŸŽ›οΈ valid keys are:
    • email β€” Bitwarden account email address πŸ“§
    • base_url β€” base URL for a self-hosted Bitwarden server 🏠
    • identity_url β€” identity service URL (overrides base_url) πŸͺͺ
    • ui_url β€” web vault UI URL (overrides base_url) 🌐
    • notifications_url β€” notifications service URL (overrides base_url) πŸ””
    • lock_timeout β€” seconds of inactivity before the agent locks the vault. default: 3600 ⏳
    • sync_interval β€” seconds between automatic syncs. default: 3600. set it to 0 to disable πŸ”
    • pinentry β€” pinentry program to use for password prompts. default: pinentry πŸ”
    • client_cert_path β€” path to a PEM client certificate for mutual TLS πŸ“œ

🐚 Shell Completions

  • gen-completions shell β€” print a shell completion script to stdout πŸ–¨οΈ supported shells: bash, zsh, fish, powershell, elvish, nushell, fig 🐟 lowkey such a serve

🌈 ENVIRONMENT 🌈

  • VISUAL, EDITOR β€” the editor used by the add and edit commands ✍️
  • RBW_AGENT β€” path to a custom rbw-agent(1) binary πŸ› οΈ

πŸ“ FILES πŸ“

  • $XDG_CONFIG_HOME/rbw/config.json β€” the configuration file πŸ“„ defaults to ~/.config/rbw/config.json
  • $XDG_DATA_HOME/rbw/ β€” vault data and device identifier πŸ—„οΈ defaults to ~/.local/share/rbw/
  • $XDG_RUNTIME_DIR/rbw/ β€” agent socket and PID file πŸ”Œ

πŸ’œ EXAMPLES πŸ’œ

log in and unlock the vault:

$ rbw login
$ rbw unlock

list all entries:

$ rbw list

get the password for an entry:

$ rbw get github.com

get the password for a specific user:

$ rbw get github.com myuser

add a new entry:

$ rbw add github.com myuser

generate and store a 20-character password:

$ rbw generate 20 github.com myuser

get a TOTP code:

$ rbw code github.com

use a self-hosted server:

$ rbw config set base_url https://bitwarden.example.com

πŸ”₯ SEE ALSO πŸ”₯

rbw-agent(1), pinentry(1), gpg-agent(1), ssh-agent(1) β€” go read those too, they're the supporting cast 🫢

πŸ‘‘ AUTHORS πŸ‘‘

rbw was written by Jesse Luehrs <doy@tozt.net> πŸ’–

this manual page was written by Nadzeya Hutsko <nadzya.info@gmail.com> πŸ’–


and that's the whole thing bestie, you ate that πŸŽ€ this page came to you straight from Debian, dated April 16, 2026 β€” go forth and manage your passwords, main character πŸ’…βœ¨

πŸ“¦ where this page comes from