DSH-Session-Move
在终端中运行以下命令:
dsh plugin install kirkchinese/DSH-Session-Move
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 中执行 dsh plugin install kirkchinese/DSH-Session-Move 即可安装,插件源码位于 https://github.com/kirkchinese/DSH-Session-Move
插件介绍
DSH 工作区一旦建好,冷会话就被锁死在所属工作区里——想调整布局或合并项目,只能重建会话、丢失全部上下文。DSH-Session-Move 补上了这块缺口:它让一条已有冷会话带着完整的 SessionId、事件历史和外部引用,从一个工作区无缝迁移到另一个,迁移后未来的工具、沙箱策略和指令上下文会自动切换到目标工作区,而历史事件原封不动。
核心能力分两层。只读巡检(inspect)会在不产生任何写入的情况下,汇报源与目标工作区的身份、JSONL 位置、不可变头信息、持久化修订号、物理与逻辑事件数量、连续序号边界、SHA-256 校验值,以及所有稳定阻断条件(如 live 会话、归档、同工作区、目标冲突等)。完整的迁移路径则通过类型化 Host RPC 注册为唯一的冷会话 mover,执行后由注册表校验提交、发出权威的 session-moved 帧,客户端同步替换工作区快照;中断时由持久化日志恢复 cwd、回滚消息反馈并重建工作区计数,删除日志前还会校验最终头信息、唯一 workspace owner 和事件哈希。
适合正在重组 DSH 工作区结构的深度用户。完整拖拽迁移需要基于精确公开基线加绑定的补丁序列自行构建 DSH;在未打补丁的官方 rc.6 上,插件退化为只读巡检服务,所有实际移动会被拒绝。首个版本仅支持 POSIX JSONL 冷会话,SQLite 与 Windows 迁移已列入后续规划。
使用场景
- 重组工作区结构时,将冷会话从旧工作区迁移到新的项目工作区
- 合并多个工作区前,先只读巡检确认会话状态无阻断再执行迁移
- 开发调试中需要在不同工作区间切换会话上下文而不丢失事件历史
适合人员
- 管理多个 DSH 工作区、需要频繁重组布局的深度用户
- 基于 DSH 公开基线加补丁序列构建自定义运行时的高级开发者
- 希望在不重建会话的前提下调整项目结构的技术负责人