my-dsh-plugin/session-archive-manager ↗★ 3
dsh-session-archive-manager
DeepSeek Harness 插件:在设置中查看并管理归档会话(取消归档 / 删除 / 批量删除 / 全量删除)。Manage archived sessions from DeepSeek Harness Settings: view, unarchive, delete, batch delete, delete all.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:my-dsh-plugin/session-archive-manager说明文档
阅读完整 README ↗session-archive-manager
在 DeepSeek Harness 设置页查看归档会话,支持取消归档、删除、批量删除与全量删除 —— 补上 Harness 本身缺失的归档会话管理入口。
English: README.md
功能
- 查看全部归档会话:标题、工作区、工作目录与最近更新时间。归档会话会被所有会话列表隐藏,只有这里能看到。
- 取消归档单个或选中的会话:归档时保留的工作区归属槽位会被恢复,会话重新出现在原有位置。
- 删除单个会话、删除所选或全量删除全部归档会话,均有内联确认,防止误删。
- 实时刷新:列表跟随宿主的归档集合与会话摘要实时更新;操作通过运行时 store 即时生效。
- 能力检测:在缺少核心 API 的 Harness 上,页面自动降级为只读列表并给出明确的升级提示,而不是出现点了报错的按钮。
工作原理
本插件只提供界面。归档行由实时的 workspaces.list 归档集合与 sessions.list 摘要交叉派生而来,所有操作都通过 workspaces 运行时服务调用核心的 workspace.unarchiveSession / workspace.deleteSession RPC。没有轮询,宿主侧除了 RPC 本身没有任何插件代码。
截图

设置页「插件」之后的「归档会话」入口。归档会话按工作区分组并显示小组标题,未归属任何工作区的会话收进末尾的「未分组」桶;列表上方的工具栏提供取消归档、删除所选与全量删除。
依赖要求
Harness 目前尚未内置取消归档/删除 API(也没有上游发布渠道),所以现阶段必须使用 deepseek-harness 源码 checkout 并应用本仓库随附的补丁。缺少这些 API 时,设置页会以只读方式显示归档列表并提示升级。
安装
插件本身永远不需要构建。 仓库随附预构建的宿主入口与浏览器 bundle(lib/ 已入库),安装 = 克隆/拉取 + 一条命令 —— 本仓库不用 pnpm install、没有 prepare 脚本、不需要 allowBuilds 批准。整个流程里唯一的构建是第 1 步给核心打补丁后 harness 自己的重建。
1. 给 Harness 核心打补丁
在本仓库目录下,对着你的 deepseek-harness checkout 执行(补丁固定基于上游提交 47f943859b;其他提交可能需要 git apply -3 手工解决):
node scripts/apply-patch.mjs /path/to/deepseek-harness
cd /path/to/deepseek-harness
npm run build:lib:host
npm run build:lib:client
补丁文件为 patches/dsh-core-unarchive-delete.patch,新增两个 workspace RPC、session-persistence 的 delete 能力(JSONL/SQLite 后端)、客户端 runtime 动作及配套测试。纯增量改动,不改变任何现有行为。
2. 安装插件(无需构建)
本地克隆安装(推荐,便于迭代) —— 以 link 方式安装:直接使用已入库的 ,在克隆目录里 即可更新插件,无需任何构建: