中文 | English
让DeepSeek Harness连接数据库,用对话完成数据分析与商业洞察
自然语言查询 · 自动执行SQL · 连续分析 · Web UI · dsh-tui · 只读保护
项目简介 · 主要功能 · 快速安装 · Web UI · dsh-tui · 安全说明
dsh-data-agent是DeepSeek Harness(DSH)的数据分析插件。连接数据库后,直接提出业务问题,DSH会自动查看库表、编写并执行SQL、根据真实结果继续分析,最终给出清晰的数据结论和商业洞察。插件同时支持Web UI与dsh-tui,无需修改DSH源码。
- 通过对话完成数据分析:直接用自然语言描述目标,DSH会理解问题、拆解分析步骤、查询真实数据并整理结论。你可以继续追问,分析会沿着当前上下文逐步深入。
- 自动寻找商业洞察:不仅返回查询结果,还能帮助比较趋势、定位异常、识别高价值客户或商品,并把数据转化为便于业务决策的说明。
- Web 分析报告(render-analysis):Web 界面中 Agent 可在普通工具调用里自主生成单图或 Dashboard 式综合分析报告(metric/line/bar/pie/scatter/table 视图),结果行提供内联预览与「查看分析」Modal;是否画图由 Agent 按问题判断,schema 探查、单标量等查询不会被强制生成图表。
- 完整兼容Web UI与dsh-tui:喜欢可视化操作时,可以在Web界面连接数据库、浏览库表和查看结果,推荐使用zhu1090093659/dsh-web-ui;习惯键盘工作流时,可以在终端中使用同一“数据模式”,通过
/database完成连接,然后直接开始对话分析,推荐使用ccch1mneyyy/dsh-TUI。两种界面都能使用数据Agent的核心能力。 - 连接常见业务数据库:支持MySQL、PostgreSQL、SQLite、Oracle、Hive和Impala,可用于业务系统、分析库、本地数据文件及数仓场景。
- DSH自动完成分析闭环:DSH会根据当前问题查看表结构、编写SQL、执行查询,并结合报错或返回结果继续调整,而不是只生成一段未经验证的SQL。
- 专注数据任务的数据模式:会话使用DSH原生
str_replace_editor处理文件,并保留sql-query、sql-write、sql-cmd;Web额外提供render-analysis。describe_image、ssh_*等宿主或社区插件工具不会进入数据模式。 - 安全地使用真实数据:支持只读模式和数据库只读账号;TUI密码会被隐藏,且不会作为表单草稿恢复。是否允许修改数据由你决定。
Web UI还提供内嵌数据库工作台,可以浏览库表、查看字段结构,或临时运行SQL。开始对话后,工作台会自动移到侧栏,不打断分析过程。
创建会话时选择“数据模式”,DSH就会以数据分析工作流处理后续问题。
Web UI和dsh-tui使用独立的DSH profile。只使用其中一种界面时,安装对应的一项;两个界面都使用时,请执行两条命令。
dsh plugin --profile web add @yejiming/dsh-data-agent
dsh plugin --profile dsh-tui add @yejiming/dsh-data-agentdsh plugin --profile web add github:omdsh-dev/dsh-data-agent
dsh plugin --profile dsh-tui add github:omdsh-dev/dsh-data-agent插件会自动安装“数据模式”预设,无需本地构建。
启动Web UI:
dsh --profile web然后按下面的步骤操作:
- 新建会话并选择“数据模式”。
- 在数据库工作台填写连接信息。
- 连接成功后,直接在对话框中提出分析问题。
- 根据第一轮结果继续追问,让DSH缩小范围、比较维度或总结结论。
例如,输入“分析最近30天订单变化,找出销售额下降最明显的地区和商品,并解释主要原因”,DSH会自行查看相关表、生成并执行查询,再根据真实结果完成分析。
在 Web UI 中,数据模式还提供 render-analysis 工具:Agent 会先用 sql-query 探查并核对事实,再自行判断可视化是否有帮助。判断需要画图时,一次工具调用会生成一份版本化分析报告:
- 报告包含 1-6 个只读数据集与 1-8 个视图(metric、line、bar、pie、scatter、table),同一数据集可被多个视图复用,聚合与 Top N 都写在 SQL 中;
- 简单问题生成单个主图(结果行内联预览),复杂问题生成紧凑摘要 + 「查看分析」按钮;
- 「查看分析」在大型 Modal 中展示本次报告的全部视图:紧凑指标带、全宽主图、双列辅助图与明细表,浅色/深色主题与窄屏单列自适应;
- 完整报告快照随会话日志持久化:刷新或历史回放不重新查询数据库,也不产生新的浏览器存储;
- 仅 Web 提供该工具;dsh-tui 的工具面保持不变,也不会加载图表或浏览器依赖。
启动终端界面:
dsh --profile dsh-tui在空白会话中切换到数据模式,然后连接数据库:
/preset data-agent
/database connect
连接表单会一次展示所有相关字段。使用Tab或Shift+Tab切换输入项;数据库类型和只读模式按Enter展开选项,使用方向键选择并再次按Enter确认。
连接成功后,回到聊天输入框直接提出业务问题即可。常用的数据库命令还有:
/database status 查看当前连接
/database test 测试当前连接
/database disconnect 断开当前连接
同一会话再次打开连接表单时,会恢复最近填写的数据库类型、地址、端口、用户、数据库和只读模式。密码始终隐藏且不会恢复。
为了获得更有价值的分析,可以在问题中补充业务目标、时间范围和关注维度。例如:
分析2026年第二季度各地区的销售额和毛利率变化,找出表现异常的地区,
继续拆解到品类和核心客户,并给出三条可执行的业务建议。
你也可以让DSH保存分析过程或SQL,方便复查和复用:
完成会员复购分析,把最终SQL保存到analysis/repurchase.sql,
并用一段适合周报的文字总结主要发现。
DSH运行查询时需要本机能够访问目标数据库,并安装相应的数据库客户端:
- SQLite通常已随macOS或Linux提供。
- MySQL需要
mysql客户端。 - PostgreSQL需要
psql客户端。 - Oracle、Hive和Impala需要各自的命令行客户端。
建议先准备一个只读数据库账号,让数据Agent在不修改业务数据的前提下完成探索和分析。
如果出现failed to mount或提示找不到@yejiming/dsh-data-agent,通常是当前profile还没有安装插件。请确认Web UI和dsh-tui分别执行了对应的安装命令,然后重新启动DSH。
- 推荐使用数据库只读账号,并在连接表单中开启只读模式。
- Web UI和dsh-tui中的临时密码只用于当前连接;TUI只显示
*,重新打开表单时不会恢复密码。 - 需要跨进程恢复认证时,可以使用DSH credential reference,避免在命令参数中输入明文密码。
- 未开启只读模式时,数据Agent可以按你的要求执行更新或管理语句。连接生产数据库前,请先确认账号权限和数据备份策略。
- 不同会话的数据库连接相互隔离,便于分别处理不同项目、客户或分析环境。
dsh plugin --profile web remove @yejiming/dsh-data-agent
dsh plugin --profile dsh-tui remove @yejiming/dsh-data-agent
rm -rf $DSH_HOME/.agent-presets/data-agent卸载插件不会主动删除已经保存的非敏感连接信息。若需要彻底清理,请先备份,再删除DSH中对应的数据Agent存储记录。
pnpm install
pnpm build
pnpm testlib/已提交到仓库,因此通过npm或GitHub安装时无需自行构建。
MIT
- dshfind.com:DeepSeek Harness中文学习与分享社区
- dsh-web-ui:DeepSeek Harness Web UI插件与皮肤集合
- dsh-cc-tui:Claude Code风格的全屏终端界面




