前言¶
DeepSeek Harness(DSH)的智能体开发中,会话管理容易变得零散:每个会话各自有信箱、需要区分活会话与归档、会话删除缺少统一入口。dsh-session-suite 把这些能力打包成一个插件,提供一个总信箱、一个心跳、一个会话中枢面板,以及按名投递、免辨活踢醒、会话导出导入等能力。
这是一个什么样的插件¶
dsh-session-suite 是一个为 DeepSeek Harness(DSH)设计的 Cordis 插件,由维护者 chc-1986 提供。它提供跨会话对话、目录即队列的信箱、会话工作区登记、会话中枢面板、会话导出/导入和信箱守卫(gatekeeper)等能力。当前状态为 beta(0.2.x),目标 DSH 版本为 >=0.2.1-0 <0.3.0。
核心功能¶
- 统一信箱 + 心跳:所有来信投到同一个目录;信箱守卫拦截垃圾、按名字分派;插件用 500 ms 轮询(心跳)把信送到目标会话,再把回执写回 outbox/;不需要为每个会话单设信箱,也不需要常驻服务或端口。
- 按名投递:talk_to_session 直接写会话名字(targetName)就能投;会话 ID 对用户隐藏,只有重名时才追问编号,且 30 分钟内记住选择。
- 免辨活踢醒:wakeable = 记录存在 && 未归档;未归档的会话可以直接唤醒派活,只有归档过的才踢不醒。
- 会话盘点与删除:session_probe 做全量盘点(含误建、被隐藏的会话);配合会话中枢面板的归档/软删除/回收站清空与宿主侧真删除,补上 DSH 官方“会话删不掉”的缺口。
- 会话导出/导入:将整个会话打包成 .zip(归档与回收站里的会话也能导出),导入时校验 manifest、日志完整性和 sessionId 格式,ID 冲突一律拒绝,不覆盖、不合并。
- 会话中枢面板:侧边栏入口 + 分组会话清单(重命名/归档/软删除),信箱守卫标签页(白名单、密码、守卫模型),信件标签页(回执、重发、统计)。
- 工作区注册:通过插件创建或后续附加的会话,根据 cwd 注册到对应 Workspace,在侧边栏正确分组。
- 工具函数:session_contacts、talk_to_session、steer_session、stop_session、session_handover、create_session、update_session、session_probe、session_host_probe、workspace_lookup、read_session_log 等。
安装与启用¶
使用官方安装命令即可完成安装:
dsh plugin add dsh-session-suite
插件声明了自己的 cordis.patch.yml 和浏览器端(./client),普通 dsh plugin add 即可,无需手动 wiring。
可选配置(写在 cordis.patch.yml 中):
- id: dsh-session-suite
name: "dsh-session-suite"
config:
writeEnabled: true # 跨会话写路径(默认 false)
dir: "" # 信箱根目录;空 = <DSH_HOME 或 ~/.dsh>/mailbox
pollMs: 500 # 心跳:扫描 inbox 的间隔
heartbeatMs: 1000 # 心跳:状态刷新间隔
allowTargets: [] # 建议显式填白名单(或使用 <dir>/allow.json)
secret: "" # 共享目录建议设置一个投递密钥
典型用法¶
-
发送消息到另一个会话:在控制台或脚本中使用 talk_to_session,指定会话名字。
-
会话导出:在会话中枢面板中选中会话,点击“导出”,会话目录被打包为 .zip,默认落在 ~/.dsh/exports/。
-
会话导入:在会话中枢面板顶部点击“导入会话包”,选择 .zip 文件,插件校验 manifest、日志完整性和 sessionId 格式后解压到临时目录,再原子重命名进 sessions/<编码工作区>/
/。 -
信箱协议:将 JSON 文件放入
/inbox/,插件将其移动到 processed/ 并在 outbox/ 写入回复。示例请求:
{ "target": "<session name or id>", "message": "hello", "from": "my-app", "id": "req-0001" }
适用场景与注意¶
适合需要统一管理多个会话、需要按名投递消息、需要盘点与删除会话、需要会话导出/迁移的开发者。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。
结尾¶
dsh-session-suite 通过统一信箱、按名投递、免辨活踢醒、会话盘点与删除、会话导出/导入和会话中枢面板,为 DSH 提供了一套会话管理的完整路径。插件当前为 beta(0.2.x),目标 DSH 版本 >=0.2.1-0 <0.3.0。目录页:https://www.skillhub.cn/plugins/chc-1986/dsh-session-suite,GitHub:https://github.com/chc-1986/dsh-session-suite。