前言¶
在使用 DeepSeek Harness (DSH) 进行长对话或多轮开发时,随着上下文的累积,对话可能会偏离主题或消耗大量 token。当需要回到对话的某个早期节点重新开始,或者将当前思路“分叉”出去,同时保留原始对话记录时,手动复制粘贴历史记录往往效率低下且容易出错。dsh-rewind 插件通过命令行交互,解决了这一痛点。
插件简介¶
dsh-rewind 是 DeepSeek Harness 的一个 /rewind 插件,由 jiangr100 维护,属于“记忆”类别。它的核心功能是在对话中回溯到任意历史消息,并在该节点创建一个新的干净会话,同时自动归档原始对话,从而减少上下文污染。
核心功能¶
该插件主要提供以下能力:
- 消息选择器:通过
/rewind命令打开选择器窗口,默认定位到最近的消息。 - 会话分叉:在选定的历史消息处创建新的干净会话,并自动切换到该会话。原始对话被自动归档,可从侧边栏恢复。
- 上下文清理:分叉后的新会话会移除选定消息之后的所有上下文,有效减少上下文污染。
- 交互操作:支持通过
Esc键、点击✕按钮或点击窗口外部区域关闭选择器。
安装与启用¶
前置要求¶
- 已部署 DeepSeek Harness(web profile 布局,目录通常为
$DSH_HOME/profiles/<name>)。 - 系统环境变量 PATH 中包含
pnpm。
推荐安装方式¶
推荐使用插件包安装,这会自动完成挂载配置:
dsh plugin --profile web add github:jiangr100/dsh-rewind
安装完成后,重启 Harness 即可生效。
手动安装方式¶
如果需要手动控制,请按以下步骤操作:
# 1. 进入 profile 目录
cd "$DSH_HOME/profiles/web"
# 2. 安装包
pnpm add github:jiangr100/dsh-rewind
# 3. 编辑 cordis.patch.yml 文件
# 添加以下内容:
# - insert:
# - id: dsh-rewind
# name: dsh-rewind
# 4. 重启 Harness
典型用法¶
- 在对话输入框输入
/rewind并回车,选择器窗口将出现在输入框上方。 - 向上滚动对话列表,点击任意消息行。
- 窗口关闭,界面自动切换到新的分叉会话,原始对话被归档。
- 使用
Esc、✕或点击外部区域关闭选择器窗口。
注意事项¶
- 插件以当前 DeepSeek Harness 进程的权限运行,请确保对插件源码和许可证(MIT)有充分了解后再安装。
- 安装前请检查环境变量中是否配置了
pnpm,因为dsh plugin命令依赖它。
总结¶
dsh-rewind 为 DSH 用户提供了一个简洁高效的对话管理工具。通过 /rewind 命令,你可以轻松实现会话的回溯与分叉,既保证了新会话的干净,又保留了原始对话的存档。这对于进行长周期开发、多思路验证或需要频繁重置上下文的场景非常有用。