dsh-assist-chat:在右侧栏 fork 会话,追问不打断主线

前言

在 DeepSeek Harness(DSH)里用智能体做长任务时,主会话往往已经堆了上下文:当前任务、刚改的文件、刚出现的报错。此时若临时想问一句「这个错误什么意思」「这个函数是干什么的」,常见做法只有两种:新开一个会话(要重新讲一遍背景),或在主线程里直接问(问答会写进即将交接的 transcript,还容易把 agent 带偏)。

dsh-assist-chat 提供第三种方式:在右侧 dock 打开一条与当前主会话 fork 出来的旁支对话,旁支继承打开瞬间的全部上下文,且与主线程 transcript 完全隔离。思路与 ZCode 的 side chat 类似——右侧标签页、真实并行会话,而不是模态框,也不占用主区域。

这是什么

dsh-assist-chat 是 DSH 的客户端插件(仅 client API,无 host 侧代码、不 patch DSH 本体文件),由维护者 sleep123937 发布,源码与说明见 GitHub 仓库,社区目录页:skillhub.cn/plugins/sleep123937/dsh-assist-chat。插件在会话标题栏提供 Side chat 入口,在右侧 dock 挂载产品自带的 Conversation 界面(流式输出、Markdown、工具卡片、审批、Stop、输入框等与主会话一致),而不是自绘一套聊天 UI。

核心功能

下面介绍 README 中已说明、且与实现一致的能力。

分支而非空白会话

每次打开 Side chat,都会对当前屏幕上的主会话做一次 fork(sessions.fork),旁支里已有 fork 之前的全部消息,无需从零复述任务背景。

与主线程隔离

旁支是独立的 Session、独立的 agent、独立的 transcript;你在旁支里的提问与回答不会写入主会话。主线程在字节级别上保持不变。fork 是快照:旁支不会自动同步你之后在主线程里新发的内容;若需要更新后的上下文,应关闭标签页后重新打开 Side chat。

原生对话表面

面板通过 renderFactorySlot("conversation.content", …) 挂载 DSH 内置对话组件(variant: "embedded"),行为与主区域一致。

与会话绑定的生命周期

  • 每个主会话对应自己的旁支:在看会话 A 时,不会出现会话 B 的 Side chat。
  • 标签页打开期间旁支保持(切换标签或折叠 dock 仍存活);关闭标签页后释放并归档旁支。
  • 旁支在左侧会话列表中故意隐藏(仍是有写权限的真实 Session);关闭标签后归档。FAQ 说明:若旁支已被归档但标签仍开着,DSH 可能静默拒绝 model step,此时可重新打开标签。

多标签

右侧 dock 支持多标签与分屏;每个旁支与其 fork 来源的主会话绑定。

安装与启用

插件以当前 DSH 进程权限运行;安装前建议浏览仓库源码与 MIT 许可证。兼容 DeepSeek Harness >= 0.2.0(package.json 中 engines.dsh);README 写明在 0.2.1-rc.3、desktop profile 上测试过。Node 需 >= 20(开发/校验脚本用,普通用户按 DSH 文档使用即可)。

官方安装方式如下(三选一):

# from npm (recommended)
dsh plugin --profile desktop add dsh-assist-chat

# or straight from the repository
dsh plugin --profile desktop add github:sleep123937/dsh-assist-chat

# or point at a local checkout
dsh plugin --profile desktop add link:/absolute/path/to/dsh-assist-chat

若使用浏览器构建,将 --profile desktop 换成 --profile web。安装后需重启 DeepSeek Harness,Side chat 按钮才会出现在会话标题栏。

当前 npm 包版本为 0.1.1(以 package.json 为准)。

典型用法

  1. 在主会话中照常与 agent 协作,积累任务与上下文。
  2. 点击会话标题栏中的 Side chat 按钮。
  3. 右侧 dock 打开 Side chat 标签,其中已是当前主会话的 fork 副本。
  4. 在旁支中提问(例如解释报错、评估某思路是否可行);回答基于 fork 时刻的完整上下文。
  5. 用完后关闭该标签;主会话 transcript 不受影响。

适用场景与注意

适合:长任务中需要临时追问、又不想污染主 transcript 或打断主 agent 流程的 DSH 用户;习惯 ZCode 式右侧辅助对话的开发者。

注意:

  • 旁支不会跟踪主线程后续消息;需要新上下文时请关闭后重新打开 Side chat。
  • 左侧列表里找不到旁支 Session 是设计行为,不是安装失败。
  • 社区目录(skillhub.cn)为独立站点,与 DeepSeek / 幻方无官方从属关系;插件亦非 DSH 官方内置功能,属社区「一切皆插件」生态中的客户端扩展。

问题反馈可通过 GitHub Issues(含 bug / feature 模板),或邮件 zousleep@163.com。

结尾

dsh-assist-chat 把「有上下文、又不弄脏主线程」的追问收进右侧 dock:fork 当前会话、独立 Session、原生聊天界面。若你在 DSH desktop 或 web 上需要 Side chat,可按上文命令安装并重启客户端。

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

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

小夜