前言¶
DeepSeek Harness(DSH)插件生态强调模块化与灵活性,但对话本身通常是线性的。当你在工程任务中途想针对之前的某个回答进行追问,或者想回溯历史细节,选择往往比较局限:要么混入主对话,将无关问题污染任务上下文并随后的每一次请求;要么开启新会话,却丢失了让追问变得有意义的背景信息。
下面介绍 dsh-context-branch,它通过对话树的方式提供第三种选择。它允许你在对话的任意节点开启一个隔离的分支,既保留了必要的上下文,又不会干扰主对话的运行。
是什么¶
这是一个为 DeepSeek Harness Web 界面设计的上下文分支对话树插件。由用户 yummy4727 维护。它通过在 Web 界面中引入树状结构,让用户可以在对话历史中的任意一点创建独立的分支会话,实现真正的上下文隔离。
核心功能¶
该插件主要提供以下能力:
- 对话树视图:当前对话会以树形卡片展示,主对话向下延伸,分支向右生长。
- 任意深度的后续提问:分支的答案可以继续被分支,支持无限嵌套。
- 真正的上下文隔离:每个分支都是通过官方 Fork 机制创建的独立会话,而非简单的 Prompt 指令,保证了上下文的纯净。
- 只读分支:分支可以读取工作区内容,但不能修改工作区,防止在开发过程中干扰主对话的进行。
- 渐进式折叠:对于包含大量节点的深树,支持折叠与展开,保持界面整洁,折叠的分支仍会保持流式输出。
- 无干扰标准界面:插件不改变常规聊天视图、侧边栏或消息渲染,分支也不会出现在会话列表中。
- 重用缓存上下文:分支会继承主对话的请求前缀,利用模型提供者的缓存机制,避免重复读取基础历史。
安装与启用¶
在安装之前,请确认环境满足以下要求:
- DeepSeek Harness 版本:
0.1.0-rc.7(未修改版) - Node.js 版本:
22.19或更高 - 包管理器:
pnpm
安装步骤如下:
1、打开终端或命令行工具。
2、执行以下命令安装插件:
dsh plugin --profile web add dsh-context-branch
3、如果 DeepSeek Harness 的 Web 服务器正在运行,请重启该 Profile。
卸载时,执行:
dsh plugin --profile web remove dsh-context-branch
典型用法¶
安装并启用后,操作流程如下:
1、打开一个对话会话,在对话顶部的标题栏中选择 Tree View。
2、将鼠标悬停在已完成的助手消息上,点击出现的 Ask follow-up 按钮。
3、输入你的问题。问题会以卡片形式显示在对应答案的右侧,回复会生成在该卡片下方。
4、如果你想继续在这个分支内对话,点击最新答案卡片上的 Continue this branch。若需进一步隔离,可再次选择 Ask follow-up。
5、点击任意卡片即可阅读完整消息。利用搜索、聚焦、折叠、概览图和缩放控件来导航较大的树形结构。
6、当你想回到主任务时,随时切换回 Chat 模式。
适用场景与注意¶
适用场景:适合需要在长时间工程任务中频繁进行概念确认、参数调试或路径探索的用户。它允许你在不重置上下文的情况下,安全地展开探索性对话。
注意事项:
* 权限限制:分支是只读的,可以读取工作区但不能修改工作区。
* 列表不可见:分支不会出现在 DSH 的会话列表中。
* 数据安全:卸载插件只会移除插件的界面和服务,不会修改主对话内容,也不会删除分支历史记录。
结语¶
dsh-context-branch 通过树形结构解决了线性对话中上下文隔离的痛点。它既避免了主对话被无关问题污染,又防止了新会话因丢失上下文而浪费 Token。对于需要精细管理对话流程的开发者而言,这是一个实用的工具。
插件目录:https://www.skillhub.cn/plugins/yummy4727/dsh-context-branch
源码地址:https://github.com/yummy4727/dsh-context-branch