dsh-mermaid-panel:在 DeepSeek Harness 右侧边栏渲染 Mermaid 图表

前言

在对话中插入 Mermaid 图表是常见需求。现有方案要么在对话中内联渲染,要么需要手动复制到外部工具查看。DSH(DeepSeek Harness)本身不提供图表渲染能力,也没有在聊天流中插入渲染点的机制。dsh-mermaid-panel 通过注册一个侧边栏页面类型,扫描对话中的 Mermaid 代码块,将它们在侧边栏中渲染为可缩放、可平移的卡片,从而在不改动对话原文的前提下提供交互式查看。

插件定位

dsh-mermaid-panel 是一个 DeepSeek Harness 客户端插件,由维护者 Natsubrei 发布。它将对话中符合 Mermaid 语法的代码块提取到右侧边栏中渲染,每个图表独立缩放和平移,并提供全屏查看与源码复制功能。

核心功能

  • 注册一个右侧边栏页面类型(mermaid)与一个引导胶囊,为空侧边栏提供入口。
  • 扫描当前对话渲染后的 DOM,识别以 Mermaid 声明开头的代码块,并在侧边栏页面中渲染这些图表。
  • 每个图表卡片保留原始源码,提供一键复制。
  • 支持卡片内缩放与平移:滚轮以指针为中心缩放,拖拽平移,双击或点击「Fit」恢复默认大小。缩放比例不低于默认大小。
  • 提供「Enlarge」按钮打开全屏视图,全屏视图同样支持滚轮、+/-、Esc 与 Fit 操作。
  • 当对话内容发生变化(如重新渲染、流式打字)时,页面会重新扫描并更新图表。
  • 不修改 DSH 本体,只使用公开扩展点(ctx.sidebarRightTabs、sidebar.right.pane.tab、ctx.locale / ctx.slots)。

安装与启用

从插件市场安装:

  1. 在 DSH 中打开「Plugins → Discover → Add index」。
  2. 输入索引地址:
   https://raw.githubusercontent.com/Natsubrei/dsh-mermaid-panel/main/index.json
  1. 在插件列表中搜索并安装「Mermaid diagrams」。

从本地检出安装:

  1. 克隆仓库后运行构建脚本:
   node build.mjs
  1. 将构建后的包目录作为 bundle 安装到 Harness profile(例如通过插件管理器的 install_bundle 动作)。
  2. 安装完成后,在右侧边栏选择「Mermaid」入口即可。

典型用法

  • 在对话中编写 Mermaid 代码块,例如:
  graph LR
    A[Start] --> B{Is it working?}
    B -->|Yes| C[Great]
    B -->|No| D[Troubleshoot]
  • 打开右侧边栏,在引导页或第一个标签中选择「Mermaid」。
  • 侧边栏中会出现该对话中的所有 Mermaid 图表卡片。
  • 在卡片上滚动滚轮缩放,拖拽平移,双击或点击「Fit」恢复默认大小。
  • 点击「Enlarge」进入全屏视图,继续操作或按 Esc 退出。

适用场景与注意

适合需要在对话中快速查看、交互式调试 Mermaid 图表的用户。例如在技术方案评审、流程梳理或架构说明时,一边对照原文,一边在侧边栏中缩放、平移与全屏展示。

注意:插件以当前 DSH 进程的权限运行,安装前建议检查源码与许可证。由于插件读取对话的 DOM,若 DSH 改变代码块渲染的 HTML 结构,插件可能需要更新选择器才能正常工作。历史中尚未渲染的部分(如折叠或虚拟化内容)不会被扫描。

结尾

dsh-mermaid-panel 将 Mermaid 图表从对话文本中抽离到侧边栏中,提供可缩放、可平移的独立视图,同时保持对话原文不变。你可以通过目录页或 GitHub 仓库获取更多细节:
- 目录页
- GitHub

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

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

Xiaoye