前言¶
用 DeepSeek Harness(dsh)跑智能体时,主会话往往已经堆了很长的任务上下文:读过哪些文件、改过哪段代码、下一步要提交什么。这时突然想确认「这个目录里哪个文件最大」,或者想单独分析一段事件流,如果直接把问题丢进主对话,答案会进模型上下文,后续回合很容易被带偏。
OpenAI Codex 用 /side 开持续性侧会话,Claude 用 /btw 做一次性旁问,思路都是:旁路提问,主线程不动。社区插件 dsh-sidechain 把这两类命令接到了 dsh 上:在当前会话的临时 fork 里跑侧链,主会话历史保持不变。
DeepSeek Harness 的核心理念是「一切皆插件」。本文介绍的目录页来自社区站点 DeepSeek Harness 插件库,它和 DeepSeek / 幻方没有官方从属关系,不是官方应用商店。下文按该目录详情页、GitHub 仓库 README / package.json / dsh.plugin.json,以及 deepseek-ai/deepseek-harness 交叉核对,整理这个插件是什么、怎么装、怎么用。
这是什么¶
dsh-sidechain 是一款会话与消息类插件,由 GitHub 组织 omdsh-dev 维护,仓库地址是 omdsh-dev/dsh-sidechain。npm 包名为 @dsh-external/dsh-sidechain,当前版本 0.6.4,许可证 BSD-3-Clause,主要语言 TypeScript。2026-08-18 打开 GitHub 时显示 9 颗星;社区目录页同期仍显示 6 颗星,以仓库页面为准。
它要解决的问题很具体:在不中断、不污染主会话的前提下,再开一条侧问或可持续追问的子会话。实现方式是 fork 当前会话,得到独立子会话。侧会话继承主会话里已经完成的回合作为参考上下文,但拥有自己的消息记录和工具执行过程;提示、思考、工具调用和回答都不会进入主会话的模型上下文。Web UI 里会在右侧打开侧链面板,主会话界面保持原样。
dsh.plugin.json 声明的引擎范围是公开版 DSH 0.0.1-rc.5 或 ^0.1.0-rc.6。仓库 README 写明当前版本按这两档适配,开发依赖固定到 0.1.0-rc.6。目录页「更多介绍」仍只写到 rc.5,应以仓库 dsh.plugin.json 和 README 为准。
核心功能¶
插件对外暴露三条斜杠命令:
| 命令 | 用途 |
|---|---|
/btw <问题> |
一次性侧问,适合快速确认信息 |
/side <问题> |
创建可持续追问的侧会话 |
/side list |
列出当前会话的直接子代理 |
/btw 对标 Claude 风格的一次性旁问:命令立刻返回,侧链面板自动打开,后台跑完单轮问答。这条线程是只读的,不能继续追问。主会话在它跑的时候仍可继续用。
/side 对标 Codex 风格的持续性侧会话:面板打开新线程后,在线程底部输入消息并按 Enter,就可以接着聊。/side 和 /btw 都必须带上问题;README 写明当前 subagent API 不支持先建空线程、再等第一次输入。
右侧面板是这个插件的主要界面。会话标题栏有侧链按钮;快捷键是 Ctrl/Cmd+Shift+E。面板可以拖拽调宽、展开、手动刷新。列表里会显示当前会话的直接子代理,以及类型、标题、运行状态和活动摘要。选中一条线程后,时间线里能看到:
- 用户消息与模型回答
- 上下文注入与模型思考
- 工具调用、结果和错误
- Markdown、代码块、表格与公式
子会话历史会持久化,重启 DSH 之后仍可查看。面板只读取子会话日志,不会切换或激活主会话里的当前对话。
隔离边界也写在 README 里,需要单独记住:
- fork 不包含父会话正在进行的那一轮。
- 继承内容只作参考,boundary 之后的消息才是侧会话的当前任务。
- 侧会话的消息、工具活动和回答留在子会话中,不会作为用户消息或子代理通知写回主会话。主会话只保留「创建侧会话」这条命令的结果。
- 默认 persona 偏向非破坏性探索:不会主动改文件、请求提权、再创建子代理,或向父会话汇报。用户如果在侧会话里明确要求修改,实际权限仍由 DSH 的 sandbox 和工具配置决定。
可选配置项如下(均来自仓库 README):
| 配置项 | 默认值 | 说明 |
|---|---|---|
providerName |
fork |
用来创建子会话的 subagent provider |
persona |
内置侧会话 persona | 侧会话行为约束;空字符串表示沿用部署 persona |
readOnlyTools |
未设置 | 可选工具 allow-list,例如 ['read', 'grep', 'glob'] |
安装与启用¶
社区目录页给出的安装命令如下,在 DeepSeek Harness 终端里运行即可:
dsh plugin add github:omdsh-dev/dsh-sidechain
目录页同时说明:如需可复现安装,可固定 commit 哈希。2026-08-18 核实时,仓库 master 最新提交是 b56038b22e037c52b189cef37f96702ab307bf3c(提交说明为支持官方 DSH rc.6):
dsh plugin add github:omdsh-dev/dsh-sidechain#b56038b22e037c52b189cef37f96702ab307bf3c
仓库 README 有两点补充,安装前值得看一眼。
第一,这个插件依赖 DSH 自带的 dsh-subagent、dsh-subagent-fork 和 dsh-commands。默认 Web profile 已经包含这些依赖。package.json 里也把客户端平台写成了 web,会向 Web UI 注入侧链面板。因此装到网页界面时,更稳妥的是带上 --profile web:
dsh plugin --profile web add github:omdsh-dev/dsh-sidechain
README 原文里的 GitHub 路径写成了 github:Buyi-wsgzg/dsh-sidechain。该路径对应另一份同名仓库,最近向 omdsh-dev/dsh-sidechain 提交代码的作者也是 Buyi-wsgzg,两边内容接近。本文介绍的是目录收录、由 omdsh-dev 维护的这一份,安装命令以目录页的 github:omdsh-dev/dsh-sidechain 为准。
第二,pnpm 10 及以上首次安装 Git 依赖时,可能会提示允许执行 prepare。按命令输出把插件键加入 Web profile 的 pnpm-workspace.yaml,再重新执行安装命令。插件会向 Web profile 写入类似下面的配置层:
- insert:
- id: dsh-sidechain
name: '@dsh-external/dsh-sidechain'
需要限制侧会话只用只读工具时,可以在同一层加上 config:
- insert:
- id: dsh-sidechain
name: '@dsh-external/dsh-sidechain'
config:
providerName: fork
readOnlyTools:
- read
- grep
- glob
安装或更新代码后,重启 dsh web 并刷新页面。卸载命令在 README 中是:
dsh plugin --profile web remove @dsh-external/dsh-sidechain
它会同时去掉 profile 依赖和插件配置层,完成后同样需要重启 dsh web 并刷新。
目录页和 README 都提醒:插件以当前 dsh 进程的权限运行,安装时可能执行代码。装之前应检查源代码仓库和许可证。
典型用法¶
一次性侧问,适合那种不想写进主会话的确认:
/btw 这个目录下哪个文件最大?
命令会马上返回。侧链面板打开后,可以看到执行过程和答案。这条线程不能追问;还要继续挖,改用 /side。
持续侧会话:
/side 分析一下当前插件的事件流
面板会打开新线程。在底部输入框发后续消息即可。主会话可以继续原来的任务。
查看当前会话下已经挂上的直接子代理:
/side list
注意:/side list 和侧栏列出的是当前会话的全部直接子代理,不限于本插件创建的线程。如果同时装了其他会 fork 子会话的插件,列表里也会出现它们。
适用场景与注意事项¶
比较适合这些情况:
- 主会话正在改代码或写方案,只想旁路确认一个事实,答案不必进主上下文
- 需要单独分析事件流、目录结构或某段实现,并可能追问几轮
- 使用 DSH Web UI,希望在右侧面板里看侧链的思考、工具调用和回答,而不是把主对话切走
使用前注意下面几条,均来自目录页或仓库说明,不是额外发挥:
- 先核对 DSH 版本。 当前适配
0.0.1-rc.5和0.1.0-rc.6。DSH 仍处于 developer preview,核心插件和 API 还会变,升级前应再看仓库engines字段。 - 侧链不是空会话。
/side必须带首个问题;fork 也不包含父会话正在进行的回合。 /btw只有一轮。 只读、不能续聊。需要多轮就用/side。- 默认 persona 不等于零权限。 它约束的是侧会话「不会主动破坏」;用户明确要求改文件时,仍走 DSH 的 sandbox 和工具策略。若希望侧问尽量只读,用
readOnlyTools收紧 allow-list。 - 这是社区插件,不是官方应用。 发现渠道是独立目录站和 GitHub topic
dsh-plugin。安装前读源码和 BSD-3-Clause 许可证;需要可复现环境时固定 commit,而不是长期追踪浮动的默认分支。 - Web 界面是一等能力。 侧链面板、快捷键和实时摘要都挂在 Web profile 上。只在纯终端环境里装,README 描述的右侧面板将不可用。
小结¶
dsh-sidechain 把 Codex 的 /side 和 Claude 的 /btw 接到 DeepSeek Harness:用 fork 开独立子会话,主会话的模型上下文不被侧问污染。一次性确认用 /btw,需要追问用 /side,列表和面板用来查看子代理状态。对已经在 Web UI 里跑长任务、又经常需要旁路提问的人,它补的是会话隔离,而不是新的模型能力。
参考地址:
- 社区目录页:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-sidechain/
- GitHub 仓库:https://github.com/omdsh-dev/dsh-sidechain
- DeepSeek Harness:https://github.com/deepseek-ai/deepseek-harness