SuperAPI AI 工具集

exploring-bitwarden-data

数据与分析

查看项目

更新于 10-16 05:48

技能介绍

用途:对本地 Bitwarden 开发数据库进行只读探索,用于回答业务问题、验证种子数据(fixtures)以及内省数据库结构。

主要能力:数据库登录在服务端即为只读,任何写操作都会失败;允许 SELECT、WITH(CTE)以及 INFORMATION_SCHEMA / sys.* 内省。支持三种开发提供方:MSSQL(默认,环境变量前缀 BW_MSSQL_,CLI 为 sqlcmd)、MySQL(BW_MYSQL_,mysql)、PostgreSQL(BW_POSTGRES_*,psql),使用前需阅读对应 provider 参考文档。

使用方式:第一个参数选择提供方(mssql 默认、mysql 或 postgresql)。密码需在命令内联设置,例如 SQLCMDPASSWORD="$BW_MSSQL_PASSWORD" sqlcmd ...,禁止 echo、log、cat、printenv 或 hexdump 任何密码环境变量,也不要 export。结果展示上,少于 20 行用 markdown 表格,较大结果集用 top-N 加计数,并回显所执行的 SQL,展示前去掉 CLI 页脚(如 (N rows affected)、Query OK)。使用 heredoc 时须用单引号标签(<<'SQL'),否则 bash 会先展开 SQL 中的 $,破坏列引用。

结构来源:仓库是 schema 的权威来源,不要凭通用印象编写 SQL。表与列见 src/Sql/dbo/ 下的 SSDT schema,或通过 references/schema-discovery-queries.md 实时内省;枚举整数值与生命周期语义见 C# 枚举源码;访问控制逻辑优先使用规范函数,如 [dbo].UserCipherDetails、[dbo].UserCollectionDetails。references/sources.md 将概念映射到源文件。

关键语义:活跃成员为 OrganizationUser.Status = 2(Confirmed),但“活跃”存在歧义,需说明采用哪种定义;归档状态存于 Cipher.Archives 的按用户 JSON(键为大写用户 GUID),而非 ArchivedDate 列;Organization.Enabled = 1 才是活跃标志,Status 是提供方管理生命周期,Plan 为展示字符串,聚合与过滤应使用 PlanType。

限制:仅限本地开发数据库的只读访问;不提供 schema 清单,需自行查阅仓库或内省;未提供具体安装命令、收费或平台信息。