dsh-archived-sessions
by kinomoto-hakage
dsh 已归档会话
安装
dsh plugin --profile web add github:kinomoto-hakage/dsh-archived-sessionsGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
DSH(DeepSeek Harness)Web GUI 的「已归档会话」管理插件:在设置窗口按工作区(项目) 分组管理所有已归档的会话。
功能
- 设置侧边栏「已归档会话」入口(归档图标,需一键应用外壳补丁,见安装)
- 按工作区分组、展开/收起;工作区删除后会话进入「未分组」并标注原工作区名
- 分组标题显示归档时的工作区原名
- 显示归档时间(宿主账本 + 浏览器 localStorage 兜底)
- 每行复选框 + 全选/全不选 + 批量删除;逐条取消归档/删除
安装
方式一:从远程仓库拉取
dsh plugin --profile web add github:kinomoto-hakage/dsh-archived-sessions
dsh plugin 会在 profile 目录运行
pnpm add,并自动把声明了 dsh.bundle 的依赖加入 dsh.profile.bundles;
仓库已含构建产物 lib/,无需本机构建。
方式二:下载到本地后手动构建安装
git clone https://github.com/kinomoto-hakage/dsh-archived-sessions.git
cd dsh-archived-sessions
node scripts/build.mjs # 或 pnpm build(等价,零依赖)
dsh plugin --profile web add file:. # 从本地仓库根目录安装
或手动放置:把 lib、cordis.patch.yml、package.json 放入 profile 可解析的
node_modules/@local/dsh-client-ui-archived-sessions/,并在 profile 的
cordis.patch.yml(或 bundle 列表)插入:
- insert:
- id: ui-archived-sessions
name: '@local/dsh-client-ui-archived-sessions'
安装前若 profile 已有本插件的手工挂载行(上述 insert),需先删除,避免与 bundle 层重复注册。
外壳图标补丁(一次性)
设置侧边栏图标由官方外壳 dsh-client-ui-settings-general 的 navIcon(id) 硬编码,
插件无法自行注入。一键应用(幂等、备份、可预演):
node scripts/apply-shell-patch.mjs # 或 pnpm patch:shell;--dry-run 可预演
升级/重装该外壳包后需重新运行;卸载脚本会自动还原该补丁。
使用
- 会话菜单中「归档会话」(官方 workspace 侧边栏入口)
- 设置 → 「已归档会话」
- 展开/收起分组;勾选会话后「批量删除」,或逐条「取消归档」/「删除」
卸载
node scripts/uninstall.mjs --dry-run # 预演:只报告将要清理的内容
node scripts/uninstall.mjs # 实际卸载
node scripts/uninstall.mjs --keep-data # 保留宿主账本
Windows 下可双击 uninstall.cmd(任意目录可用;仓库删除后回退到 profile 内已安装副本)。
若由 dsh plugin 安装,先执行 dsh plugin --profile web remove @local/dsh-client-ui-archived-sessions
移除依赖登记,再运行以上脚本。卸载后重启 dsh 并清除浏览器 localStorage 键
dsh.archivedSessions.times.v1。
工作原理
- 宿主半区
src/index.js:轮询workspaceRegistry.archivedSessionIds,把归档时间与 当时的工作区名写入$DSH_HOME/storages/archived-sessions.json,经通用 Connection RPC 通道/archived-sessions(ledger.get)提供给浏览器。 - 浏览器半区
src/client/index.js:注册settings.section渲染管理界面; localStorage(dsh.archivedSessions.times.v1)在宿主账本不可用时兜底。
官方 workspace 域不保存归档时间,账本记录的是宿主/浏览器首次观察到归档的时刻 (宿主侧受 2 秒轮询间隔影响),并非服务端精确时间。
目录结构
├── src/ # 源码(index.js 宿主半区 / client/index.js 浏览器半区)
├── scripts/ # build.mjs / apply-shell-patch.mjs / uninstall.mjs
├── lib/ # 构建产物(由 src 生成并提交,便于直接安装)
├── cordis.patch.yml # bundle 补丁:插入 ui-archived-sessions 行
├── build.cmd / uninstall.cmd # Windows 启动器(任意目录可用)
├── package.json # dsh.bundle.patch / dsh.client 声明
└── LICENSE # Apache-2.0
说明
- 面向 DSH 0.1.0-rc.6;浏览器半区改动刷新页面生效,宿主半区需重启 dsh。
- 构建零依赖:仓库不提交
node_modules/ 锁文件,node scripts/build.mjs即可。 - 包名使用
@localscope(本地插件约定);发布 npm 需改名并去掉"private": true。
License
原始 README: https://github.com/kinomoto-hakage/dsh-archived-sessions/blob/main/README.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 会话(分级预设),以及为纯文本宿主补上视觉与图像生成的多模态桥