dsh-baize-session: Moving Context Between DSH Sessions

DeepSeek Harness (DSH) 采用插件化架构。在实际使用中,常会遇到需要将一个对话中的特定消息提取出来,放入另一个对话继续,或者需要将某个工作区的对话整理归档的情况。dsh-baize-session (Baize) 专门解决这类跨对话上下文迁移与工作区管理问题。

这是一个用于 DeepSeek Harness (DSH) 的插件。它的核心功能是从当前对话中提取消息,并将其移动到另一个对话中(可以是当前工作区的现有对话,也可以是不同工作区的新对话)。同时,它也提供了一个工作区对话管理面板,支持归档、恢复、移动和删除对话。

核心功能

  • 跨对话移动上下文:支持从当前对话提取消息,追加到新对话或现有对话。
  • 跨工作区支持:可以在不同工作区之间移动上下文。
  • 对话管理:提供一个工作区面板,管理所有对话(包括归档),支持批量操作。
  • 灵活的选择方式:可以在对话列表中勾选,也可以在回复旁的 + 按钮直接抓取内容。
  • 命名与标识:选择目标对话时显示名称而非 ID;消息行按作者(USER/ASSISTANT/CONTEXT/TOOL)标记。
  • Token 预算:在写入前估算 Token 数,超过限制会拒绝写入。

安装

通过 npm 安装到 web profile:

dsh plugin --profile web add dsh-baize-session@0.1.2

安装完成后需要重启 DSH 进程以加载插件。

使用方法

  1. 打开任意一个对话。
  2. 点击聊天视图旁边的 Tidy 标签页。
  3. 在该面板中,选择目标工作区和目标对话(可以是“New conversation”)。
  4. 勾选需要迁移的消息行。
  5. 点击 Relocate 按钮。

注意事项

  • 消息重写:选中的消息会被重写为一段文本插入到目标对话的开头,而不是作为事件重放。
  • 必须选中:如果不做任何选择,插件不会写入任何内容。
  • 删除限制:对话必须先归档才能被删除,且已归档的对话无法被移动。
  • 无本地状态:插件自身不维护磁盘上的状态文件,所有数据操作均由 DSH 处理。

总结

Baize(白泽)寓意通晓万物。对于需要频繁整理上下文、跨工作区复用内容的场景,这个插件提供了一个轻量且可控的方案。更多细节可参考 GitHub 源码:https://github.com/bvcvb/dsh-baize-session

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye