dsh-db-tool

DSH PLUGIN记忆与知识

仓库 mengqi1436/dsh-db-tool · npm dsh-db-tool

记忆与知识 L5 · 运行验证通过 安全审查:中风险 可信度:银 可安装插件
安装这个插件

dsh-db-tool 是 DSH 插件,让你在聊天中安全操作 MySQL、PostgreSQL 等 8 种数据库,带项目级授权、危险操作确认、审计日志与侧边栏 SQL 控制台。

一句话选型结论

按资料字段整理

dsh-db-tool 是记忆与知识类的 DSH 可安装插件,验证等级 L5 · 运行验证通过,安全审查为中风险,列出 5 项功能,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类记忆与知识 收录类型可安装插件 验证等级L5 · 运行验证通过 安全审查中风险
验证等级 L5 L5 · 运行验证通过
GitHub 星标 4 复刻 2 · 未关闭 issue 未标注
最近更新 2026-10-09 创建于 2026-09-25
README 5.8 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add dsh-db-tool@1.7.2
  1. 1
    确认版本与运行环境

    兼容的 DSH 版本为 0.2.0-rc.1 等 2 个;版本不匹配时安装会报错。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本0.2.0-rc.1、0.1.7-rc.2版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名dsh-db-tool可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-db-tool:DeepSeek Harness 里安全操作数据库的管理台

  • 支持 8 种主流数据库
  • 项目级读写授权控制
  • 危险操作二次确认
  • 全量执行审计日志
  • 侧边栏 SQL 控制台

适用场景

数据库

上游标签

databasedshdsh-pluginmysqlpostgresql

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查中风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度银综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-05): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 MEDIUM
  • 结论说明 vet 判定为可疑(suspicious):存在需人工复核的发现(外联端点、删除文件等)。
  • 风险计数 严重 0 / 高 1 / 中 0
  • 风险详情 风险等级 规则 位置 描述 high R13 mongodb-driver.cjs:17013 硬编码外联端点:AWS 云元数据端点(IAM 凭据外泄面)

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L5:安装和运行都在沙盒里跑通过,装完能直接用的概率高。
  • 有可直接复制的安装命令,不用自己翻文档找入口。
  • 标注了兼容的 DSH 版本(0.2.0-rc.1 等 2 个),按版本装不容易报错。
  • 列出了 5 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 静态审查标为中风险,建议先看「风险详情」再决定。
  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在记忆与知识场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 对安全结论要求很严的人。
  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-db-tool当前 L5 · 运行验证通过 中风险 4 0.2.0-rc.1 等 2 个 有
ruflo L3 · 安装规范通过 低风险 7.4 万 未标注 无
OpenViking L3 · 安装规范通过 低风险 3.9 万 未标注 无
WeKnora L4 · 沙盒安装通过 低风险 3.3 万 未标注 有
distilly L4 · 沙盒安装通过 低风险 2.5 万 未标注 有
EverOS L4 · 沙盒安装通过 低风险 1.3 万 未标注 有

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方mengqi1436仓库 dsh-db-tool · 默认分支 未标注
分类记忆与知识knowledge
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言TypeScript仓库主语言
许可证NOASSERTION商用或二次分发前请确认条款原文
星标 / 复刻 / issue4 / 2 / 未标注收录时的数值,非实时
创建 / 更新2026-09-25 · 2026-10-09最后推送 未标注
本站收录2026-09-27首次进入本站目录的时间

README 全文

5.8 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-db-tool

English | 简体中文

DSH 社区插件:在聊天中安全操作数据库,配套侧边栏管理台与 db-admin skill。架构与交互模式对齐 dsh-ssh-tunnel。

功能

  • 8 种数据库:MySQL、PostgreSQL、GaussDB、SQLite、Redis、MongoDB、Oracle、达梦(DM)
  • DatabaseManager 单工具多 action:list_connections / query / execute / schema / preview / run_script(run_script 在 node:vm 沙箱中执行,60s 超时,仅注入受限 db.{query,execute} 句柄)
  • 分级权限:连接级只读(ro)/读写(rw)+ 项目级授权(grants.json:projectPathKey → 连接 → 模式);未授权项目一律拒绝
  • 危险操作确认:DDL / FLUSHALL / dropDatabase 等先返回 NEEDS_CONFIRMATION,对话内(模型经 ask)或 SQL 控制台(弹窗)确认后携一次性 challengeId(绑定语句 SHA256、5 分钟过期)重试
  • 审计:全部执行落 audit.jsonl(语句、危险级、是否确认、结果)
  • 侧边栏 4 面板(dsh-better-sidebar,zh/en):连接管理、项目授权、数据浏览、SQL 控制台
  • db-admin skill:随插件分发,覆盖 8 库方言速查、安全规范、确认流程

SQL 控制台

侧边栏 SQL 控制台面板已升级为 Navicat 式多标签编辑器(CodeMirror 6):

  • 多标签:新建/关闭/切换查询标签,每个标签独立保存 SQL、结果与历史(历史上限 50 条,可展开点击回填)
  • 语法高亮与补全:按方言切换——mysql→MySQL、postgresql/gaussdb→PostgreSQL、sqlite→SQLite、oracle/dmdb→PL/SQL;Redis/Mongo 为关键字/方法补全的纯文本编辑;表列元数据自动拉取注入补全(上限 50 表)。编辑器 bundle(vendor/codemirror-sql.cjs,npm run build:codemirror 生成,npm run build 自动串接)加载失败时静默降级 textarea
  • 快捷键:Ctrl/Cmd+Enter 执行全部,Ctrl/Cmd+Shift+Enter 执行选中
  • 格式化:sql-formatter 按方言格式化,解析失败回退原文
  • 逐条执行:客户端预分类读/写语句分别路由 /api/query 与 /api/execute,只读授权下写语句自动跳过并标注;出错可一键定位到对应语句起始处
  • 事务:rw 授权下可开始/提交/回滚(服务端粘性连接会话;空闲 5 分钟超时自动回滚并审计,授权回收/降级即时生效)
  • 结果网格:表头三态排序、50 行/页分页、单元格点击复制、CSV/JSON 导出

数据布局

$DSH_HOME/db-tool/(0700):

文件 内容
connections.json 连接定义(urlSafe 中密码脱敏为 ***)
secrets.json 0600,密码/URL 凭据,永不返回给模型
grants.json 项目授权(归一化路径 → connId → ro/rw)
audit.jsonl 追加式审计日志

安装

8 种数据库驱动全部随 npm 包分发(SQLite 优先用 Node 内置 node:sqlite,可选 better-sqlite3;GaussDB 驱动为华为云官方 npm 包 gaussdb-node),无需任何构建步骤。GaussDB 认证支持 sha256 与 md5,md5-sha256 混合与 SM3 暂不支持。

唯一的一次性交互来自 oracledb:其 install 脚本会被 pnpm 默认拦截并使首次安装报告失败——在 DSH 插件安装界面点 "Allow these scripts and retry" 即可完成安装(该脚本仅做 Node 版本检查与横幅打印,批准无风险;批准持久化到 profile,后续升级不再提示)。

# npm(推荐)
dsh plugin --profile web add dsh-db-tool

# GitHub 源码
dsh plugin --profile web add "dsh-db-tool@github:mengqi1436/dsh-db-tool"

# 本地开发
dsh plugin --profile web add "link:E:\path\to\dsh-db-tool"

桌面端安装

DSH 桌面端 0.2.0-rc.2+ 捆绑了 dsh 命令,全程无需另装 Node 或 pnpm:

  1. 首次使用:打开桌面端菜单栏,点 "Manage dsh command"(管理 dsh 命令),安装捆绑的 CLI——该操作把 dsh 命令注册到系统 PATH。
  2. 安装插件(必须钉精确版本:@latest 会因 release-age 校验回落到旧版):
dsh plugin --profile desktop add dsh-db-tool@1.4.0 --registry=https://registry.npmjs.org/

已有 npm 镜像源偏好的用户,可把 --registry 替换为自己的镜像地址。
3. 重启桌面端生效。

mongodb 驱动已 bundle 进发布包(vendor/mongodb-driver.cjs),依赖树不含 mongodb/punycode——桌面端宿主打包在 app.asar 内、无法应用宿主补丁,本插件免补丁可直接安装加载。

测试

npm test        # 离线 mock 全量(含 e2e-mock 全链路与对抗用例)
npx tsc --noEmit
npx stryker run # 变异测试(范围 lib/guard + lib/manager + lib/store,报告 reports/mutation/)

真机冒烟(设了才跑):DBT_TEST_MYSQL_URL / DBT_TEST_PG_URL / DBT_TEST_REDIS_URL / DBT_TEST_DM_CONNECT / DBT_TEST_MONGO_URL / DBT_TEST_ORACLE_CONNECT。GaussDB 与 Oracle/Mongo 官方要求均按官方文档实现,未真机验证处以代码内标注为准。

目录结构

lib/        host 插件(store / adapters×8 / guard / manager / http / index)
client/     侧边栏单文件产物(client.js,即源码)
skills/     db-admin skill
scripts/    构建与工具脚本(mongodb 驱动 / CodeMirror 编辑器 bundle、DSH 宿主热修复 patch:dsh 等)
patches/    DSH 宿主 dsh-app-boot 热修复补丁(patch:dsh 按宿主版本选用)
docs/       预留(当前为空)
tests/      vitest(离线 mock + DBT_TEST_* 门控真机)
vendor/     mongodb-driver.cjs 与 codemirror-sql.cjs bundle(gitignore,发布经 files 白名单收录)

许可证

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-db-tool 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add dsh-db-tool@1.7.2` 即可。对应的 npm 包名是 `dsh-db-tool`。

dsh-db-tool 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-db-tool 安全吗?

中风险。vet 判定为可疑(suspicious):存在需人工复核的发现(外联端点、删除文件等)。

dsh-db-tool 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-db-tool 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.1、0.1.7-rc.2。

dsh-db-tool 用的是什么许可证?

上游标注为 NOASSERTION。商用或二次分发前请到仓库确认许可证原文。

dsh-db-tool 有哪些功能?

支持 8 种主流数据库、项目级读写授权控制、危险操作二次确认、全量执行审计日志、侧边栏 SQL 控制台。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

mengqi1436 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-05。