前言¶
在 DSH 里长期做智能体或插件开发时,会话会按时间堆叠:同一工作区里既有排错记录,也有方案讨论,还有零散追问。靠搜索或翻聊天记录可以找回某条回复,但很难一眼看出「这段时间主要在解决哪几类问题、问题之间先后关系如何」。手动写笔记或导出 Markdown 能留档,却缺少按语义归类的专题视图,以及从总览图下钻到单轮问答的路径。
下面介绍社区 Client 插件 提问图谱(仓库 tonyischen/ds_ask_graph,npm 包名 dsh-ask-graph)。它读取当前工作区的 DSH 会话历史,按功能或语义归入专题,用有向图展示专题与问题脉络,并支持导出 HTML、SVG 或 Bluepin Vault,便于离线浏览与归档。维护者为 tonyischen;在 SkillHub 目录中归类为「记忆」。插件以 MIT 许可发布,当前 Release 版本为 1.0.0,要求 DSH 0.2.1 系列(Web / Desktop 客户端)。
这是什么¶
提问图谱是 DSH Client 插件:在浏览器端运行,图谱与归类状态保存在 localStorage,按工作区隔离。它不替代 DSH 本身的会话存储,而是在现有问答数据之上做可视化与整理。
数据与权限方面(与 README 一致):插件读取当前工作区会话中的问题、回复和图片附件,用于归类与展示;「智能整理」会把待整理的问题与回复发给当前配置的 DSH 模型,不调用其他外部服务;导出仅触发本地下载(HTML / SVG / ZIP),不向第三方上传。图片若无法读取,导出结果会保留原链接或给出警告。
核心功能¶
会话 → 专题与问题图¶
- 读取当前工作区的会话历史,按功能或语义归入专题。
- 专题总览按时间形成串行/并行有向图;点击专题进入该专题下的问题子图。
- 问题按时间串联;点击节点可在界面右侧查看完整问题与 DSH 回复。
整理与检索¶
- 智能整理:调用当前 DSH 模型,按上下文语义重组专题(需用户主动触发,会消耗模型配额)。
- 搜索定位、手动归类、专题总结、在原会话中定位问题等辅助操作(README 列出的能力)。
导出¶
| 格式 | 说明 |
|---|---|
| HTML | 大纲 + 专题/问题有向图 + 完整内容 + 内部链接,单文件离线打开 |
| SVG | 专题总览图 + 每个专题的问题图 |
| Bluepin Vault | 标准 pages/、assets/、daily/ 目录,带 wiki 链接、图片与 SVG 图 |
实现上,仓库目录包含 core.js(事件配对、专题归类、布局)、graph.js(dagre 布局)、semantic.js(智能整理提示词与解析)、html.js / svg.js / bluepin.js 等模块;UI 基于 React 与 @xyflow/react。
安装与启用¶
插件类型为 Client,package.json 中 dsh.client.platform 为 web,engines.dsh 为 >=0.2.1-rc.2。安装前请自行查看仓库源码与 MIT 许可证;插件以当前 DSH 进程权限读取工作区会话,安装即表示接受其数据使用方式(见上文「数据与权限」)。
团队安装(推荐)¶
从 GitHub Release 下载 dsh-ask-graph-1.0.0.tgz,安装到对应 profile:
dsh plugin --profile web add ./dsh-ask-graph-1.0.0.tgz
Desktop 版将 web 换成 desktop(或你实际使用的 profile 名)。安装后重启 DSH。包内已含预构建的 dist/client.js,无需在团队机器上执行 pnpm build。
也可从公开仓库 tag 安装:
dsh plugin --profile web add github:tonyischen/ds_ask_graph#v1.0.0
从源码目录安装(开发调试)¶
dsh plugin --profile web add file:D:\DSH\ds_ask_graph
路径改为你本机克隆后的目录。维护者文档还提到可用插件管理器的 install_bundle 或 profile 的 link: 依赖做本地联调。
npm¶
README 注明 npm 尚未发布;发布后计划支持:
dsh plugin --profile web add dsh-ask-graph
典型用法¶
README 未给出逐步截图式教程,可按下列顺序在 DSH 内操作(与功能描述一致):
- 在 0.2.1 系列 Web 或 Desktop 客户端中安装并重启 DSH,打开已有多轮对话的同一工作区。
- 进入插件提供的「提问图谱」视图,等待插件读取会话并完成初始专题归类(基于规则/时间等逻辑,见
core.js)。 - 在专题总览图上浏览时间上的串行/并行关系;点击某一专题进入问题子图,再点击节点在右侧阅读完整问答。
- 需要语义重组时,使用智能整理(会调用当前 DSH 模型;整理前确认模型与隐私策略可接受)。
- 用搜索定位节点,或通过手动归类、专题总结调整结构;需要回到原聊天时使用在原会话中定位问题。
- 导出 HTML(单文件报告)、SVG(图件)或 Bluepin Vault(ZIP),在本地或 Obsidian 类工具中继续整理。
图谱状态在浏览器 localStorage 中;换浏览器或清空站点数据会丢失本地整理结果,重要归档请依赖导出文件。
适用场景与注意¶
适合:在同一 DSH 工作区内积累大量问答,希望按专题复盘、写文档或做知识库沉淀的开发者;需要把对话结构导出为 HTML/SVG/Bluepin 的场景。
注意:
- 仅支持 DSH 0.2.1 系列;更旧客户端需先升级。
- 「智能整理」依赖当前配置的 DSH 模型,内容与常规对话一样进入模型上下文,请勿在会话中含敏感信息后再整理。
- 插件是社区作品;SkillHub(https://www.skillhub.cn/plugins/tonyischen/ds_ask_graph)为独立插件目录,与 DeepSeek / 幻方无官方从属关系。DSH 生态遵循「一切皆插件」,安装第三方插件前建议审阅源码与 Release 产物。
维护者本地开发流程(供贡献者参考):
pnpm install
pnpm build
pnpm test
node scripts/smoke.mjs
构建产物为 dist/client.js。
结尾¶
提问图谱把 DSH 工作区会话从线性聊天记录提升为可下钻的专题图与问题图,并补齐 HTML、SVG、Bluepin 三类导出,适合作为「记忆」类 Client 插件做会话归档与复盘。进一步了解可访问目录页 SkillHub - ds_ask_graph 与 GitHub 仓库。