SZMY-haruhi/dsh-session-plus 预览 preview

SZMY-haruhi/dsh-session-plus

将社区中零散的会话功能整合为一套:智能归档目录、一键恢复原位、删除操作、编辑后重发。弥补官方功能缺口,通过公开插槽实现,不修改核心代码。为DeepSeek Harness设计的会话管理包:支持归档目录、恢复、删除、编辑重发。所有通常分散在多个插件中的功能,集中于此一处。

Project Overview项目介绍

dsh-session-plus is a purpose-built plugin for DeepSeek Harness that adds missing UI and functionality for session archiving, unarchiving, and deletion, alongside a fully functional forked conversation feature. It can be installed via the official DSH CLI, with two main options: installing the stable working 0.1.1 version from npm, or installing the latest development version directly from the GitHub repository. Note that version 0.1.0 on npm is just an older name-holding package, so users must explicitly install 0.1.1 to get the full working code. To install from npm, run dsh plugin --profile web add dsh-session-plus in your terminal, and the plugin relies entirely on public API endpoints, never modifying core DSH files.

After installation, users will find an “Archive” entry added to the bottom of the DSH sidebar, right next to the settings button. Clicking this entry opens the archive directory, which lists all sessions archived via DSH’s native archiving feature. From this directory, users can restore archived sessions back to their original position in the workspace, or permanently delete unwanted sessions after a second confirmation prompt. The forked conversation feature lets users edit an existing prompt and open a new branched session, keeping the original conversation intact for later reference.

This plugin is released under the open-source MIT license, so it is free to use, modify, and distribute. The main known limitation is that archiving a session while a tool call is still running will corrupt the session’s log, which cannot be repaired by the plugin and requires the user to delete the corrupted session. The plugin will automatically wait for the current session to become idle before running the archive process, and it will show a warning prompt if it times out waiting for idle status. Blank new sessions cannot be archived or deleted, as explicitly stated in the plugin’s documentation.

dsh-session-plus 是专为 DeepSeek Harness (DSH) 开发的原生会话管理插件,补全了官方原生归档功能缺失的会话查看、取消归档和删除操作,同时新增分支对话编辑功能。插件全部基于公开的 API slot 和 workspace 域实现所有功能,不会修改 DSH 官方核心文件,也不会向官方视图选项菜单插入额外 DOM 元素。用户可在 DSH 侧栏底部设置按钮旁找到归档入口,点击即可打开归档目录进行相关会话操作。

这款插件面向所有需要对 DSH 对话会话进行归档管理的用户,核心操作流程清晰:在归档目录中可以查看所有已归档的会话,点击恢复即可将会话放回到原工作区的原有位置,点击删除会经二次确认后永久移除会话日志和所有相关文件。分支对话功能支持用户在原有消息旁点击分叉图标,打开就近浮窗修改提问,还可自定义新会话标题,原对话会保留不变。

本插件采用 MIT 许可开源,可免费使用和修改。开发者明确指出,不要在工具调用运行途中对会话进行归档操作,否则会导致会话日志损坏,无法恢复,只能删除损坏的会话。插件会尽量等待会话空闲后再执行归档操作,超时会提示用户等待当前回复结束或点击停止后再操作,空白新会话不支持归档和删除。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
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 dsh-session-plus

把 SZMY-haruhi/dsh-session-plus 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-session-plus

中文 | English

awesome · DSH plugin 推荐 dshfind

DeepSeek Harness 的会话补全:侧栏归档目录、恢复到原位置、删除、分支对话。

官方其实已经能归档会话,但没有查看、取消归档或删除的界面。我做这个插件,就是把这几项操作补上。全部走公开 slot 和 workspace 域,不改 @deepseek-ai 核心文件,也不往官方「视图选项」菜单里插 DOM。

侧栏最底下、设置旁边点 归档。

侧栏底部:归档在设置上方

已知失败(请先读)

这不是某一版实现写坏了。我在多个版本里都复现过,社区其它归档类插件也会撞上同一类问题。根因在 DSH 会话日志:tool / result 必须带 source.kind = tool 和 callId。工具还在跑的时候把会话归档(中间会 clear() / 卸绑定),日志可能被写成非法事件。已经写坏的日志,插件修不回来,只能删掉。

我自己测下来是这样:

场景 结果
场景一:这一轮已经结束,再归档,再恢复 不会出问题。重启也还在。
场景二:还在长文回答、没有工具调用,中途归档,再恢复 不会出问题。回答可以写完。重启也还在。
场景三:正在调工具的途中归档,再恢复 一定会出问题。
删除 我没再测到 bug。
分支对话(修改并分支) 我测过的路径里没碰到 bug。

场景三恢复后,客户端常见:

历史加载失败:conversation Context 9:tool-call received more than one start Match(internal)

重启服务后再打开,常见:

history unavailable
SessionPersistenceCorruptionError: ... message must have tool source(internal)

所以:不要在工具还在跑的时候点归档。 等这一轮结束,或先点停止。空白「新会话」本来就不能归档。插件会尽量等到空闲(含 runningCalls / partial,最多约 30 秒)再归档,超时会提示「请先等当前回复结束,或点停止后再归档。」——但我拦不住所有时机。一旦日志已经坏了,恢复没有意义,删掉那个会话即可。

安装

npm(稳定版,官方推荐)。请装 0.1.1:npm 上的 0.1.0 是更早的占名包,不是现在这份。

dsh plugin --profile web add dsh-session-plus

已经装过 0.1.0 的:

dsh plugin --profile web update dsh-session-plus

也可以跟 GitHub(跟仓库最新提交;本包预构建 lib/,git 安装无需 allowBuilds):

dsh plugin --profile web add github:SZMY-haruhi/dsh-session-plus

钉 commit:

dsh plugin --profile web add github:SZMY-haruhi/dsh-session-plus#<commit>

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-ui-customizer 下一个 Next dsh-better-prompt →