OpenClaw Bitwarden 技能指南
通过 Bitwarden/Vaultwarden CLI 和 API 安全读取密钥。
最后更新: 2026-03-11
快速安装
$ npx clawhub@latest install bitwarden核心功能
OpenClaw Bitwarden 技能概述
Bitwarden 技能通过官方 Bitwarden CLI(bw)将 OpenClaw 连接到你的 Bitwarden 或 Vaultwarden 密码库。安装后,你的 OpenClaw 代理可以按需检索密码、API 密钥、服务令牌和其他密钥——使用自然语言而不是在密码库 UI 中导航。
该技能非常适合将服务凭证存储在 Bitwarden 中的自托管团队和开发者,他们需要在开发工作流中快速、编程式地访问密钥。无论你是部署到预发布服务器、配置新服务还是轮换 API 密钥,Bitwarden 技能都能消除终端和密码管理器之间的上下文切换。
OpenClaw Bitwarden 技能将安全视为首要关注点。会话令牌默认短期有效,密码库内容永不缓存到磁盘,每次检索都有日志记录,确保完整的审计追踪。
典型工作流:
- 向 OpenClaw 请求特定凭证(如"获取预发布数据库密码")。
- 代理使用你的 Bitwarden 密码库进行认证并搜索对应项。
- 密钥直接在你的会话中返回——无需切换浏览器或应用。
Bitwarden 技能安装前的准备
在安装 Bitwarden 技能之前,请确保你已具备:
- OpenClaw 已安装并运行(v1.0+)
- Bitwarden CLI(
bw) 已安装 — 官方安装指南 - Bitwarden 账号(云端或自托管 Vaultwarden 实例)
- clawhub CLI 已安装,用于技能管理
验证你的环境:
# 检查 OpenClaw 版本 openclaw --version # 检查 Bitwarden CLI 版本 bw --version # 检查登录状态 bw status
自托管 Vaultwarden 用户需先配置服务器 URL:
bw config server https://vault.yourdomain.com
如何安装 Bitwarden 技能
使用一条命令安装 Bitwarden 技能:
npx clawhub@latest install bitwarden
验证安装:
clawhub list
你应该能在已安装技能列表中看到 bitwarden。
Bitwarden 技能配置指南
Bitwarden 技能需要与你的密码库进行认证。根据使用场景有两种方式。
交互式登录
用于个人开发场景,交互式登录:
# 登录 Bitwarden 云端 bw login # 或登录自托管 Vaultwarden 实例 bw login --sso
登录后,解锁密码库以创建会话:
export BW_SESSION=$(bw unlock --raw)
API 密钥认证
用于自动化工作流和 CI/CD 流水线,使用 API 密钥认证:
export BW_CLIENTID=your_client_id export BW_CLIENTSECRET=your_client_secret bw login --apikey export BW_SESSION=$(bw unlock --raw)
在 vault.bitwarden.com/#/settings/security/security-keys 生成你的 API 密钥。
环境变量
| 变量 | 是否必需 | 用途 |
|------|---------|------|
| BW_SESSION | 是 | 密码库访问的活跃会话令牌 |
| BW_CLIENTID | API 认证需要 | Bitwarden API 客户端 ID |
| BW_CLIENTSECRET | API 认证需要 | Bitwarden API 客户端密钥 |
重要提示: 永远不要在配置文件中硬编码会话令牌或 API 凭证。使用环境变量并保持会话短期有效。不使用时通过 bw lock 锁定密码库。
Bitwarden 技能使用示例
1. 检索特定密钥
你:"从我的 Bitwarden 密码库中获取 AWS 访问密钥。"
代理在你的密码库中搜索匹配"AWS access key"的项目,检索凭证并返回用户名和密码字段。如果存在多个匹配项,它会展示列表供你选择。
2. 生成安全密码
你:"生成一个 32 位包含特殊字符的密码,并保存为 DevOps 文件夹中的'New API Token'。"
代理使用 bw generate 创建一个加密安全的密码,然后在指定文件夹中创建新的密码库项目。
bw generate --length 32 --special --uppercase --lowercase --number
3. 搜索并列出密码库项目
你:"列出'Production'集合中的所有凭证。"
代理按集合名称查询你的密码库,返回所有项目的摘要——显示名称、用户名和最后修改日期,除非你明确要求,否则不会暴露实际密码。
4. 获取 TOTP 代码
你:"获取我 GitHub 账户的双重认证代码。"
代理从你的密码库中检索 TOTP 种子,使用 bw get totp github 生成当前的 6 位代码。当你需要 MFA 代码但不想切换到手机认证器应用时非常有用。
安全与最佳实践
Bitwarden 技能访问你最敏感的凭证。请严格遵循以下指南:
- 保持会话短期有效。 检索密钥后立即使用
bw lock锁定密码库。避免让BW_SESSION长时间保持活跃。 - 永远不要导出整个密码库。 该技能按需检索单个项目。避免使用
bw export等导出所有凭证的命令。 - 使用集合进行访问控制。 将密钥组织到集合中,并限制代理可以访问的集合。这遵循最小权限原则。
- 启用双重认证。 使用 TOTP、FIDO2 或硬件密钥认证保护你的 Bitwarden 账户。
- 审查访问日志。 定期查看 Bitwarden 事件日志,追踪哪些项目被访问以及何时被访问。
- 自动化场景优先使用 Bitwarden Secrets Manager。 对于生产环境的 CI/CD 工作流,考虑使用 Bitwarden Secrets Manager,它提供机器身份访问令牌而非用户凭证。
要进行更广泛的密钥扫描和泄露预防,可将此技能与 ggshield Scanner 搭配使用,以检测意外提交的密钥。
常见错误与故障排除
"Vault is locked"
你的会话已过期或从未启动。
# 解锁密码库并导出会话令牌 export BW_SESSION=$(bw unlock --raw)
如果你根本没有登录,请先运行 bw login。
"Not logged in"
你需要在解锁之前先进行认证:
# 登录 Bitwarden bw login your@email.com # 然后解锁 export BW_SESSION=$(bw unlock --raw)
"No items found matching the search term"
搜索查询没有匹配到任何密码库项目。尝试:
- 使用更宽泛的搜索词
- 在密码库 UI 中检查项目名称
- 使用
bw sync同步密码库以获取最新更改
你:"搜索任何字段中包含'database'的项目。"
常见问题
当负责任地使用时是安全的。该技能按需检索单个密钥,不会缓存或写入磁盘。会话令牌默认短期有效,你可以在检索后立即锁定密码库。对于生产环境,我们建议使用 [Bitwarden Secrets Manager](https://bitwarden.com/products/secrets-manager/) 的机器身份令牌而非个人密码库访问。在将任何密钥管理器连接到 AI 代理之前,请务必查看[安全检查清单](/skills#safety)。
支持。Bitwarden CLI 完全兼容 [Vaultwarden](https://github.com/dani-garcia/vaultwarden)(前身为 bitwarden_rs)。登录前使用 `bw config server https://vault.yourdomain.com` 配置你的服务器 URL。所有技能功能——搜索、检索、生成、TOTP——在 Vaultwarden 上的工作方式完全相同。对于使用自托管基础设施的团队,可以将此技能与 [1Password 技能](/skills/1password) 作为替代方案搭配使用。
两个技能都通过各自的 CLI 提供密钥管理。Bitwarden 技能使用 `bw` CLI,支持 Bitwarden 云端和自托管 Vaultwarden 实例,非常适合偏好开源、自托管基础设施的团队。[1Password 技能](/skills/1password) 使用 `op` CLI,与 1Password 的服务账户有更深度的集成。请根据你的团队已经使用的密码管理器来选择。