bitwarden

Retrieves API keys, passwords, secrets from Bitwarden vault using bw CLI. Triggers on missing env variables, missing API keys, missing secrets, "secret not found", "env not set", or "use bw".

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "bitwarden" with this command: npx skills add sebastiaanwouters/dotagents/sebastiaanwouters-dotagents-bitwarden

Bitwarden CLI

Retrieve secrets when environment variables are missing.

CRITICAL: Source .env Before EVERY bw Command

EVERY bw command MUST be prefixed with sourcing .env to load BW_SESSION:

# Standard prefix for ALL bw commands - copy this pattern exactly:
source .env 2>/dev/null; bw <command>

Example commands:

source .env 2>/dev/null; bw status
source .env 2>/dev/null; bw list items --search "telegram"
source .env 2>/dev/null; bw get password "item-name"
source .env 2>/dev/null; bw get notes "item-name"

If .env is in a parent directory, search up:

for dir in . .. ../.. ../../..; do [[ -f "$dir/.env" ]] && source "$dir/.env" && break; done; bw status

Session Management

Check status (should show "unlocked" if BW_SESSION is valid):

source .env 2>/dev/null; bw status

If locked and BW_SESSION not in .env, unlock and save to .env:

echo "BW_SESSION=$(bw unlock --raw)" >> .env

Finding API Keys

API keys are often stored in notes - either in a login item's notes field or as a standalone secure note.

  1. Search first to find the right item:

    bw list items --search "openai"
    
  2. Check notes - API keys are commonly here:

    bw get notes "item-name"
    
  3. Check custom fields if not in notes:

    bw get item "item-name" | jq -r '.fields[] | select(.name=="API_KEY") | .value'
    

Common Patterns

NeedCommand
Search itemsbw list items --search "query"
Notes (API keys!)bw get notes "name"
Passwordbw get password "name"
Usernamebw get username "name"
TOTPbw get totp "name"
Custom fieldbw get item "name" | jq -r '.fields[] | select(.name=="FIELD") | .value'

CLI Help

bw [options] [command]

Commands:
  login [email] [password]    Log into account
  unlock [password]           Unlock vault, returns session key
  lock                        Lock vault
  status                      Show vault status
  list <object>               List objects (items, folders, collections)
  get <object> <id>           Get object (item, username, password, totp, notes)
  sync                        Pull latest vault data

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

simplify-code

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

svelte-code-writer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-review

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

skill-from-github

No summary provided by upstream source.

Repository SourceNeeds Review