dsh-mindmap:在 DSH 会话侧栏里画导图并导出 Markdown

前言

用 DeepSeek Harness(DSH)做长对话时,主区域往往是消息流;把结构化的想法记在别处再贴回来,容易和当前会话脱节。大纲类工具能解决层次问题,但若要和对话并排对照,又希望节点能配图、拖位置、最后收成一篇可喂给模型的 Markdown,通常要换两三个应用。

下面介绍社区维护的客户端插件 dsh-mindmap(stzyk):在会话右侧抽屉里打开思维导图,数据落在 Host 本地,画布与 Markdown 可双向同步,并支持一键导出。

这是什么

dsh-mindmap 是 DSH 的思维导图插件,分类为客户端,通过 @deepseek-ai/dsh-client-ui-sidebar 等注入点在 Web 界面挂载。维护者为 stzyk,源码与说明见 GitHub 仓库,社区目录页为 skillhub.cn/plugins/stzyk/dsh-mindmap。当前 package 版本为 0.35.5,许可证 MIT,运行要求 Node ≥ 20。

插件解决的核心问题:在不离对话的前提下,用树形大纲记录与整理思路,持久化到 ~/.dsh/storages/dsh-mindmap.json,并可转为标题式或列表式 Markdown。

核心功能

界面与存储

  • 在右侧栏首页点「思维导图」卡片打开;导图与对话并排,不占主聊天区。
  • 自动保存:防抖 0.6 秒,离开页面前强制落盘,失败按 2/5/10/30 秒重试;工具栏右上角显示保存状态。
  • 关闭后再次打开同一份导图,视口位置与缩放记在浏览器 localStorage,不写进文档文件。

键盘化编辑与画布操作

常用快捷键(节选):

按键 动作
Tab 加子节点
Enter 加同级节点
Alt+← / → 调整层级
方向键 在树上移动光标
Cmd/Ctrl+Z 撤销(深度 100 步)
Cmd/Ctrl+D 复制节点及子树

节点可自由拖动并持久化位置;工具栏提供「重新排版」恢复自动布局。画布缩放约 25%–300%,支持框选多节点批量改样式。属性面板需点工具栏「属性」显式打开,选中节点不会自动弹出。

多主题、连线与节点标识

  • 多主题:在画布空白处双击可新增并列中心主题;导出时每个主题对应一个 # 一级标题。多主题导图暂不支持从 Markdown 反向合并(会提示拒绝),单主题不受影响。
  • 层级连线:点线可选中;拖线端点可改挂载关系;双击可加连线说明(上限 120 字,目前不导出到 Markdown)。断开连线时节点升到第 1 级,可成为新的中心主题。
  • 关系线:节点右侧连接点拖到另一节点,不改变树结构;线型、粗细、颜色可单独设置。若一端仍是 1 级节点,会自动变成父子关系并取消关系线。
  • 节点标识:如 ⭐ 重点、⚠️ 易错、❓ 疑问等,单节点最多 4 个,随数据保存与导出。

配图与 Markdown

  • 粘贴或拖入 PNG / JPEG / GIF / WebP(单张上限 8MB,不支持 SVG);文字留空即为纯图片节点,单节点最多 24 张。
  • 右侧 Markdown 栏可收起:画布改动实时同步到侧栏;改 Markdown 后点「应用修改」合并回画布,保留图片、位置与折叠状态。
  • 两种 Markdown 形态:标题形态(每层 #,超过 6 层降为列表)适合文章骨架;列表形态(嵌套无序列表)适合大纲工具或模型输入。支持相对路径导出、内嵌单文件,以及复制 / 下载 .md;仓库 README 还说明可在命令行导出(不开网页)。

工程与质量

package.json 中提供 gates(node scripts/gates/run.mjs)与多组 node --test 脚本(core、store、history、parse、style、tools 等)。安装时因 lib/ 为构建产物,会执行 prepare 现场编译。

安装与启用

前提:dsh 已在 PATH 中,Node 版本满足 ≥ 20。下面示例 profile 名为 web(内置 profile);自定义 profile 一般在 ~/.dsh/profiles/ 下,装到平时用的那个即可。

从 GitHub 安装

dsh plugin --profile web add git+https://github.com/stzyk/dsh-mindmap.git

pnpm 默认可能拦截来自 git 的构建脚本,首次失败时按终端提示,将类似下面一行加入 $DSH_HOME/profiles/web/pnpm-workspace.yaml(无文件可新建,只写 allowBuilds 段亦可):

allowBuilds:
  dsh-mindmap@git+https://github.com/stzyk/dsh-mindmap.git#<commit>: true

然后重新执行上面的 add 命令。

在已 clone 的源码目录中先构建,再以绝对路径 link(README 中的完整步骤如下):

npm install && npm run bundle
dsh plugin --profile web add link:$PWD

之后改客户端只需 npm run bundle 并刷新页面;改 lib/index.js(Node 半区)需重启 DSH。

重启与确认

dsh web
# 或其它 profile,例如:
dsh --profile desktop-web web

确认 bundle 已装配:

dsh --profile web --dump-config | grep -A1 mindmap

输出中出现 - id: dsh-mindmap 即表示已加入 profile 的 dsh.profile.bundles。界面上在会话右侧栏首页应能看到「思维导图」卡片。

卸载:

dsh plugin --profile web remove dsh-mindmap

数据文件仍留在 ~/.dsh/storages/,需彻底删除时请自行清理。

典型用法

  1. 右侧栏首页点「思维导图」→ 填写标题 → 新建。
  2. 用 Tab / Enter 扩树,空格 或 F2 在保留原文前提下编辑,选中后直接打字 可整段替换。
  3. 需要配图时直接粘贴或拖文件进画布;要统一外观时选中节点或连线,点「属性」改配色、字号、边框等。
  4. 整理完成后点「Markdown」,在侧栏微调大纲,点「应用修改」回写;或复制 / 下载 .md 用于写作或后续 prompt。

搜索节点正文用 Cmd/Ctrl+F;大画布拖远后用工具栏「居中」回到内容。

适用场景与注意

适合:在 DSH 对话旁快速搭结构、标注重难点、配图备忘,并导出 Markdown 与对话或智能体工作流衔接的开发者。

注意:

  • 插件随当前 dsh 进程权限运行,安装前请自行审阅 源码 与 MIT 许可证。
  • 社区目录 skillhub.cn 为独立生态站点,与 DeepSeek / 幻方无官方从属关系;DSH 本身以「一切皆插件」方式扩展能力。
  • 多主题 + Markdown 反向编辑有限制;连线说明、视口记忆等行为以 README 当前说明为准。

结尾

dsh-mindmap 把思维导图收进 DSH 右侧抽屉:键盘树编辑、自由布局、连线与多主题、配图,以及与 Markdown 的双向合并和本地持久化,适合需要「边聊边捋结构、最后收成文稿或大纲」的场景。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜