前言¶
今天是 2026-10-01。DSH 支持会话归档,但 Web 界面默认隐藏这些会话,导致用户无法在界面上查看或恢复它们。dsh-session-unarchive 插件通过向 Web GUI 添加归档会话视图和恢复操作来解决这一问题。
插件介绍¶
该插件由 dylan121322 维护。它实现为纯 Cordis 插件(Host 端 + Client 端),不涉及任何文件补丁。插件通过调用 DSH 的运行时 API 与系统交互,因此能够承受 DSH 升级,无需修改 DSH 安装目录下的任何文件。
核心功能¶
- 侧边栏按钮:在侧边栏底部(设置旁边)添加一个“Archived”按钮,实时显示归档会话的数量。
- 会话面板:点击按钮会打开一个弹出面板,列出所有归档会话。支持标题过滤,每行包含一个“Restore”操作。
- 恢复逻辑:恢复操作将会话放回其原始工作区位置。面板和内置侧边栏通过 DSH 的
host/archived-sessions-changed事件自动更新。 - 多语言支持:同时支持中文(zh-CN)和英文界面。
安装与启用¶
插件需要通过依赖注入进行注册。请按以下步骤操作:
cd "$DSH_HOME/profiles/web" # 进入 Web 配置目录
# 1. 在 package.json 的 dependencies 中添加本地依赖
# "dsh-session-unarchive": "file:plugins/session-unarchive"
# 2. 在 cordis.patch.yml 中注册条目
# id: session-unarchive
# name: dsh-session-unarchive
pnpm install
# 重启 DSH 并刷新浏览器
典型用法¶
- 导航到 Web 配置目录:
cd "$DSH_HOME/profiles/web"。 - 在
package.json中添加依赖:"dsh-session-unarchive": "file:plugins/session-unarchive"。 - 在
cordis.patch.yml中注册入口点:id: session-unarchive,name: dsh-session-unarchive。 - 安装依赖:
pnpm install。 - 重启 DSH 并刷新浏览器。
- 归档一个会话以查看“Archived”按钮出现。
- 点击按钮以列出会话,使用标题过滤,并点击“Restore”以取消归档。
注意事项¶
- 无文件补丁:插件不写入 DSH 安装目录下的任何文件。它不依赖旧版 rc.6 的
patched-package布局。 - 架构变更:该仓库以前作为引导时补丁程序(覆盖五个 DSH 包的文件补丁)发布;该设计已被此纯插件形式取代。
- 构建:
client.js是预构建的 CJS 捆绑包。如果修改,应从源代码重新构建。 - 兼容性:在
@deepseek-ai/dsh@0.1.0-rc.8(Web 配置文件)上测试。
结语¶
该工具为 DSH 的归档功能提供了 Web 端的可见性和恢复能力。要查看目录或源代码,请访问:GitHub。