dph-unarchive-sessions
by lgYanami
DPH 插件:DSH 工作区归档会话恢复(严格按工作区过滤)
安装
dsh plugin --profile web add github:lgYanami/dph-unarchive-sessionsGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
English | 中文
面向 DeepSeek Harness Web 界面的 DPH 插件:从工作区浏览器恢复已归档会话,严格按工作区过滤。
DSH 的工作区行操作菜单可以归档会话(「归档会话」),但原生 harness 没有恢复途径。本插件补上闭环:
- 为每个工作区行的三点菜单增加「查看归档会话」入口(仅在本插件加载时出现)。
- 弹出浮动面板,只列出该工作区的归档会话,支持复选框多选、恢复本组、恢复所选与全部恢复。
- 恢复操作走公开的
workspace.unarchiveSessionRPC;变更帧让每个打开的浏览器保持一致,会话无需刷新即回到原账目位置。
归档是什么(以及为什么恢复是安全的)
归档从不改动会话日志或工作区账目槽位:归档集合只是账目之上的显示过滤器。恢复即把 ID 从该集合中移除,会话必然回到原处。
仓库结构
src/— 浏览器插件包@deepseek-ai/dsh-client-ui-unarchive(面板、本地化字典、invariant 伴生)。tests/— vitest 套件:插槽注册/卸载与面板过滤/恢复行为。harness-prerequisite.patch— 插件依赖的必需宿主侧改动。
前置条件:harness 补丁
原生 harness 没有取消归档 API,也没有面板洞。harness-prerequisite.patch 在 deepseek-harness 检出中补齐:
dsh-workspace:公开方法WorkspaceRegistry.unarchiveSession(sessionId)(幂等、串行化、纯归档集合写入)。dsh-host-apiproxy:workspace.unarchiveSessionRPC;既有的domain/changed监听器本就会发出host/archived-sessions-changed,无需新增事件管道。dsh-client-runtime:workspaces 面新增unarchiveSession。dsh-client-ui-workspace:sidebar.workspaces.archivedPanel洞(按占用门控)加行菜单入口。- 组合接线:
dsh.client花名册中的ui-unarchive行、web-app依赖、tsconfig.base.json源码路径映射。
在 harness 检出中执行 git apply,然后重建(pnpm install && npm run build:lib:host && npm run build:lib:client && npm run build:web),再重启 dsh web。
安装
把本仓库放进 harness 工作区作为插件包:
cp -r dph-unarchive-sessions <harness>/packages/client/ui-unarchive
cd <harness>
pnpm install
npm run build:lib:client
组合行、依赖与 tsconfig 映射由 harness-prerequisite.patch 提供(见上)。重启 dsh web 并强制刷新浏览器后,插件出现在 设置 → 插件 中(条目 ui-unarchive),每个工作区行菜单新增「查看归档会话」。
架构
- 面板经
slots.inject注册进sidebar.workspaces.archivedPanel插槽(ui-workspace与本包的激活顺序无约束)。 - 数据来自标准的
useSessions/useWorkspaces插槽 props;唯一的宿主动作unarchiveSession经插槽的 inject 面注入。 - 恢复通过宿主变更帧同步共享的
archivedSessionIds状态;面板按会话逐个串行调用 RPC。
模型体验
无:该包只渲染面向人类的持久化会话事实,不增加任何提示词、工具 schema、请求内容或模型可见结果。
已知限制与后续工作
- 面板严格限定在打开它的工作区行:其他工作区与「未分组」区的归档会话在该视图中不可见,且未分组行没有独立入口。
- 恢复多个会话时逐会话发一次 RPC;批量端点可以把它们合并。
许可证
MIT © 2026 lgYanami
原始 README: https://github.com/lgYanami/dph-unarchive-sessions/blob/main/README.zh.md ↗
同类插件
查看全部 →
archify
Agent 技能:生成美观、可校验的架构图、工作流图、时序图、数据流图与生命周期图——自包含 HTML、带动画与清晰导出

dsh-turn-rewind
对话回退:基于持久 Change Ledger 回滚会话与工作区状态。

dsh-plugin-cc
把 DeepSeek Harness 接入 Claude Code:评审、批评、委派与会话导入

dsh-interconnect
跨实例互联:经 interconnect 服务在多个 DSH 实例间转发消息与事件。

dsh-chat-import
把 13 家 coding agent(Claude Code、Codex、ChatGPT、Cursor、Gemini、opencode 等)的完整对话历史导入为可续聊的 DeepSeek Harness 会话,并支持反向导出回 Claude Code。

dsh-crew
DSH 插件:从 Claude Code / Codex 向 DSH agent 派活——原生 subagent 进度、宿主内 worker 会话(分级预设),以及为纯文本宿主补上视觉与图像生成的多模态桥