F
dsh-db-browser
fengb3/dsh-db-browser
dsh 数据库浏览插件:会话顶部「数据库」视图 Tab,多连接管理、点表分页浏览,只读多层防护,驱动注册表架构目标支持尽可能多的数据库,dsh plugin add 一条命令安装
설치
dsh plugin --profile web add github:fengb3/dsh-db-browserREADME
dsh-db-browser
DSH(DeepSeek Harness) 的只读数据库浏览器插件:在会话顶部增加一个「数据库」视图 Tab,与 聊天/轨迹 并排,直接浏览数据库数据,零构建、纯主题 token 样式。
功能
- 顶部视图 Tab:「数据库」页内嵌在会话视图区,不弹窗、不占侧栏。
- 多驱动:驱动注册表架构,新数据库引擎即插即用,目标支持尽可能多的数据库。
- 连接管理:添加 / 编辑 / 删除 / 刷新;每个连接是可折叠下拉项,展开即列出表和视图。
- 测试连接:探测成功转圈 → 绿 ✓(显示服务器版本/库名或文件大小),失败红 ✕(悬停看原因)。
- 浏览表数据:点表即分页浏览(每页 50 行,上一页/下一页在顶部工具栏),行数统计自动 COUNT。
- 主题适配:全部颜色/字体走
--dsw-alias-*主题 token,暗色/亮色自动跟随,无硬编码颜色。 - 安全模型:只读多层防护——驱动级只读打开/会话只读、语句白名单、SELECT/WITH 强制包一层 LIMIT/OFFSET(单页 ≤ 500 行)、分页参数数字化、标识符转义、单元格序列化截断。
连接
文件型数据库填绝对文件路径(~ 开头会展开);服务型数据库填 URI 或 键=值; 风格连接串(自动转换,密码自动编码),侧栏展示时密码隐藏为 ***。
安装
一行命令(推荐)
dsh plugin --profile web add dsh-db-browser
# 或从 GitHub 安装:dsh plugin --profile web add github:fengb3/dsh-db-browser
重启 dsh web,会话顶部即出现「数据库」Tab。需装有 pnpm;非默认 profile 换掉 --profile 名字即可。
让 DSH agent 代装
把下面整段文本复制,粘贴给你正在使用的 DSH agent,它会替你完成安装:
请帮我安装 DSH 插件 dsh-db-browser(只读数据库浏览器,装好后会话顶部会多一个「数据库」Tab,与 聊天/轨迹 并排):
1. 执行:dsh plugin --profile web add dsh-db-browser(若我明确说了用别的 profile,把 web 换成对应名字;执行失败的完整报错原样发给我,不要自行重试超过一次;失败时可改用 dsh plugin --profile web add github:fengb3/dsh-db-browser 再试一次)。
2. 完成后告诉我需要手动重启 dsh web 才生效(你自己不要尝试重启 dsh web,那会终止你所在的会话)。重启后会话顶部应出现「数据库」Tab;若启动报错,把 dsh web 的错误日志发给我排查。
卸载
dsh plugin --profile web remove dsh-db-browser
重启 dsh web。连接清单保存在 $DSH_HOME/db-browser/connections.json,删除该目录即彻底清除。
结构
index.js host 半:dbBrowser Typert Remote 服务(连接存储、驱动、查询守卫)
client.js 浏览器半:conversation.view Tab + 连接/表/结果 UI(loader 格式,零构建)
cordis.patch.yml bundle 声明:`dsh plugin add` 据此自动登记为 profile 层
package.json dsh.bundle.patch + dsh.client.inject 声明
扩展新驱动
host 半在 DRIVERS / ALLOWED_STATEMENTS 登记类型与白名单,实现 probe / tables / columns / query;client 半在 DRIVERS 登记 label、占位符、提示与标识符引用符。
License
MIT