lwklbb/DSH-SessionGraph 预览 preview

lwklbb/DSH-SessionGraph

一个DSH Web插件,可将聊天会话转化为可编辑的思维导图,支持Markdown、Mermaid、PlantUML、XMind文本及TODO导出。

Project Overview项目介绍

DSH-SessionGraph is a native plugin built exclusively for DeepSeek Harness, that adds session summarization and graph generation capability to DSH. After installation, it adds a “SessionGraph ▾” button to the top right of the conversation input box, so users can access it with one click any time they need to clean up a long conversation. To install, navigate to the plugin directory in your terminal and run dsh plugin --profile web add .; if installing from a local source tree, use the full path to the plugin directory. After installation, you just need to restart or refresh DSH to see the new button.

When you click the button, the plugin automatically pulls the current conversation snapshot, filters out noisy content like stack traces, debug logs, terminal output, and repeated trial-and-error content, then extracts key information like goals, conclusions, action items, and output files. It supports three different generation modes to match different use cases: default for general session organization, concise for quick handoff or review, and detailed for long sessions that need a timeline recap. You can also manually edit nodes in a popup window to add, remove, or adjust content before exporting, which lets you refine the output to match your exact needs.

All extraction logic runs locally using pre-defined rule sets in lib/extractor.js, so you do not need any external API keys, additional model calls, or third-party dependencies to use this plugin. The plugin only reads existing conversation snapshots, it does not modify original session data or interfere with DSH’s core functionality, which keeps installation risk very low. It supports export to multiple common formats including Markdown outline, Mermaid mindmap, PlantUML mindmap, XMind indented text, and simple to-do lists, and it is released under the permissive MIT open source license.

DSH-SessionGraph 是一款专为 DeepSeek Harness 开发的原生插件,核心功能是将当前会话内容整理过滤后生成结构化导图或大纲,帮助用户快速梳理长会话中的有效信息。它会自动识别并过滤调试日志、重复试错、堆栈跟踪等过程噪声,只保留目标、结论、关键要点、待办和产出文件等核心内容。

插件提供默认、精简、详细三种导图模式,适配不同使用场景:默认适合整理常规会话,精简只保留结论和待办适合快速复盘交接,详细会保留压缩时间线供长会话回溯。用户可以在弹出界面手动编辑节点,也支持一键导出为多种格式,方便后续复用或存档。

该插件使用纯本地规则提取内容,不依赖额外大模型调用或第三方服务,安装后会在会话输入框上方新增一个入口按钮,只读现有会话快照不会修改原有会话数据。它以 MIT 许可证开源,安装需要通过 DSH 插件命令行操作,安装完成后刷新 DSH 即可使用。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:lwklbb/DSH-SessionGraph

把 lwklbb/DSH-SessionGraph 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

DSH SessionGraph

SessionGraph 是一个给 DSH 用的小插件,用来把当前会话整理成导图。长会话里经常有很多调试、报错、反复修改的过程,最后真正有用的其实是结论、做了什么、还剩什么。所以这个插件会尽量过滤过程噪声,把会话压成一个可编辑、可复制的结构化大纲与导图。

SessionGraph UI showcase

能做什么

  • 在会话输入框上方右侧增加一个 SessionGraph ▾ 按钮。
  • 读取当前会话内容,提取目标、结论、关键点、决策、待办和文件产出。
  • 过滤一些明显没必要进导图的内容,比如 stack trace、终端日志、debug 输出、重复试错过程等。
  • 支持在弹窗里手动改节点、加子节点、删掉不想要的节点。
  • 支持一键复制导出结果。

三种模式

模式 内容 适合场景
默认导图 会话目标、最终结论、关键要点、决策与取舍、待办、文件/产出 平时整理一段会话
精简导图 只保留最终结论和待办 快速复盘、交接、写 commit 前看一眼
详细导图 默认导图 + 压缩后的时间线 会话比较长,想回头看过程时使用

导出格式

目前支持这些格式:

  • Markdown 大纲
  • Mermaid mindmap
  • PlantUML mindmap
  • XMind 缩进文本
  • 待办清单简介

Markdown 大纲

下面用一个常见的开发场景举例:一次会话里完成了“订单列表批量导出 CSV”功能,中间可能经历了接口参数调整、字段映射修正、空状态处理和测试失败重跑。SessionGraph 会尽量把这些过程整理成最终可读的大纲。

# SessionGraph:订单列表批量导出 CSV

- 会话目标
  - 在后台订单列表增加批量导出 CSV 功能
  - 支持按当前筛选条件导出,而不是只导出当前页
  - 导出字段需要包含订单号、用户、金额、状态、下单时间
- 最终结论
  - 前端已增加“导出 CSV”按钮,并复用订单列表当前筛选条件
  - 后端新增 `GET /api/orders/export` 接口,返回 `text/csv` 文件流
  - CSV 字段顺序已固定,金额统一按元展示,时间统一格式化为本地时间
  - 空结果会导出只有表头的 CSV,不再直接报错
- 关键要点
  - 导出请求不走分页参数,只传筛选条件和排序字段
  - 前端使用 Blob 下载,文件名格式为 `orders-yyyyMMdd-HHmm.csv`
  - 后端复用订单查询 service,避免复制一套筛选逻辑
  - 大批量导出先限制为 5000 条,超过时返回明确提示
- 决策与取舍
  - 暂时不做异步导出任务,当前版本先使用同步 CSV 下载
  - 不在前端拼 CSV,避免字段权限和金额格式与后端不一致
  - 状态字段导出中文文案,方便运营直接查看
- 待办 / 下一步
  - 补一条超过 5000 条时的接口测试
  - 和产品确认是否需要导出收货地址、优惠券字段
  - 后续如果数据量继续变大,再改成异步导出中心
- 文件 / 产出
  - `src/pages/orders/OrderList.tsx`
  - `src/api/orders.ts`
  - `server/routes/orders.ts`
  - `server/services/orderExport.ts`

Mermaid

mindmap
  root((SessionGraph:订单列表批量导出 CSV))
    会话目标
      后台订单列表增加批量导出 CSV
      按当前筛选条件导出全部结果
      字段包含订单号、用户、金额、状态、下单时间
    最终结论
      前端增加导出 CSV 按钮
      后端新增 /api/orders/export 文件流接口
      金额和时间格式已统一
      空结果导出表头不报错
    关键要点
      导出请求不带分页参数
      使用 Blob 下载 CSV
      后端复用订单查询 service
      单次导出上限 5000 条
    决策与取舍
      当前版本使用同步下载
      CSV 在后端生成
      状态字段导出中文文案
    待办 / 下一步
      补充超过 5000 条的接口测试
      确认是否增加收货地址和优惠券字段
      数据量变大后再做异步导出中心
    文件 / 产出
      src/pages/orders/OrderList.tsx
      src/api/orders.ts
      server/routes/orders.ts
      server/services/orderExport.ts

PlantUML

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-pwa 下一个 Next dsh-desktop →