🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

数据库工作台 alingalingling/dsh-data-workbench

DeepSeek Harness
alingalingling81 天前有提交已提供中文文档扫描:含敏感能力

让dsh帮你管理、查找、编辑数据,装上真正的数据库能力:对真实数据库执行的 SQL全部用自然语言对话完成

33.4/100
综合分
12
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/27 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add alingalingling/dsh-data-workbench
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · tool
装得上吗
静态安装检查有提示项,装前建议看一眼 README
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-db-workbench(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/20 14:12:39

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 3 处,展示前 3 条)
  • 读取本地文件
    src/core.ts:197
    const raw = await readFile(path, 'utf8')
  • 写入本地文件
    src/core.ts:229
    await writeFile(path, content, 'utf8')
  • 读取本地文件
    src/core.ts:255
    const raw = await readFile(path, 'utf8')
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/schemastery@deepseek-ai/dsh-settings@deepseek-ai/dsh-typert-protocol@deepseek-ai/dsh-tools@deepseek-ai/dsh-llm@deepseek-ai/dsh-scope@deepseek-ai/dsh-session@deepseek-ai/dsh-timeout
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 自然语言执行SQL
  • 管理数据库数据
  • 查找与编辑数据

README

由 DeepSeek 最新模型翻译生成
dsh-db-workbench(数据库工作台) 给你的 DeepSeek Harness 智能体装上真正的数据库能力:把自然语言问题变成对真实数据库执行的 SQL —— 带 schema 内省、受护栏的写入、EXPLAIN、以及 CSV/JSON 导入导出。 - SQLite 开箱即用 —— 零依赖,基于 Node 内置的 node:sqlite。 - PostgreSQL 与 MySQL 惰性加载、可选(pg / mysql2)。 - 优美的 Web 工作台 —— 聊天旁的一个「数据库」标签页(外加设置里的全屏「Database」页面):schema 树、SQL 编辑器、结果网格、查询历史。 - 默认安全 —— 连接默认只读(除非你显式开启写),危险语句被拒绝,并把「先看 schema 再写 SQL」的工作流教给模型。
展开完整文档(README 剩余 1 节)
dsh-db-workbench(数据库工作台)

给你的 DeepSeek Harness 智能体装上真正的数据库能力:把自然语言问题变成对真实数据库执行的 SQL —— 带 schema 内省、受护栏的写入、EXPLAIN、以及 CSV/JSON 导入导出。

- SQLite 开箱即用 —— 零依赖,基于 Node 内置的 node:sqlite。
- PostgreSQL 与 MySQL 惰性加载、可选(pg / mysql2)。
- 优美的 Web 工作台 —— 聊天旁的一个「数据库」标签页(外加设置里的全屏「Database」页面):schema 树、SQL 编辑器、结果网格、查询历史。
- 默认安全 —— 连接默认只读(除非你显式开启写),危险语句被拒绝,并把「先看 schema 再写 SQL」的工作流教给模型。

安装

用预构建的 tarball(推荐,内含编译好的 lib/)
dsh plugin --profile web add ./dsh-db-workbench-0.2.3.tgz

从 npm(发布后可用)
dsh plugin --profile web add dsh-db-workbench

卸载:

dsh plugin --profile web remove dsh-db-workbench

dsh plugin add 会把参数转发给 profile 目录里的 pnpm,然后自动激活插件的 bundle 层。

快速上手

1. 安装插件并打开 DSH Web 界面。
2. 在会话里直接让智能体搭一个内存 SQLite 数据库:

创建一个名为 analytics 的 SQLite 数据库连接,然后建一张 orders 表(id、customer、amount 三列)并插入几行数据。

3. 智能体会自动调用 db_connection_add、db_execute、db_query。你也可以在 $DSH_HOME/settings.yaml 里手写连接配置(见下)。

工具

| 工具 | 用途 | 读 / 写 |
| db_connections | 列出已配置的连接及其状态 | 读 |
| db_connection_add | 新增或更新连接配置 | 配置 |
| db_connection_remove | 删除连接(并关闭) | 配置 |
| db_test_connection | 连接健康检查(SELECT 1) | 读 |
| db_schema | 列出表,或描述某张表(列/索引/外键) | 读 |
| db_query | 执行只读 SQL(SELECT / WITH / PRAGMA / EXPLAIN) | 读 |
| db_browse | 快速浏览表数据(SELECT * LIMIT/OFFSET) | 读 |
| db_execute | 执行写入/DDL SQL,带事务与护栏 | 写 |
| db_plan | 查看查询计划(EXPLAIN QUERY PLAN / EXPLAIN) | 读 |
| db_import | 把 CSV/JSON 文件导入表(自动推断类型并建表) | 写 |
| db_import_database | 导入整个数据库:.db/.sqlite 文件(注册为连接)或 .sql 转储(执行) | 写 |
| db_export | 执行查询并把结果写成 CSV/JSON 文件 | 读 + 文件 |
| db_history | 回看本会话最近的查询与写入 | 读 |

Web 工作台

安装后,工作台会出现在两个位置,两者共享同一个 host 领域(在一处新增的连接,另一处立刻可见,模型也可用):

- 会话标签页 —— 会话顶部的「聊天」标签旁,会多一个 「数据库」标签,让你在对话的同时就能跑 SQL、看表结构,无需离开会话。这是日常使用的主入口。
- 设置页 —— 打开 DSH Web 设置(左下角齿轮图标),选择 Database 页面,可得到同一工作台的全屏版本。

功能:

- 连接管理 —— 通过表单新增/删除/测试连接(驱动、目标、凭据、只读开关);重加同名即覆盖。
- 导入数据库 —— 一键导入已有 .db/.sqlite 文件为连接,或把 .sql 转储执行到目标连接。
- Schema 树 —— 左侧 连接 → 表 → 列 树;双击表可加载 SELECT * … LIMIT 100,展开可见列类型、主键、可空性。
- SQL 编辑器 —— Ctrl+Enter 运行查询,结果以网格展示(NULL、数字、截断均有标记),还可把当前结果下载为 CSV。
- 查询历史 —— 每次查询/写入都会被记录(内存态,重启后清空),点击历史条目即可回填编辑器。

面板与 agent 工具共享同一个 host 领域,所以在 GUI 里加的连接模型立刻可用,反之亦然。

关于持久化。 连接配置是持久的(存在 $DSH_HOME/settings.yaml)。数据则取决于数据库本身::memory: SQLite 连接在每个新进程里都是空库,而文件型 SQLite(或 Postgres/MySQL 服务器)会跨会话保留数据。

连接配置

连接保存在持久的 db-workbench settings 命名空间里,可在 Web 设置页修改,也可直接写 $DSH_HOME/settings.yaml:

db-workbench:
connections:
local:
driver: sqlite
path: ./data/app.db # 省略 path 则为内存数据库 analytics: driver: postgres host: db.example.com port: 5432 database: warehouse user: read_only passwordEnv: WAREHOUSE_PG_PASSWORD # 从环境变量读取密码 ssl: true readonly: true mysql: driver: mysql host: 127.0.0.1 database: shop user: root password: changeme # 建议用 passwordEnv;内联密码明文存储 readonly: false

安全模型

- 默认只读。 每个连接默认 readonly: true;除非显式设为 readonly: false,否则 db_execute 与 db_import 会被拒绝。
- 语句分类。 db_query 只接受只读语句;db_execute 只接受写入/DDL 语句。
- 危险操作护栏。 DROP/TRUNCATE,以及不带 WHERE 的 UPDATE/DELETE,必须显式传 allow_destructive: true。
- 事务。 SQLite 写入包裹在 BEGIN/COMMIT 中(失败自动回滚)。
- 结果有界。 db_query 默认最多返回 100 行(可调),SQLite 驱动最多只把 5000 行载入内存。
- 密钥安全。 优先用 passwordEnv;内联 password 标记为 role(secret),设置页会脱敏。

驱动

| 驱动 | 依赖 | 说明 |
| sqlite | 无(内置 node:sqlite) | 文件、:memory:、schema 内省、EXPLAIN QUERY PLAN |
| postgres | pg(可选) | dsh plugin --profile <name> add pg |
| mysql | mysql2(可选) | dsh plugin --profile <name> add mysql2 |

开发

pnpm install # 安装开发与构建依赖
pnpm run typecheck # tsc --noEmit(host 半边)
pnpm run build # 产出 lib/(host 半边)
pnpm run build:client # 产出 lib/client.js(浏览器工作台面板)
pnpm test # 单元测试 + cordis 集成测试(工具 + 远程服务)
pnpm pack # 生成 tarball 供 dsh plugin add 使用

插件分两半。host 半边是纯 ESM TypeScript,用 tsc 编译:注册 model-facing 工具(通过本地零依赖的 defineTool,见 src/tool-def.ts)+ 一个 TypertRemoteService(source-mode @Remote 方法)供浏览器面板调用。

重要架构经验: host 侧工具插件绝不能在运行时 import @deepseek-ai/dsh-tools。一旦 import,就会在 profile 的 node_modules 里装进第二份该包,遮蔽官方 harness 自己的副本,破坏内部 TOOL_RUNTIME_SCHEDULER 的 Symbol() 派发(报错 Cannot read properties of undefined (reading 'prepare'))。因此本插件自己把工具 schema DSL 编译成 JSON Schema。运行时 @deepseek-ai/* 依赖只有 cordis(仅类型)、dsh-settings、dsh-typert-protocol、schemastery;dsh-tools/dsh-llm 只作为 devDependencies 供测试套件使用。浏览器半边用 tsdown 打成 lib/client.js(CJS __ModuleLoader__ 交接,CSS 内联)。pg/mysql2 保持可选、按需惰性加载。

许可证

MIT
预览分享卡片长什么样 ↓alingalingling/dsh-data-workbench
分享 · DeepSeek Harness Hub
alingalingling/dsh-data-workbench

让dsh帮你管理、查找、编辑数据,装上真正的数据库能力:对真实数据库执行的 SQL全部用自然语言对话完成

这是你的仓库?认领条目

回到顶部