前言¶
DeepSeek Harness(DSH)的会话数据存储在本地磁盘目录 ~/.dsh/sessions/ 下。官方 Web 界面仅展示当前工作区的会话,且缺乏批量管理能力,当会话数量增多时,管理效率较低。dsh-session-admin 插件在 Web 设置面板提供全局视图,允许用户查看所有现存与已归档的会话,并提供归档、删除及批量操作功能。
插件定位¶
dsh-session-admin 是一个 DeepSeek Harness 插件,由用户 robin758 维护。它通过在 Web 设置面板挂载管理入口,实现对 DSH 会话的统一治理,解决会话堆积与清理困难的问题。
核心功能¶
- 查看全部会话:列出磁盘上所有现存与已归档的会话,包含标题、工作区及时间戳。
- 归档与恢复:支持将不常用的会话一键归档,或随时从归档中恢复。
- 永久删除:删除会话目录,该操作不可恢复,但包含二次确认防止误删。
- 搜索过滤:通过关键词快速筛选会话列表。
- 批量操作:支持多选会话,批量执行归档、取消归档或删除。
安装与启用¶
通过官方命令安装插件:
dsh plugin --profile web add github:robin758/dsh-session-admin
安装完成后,必须重启 Web 服务以加载插件:
launchctl kickstart -k gui/$(id -u)/com.deepseek.dsh
典型用法¶
- 启动 DSH Web 服务。
- 进入 设置 → 会话管理 面板。
- 在顶部输入框输入关键词搜索会话,或直接勾选会话进行操作。
- 点击操作按钮对选中的会话执行归档、取消归档或永久删除。
HTTP API¶
插件提供 RESTful 接口,可用于脚本自动化或第三方工具集成。
| Method | Path | 说明 |
|---|---|---|
| GET | /plugins/dsh-session-admin/list |
列出磁盘上的全部会话(现存 + 归档) |
| POST | /plugins/dsh-session-admin/archive |
归档一个会话 |
| POST | /plugins/dsh-session-admin/unarchive |
取消归档一个会话 |
| POST | /plugins/dsh-session-admin/delete |
永久删除一个会话 |
| POST | /plugins/dsh-session-admin/batch |
批量归档 / 取消归档 / 删除 |
注意:变更类接口(POST 请求)仅接受同源请求(Origin 与 Host 一致),否则返回 403 错误。
配置与开发¶
插件支持通过 bundle patch 中的 config 字段进行覆盖(profile 层可再覆盖)。插件为纯 ESM 模块,无构建步骤,可直接运行。
注意事项¶
- 永久删除:删除操作为永久删除,不可恢复,操作前请确认。
- 服务重启:安装或更新插件后,必须执行
launchctl kickstart重启 Web 服务。 - 同源限制:变更类 API 限制了跨域请求,确保调用环境与 DSH Web 服务同源。