DeepSeek Harness Threads:侧边线程对话与可选 Slack 界面

前言

在 DeepSeek Harness(DSH)里做长对话时,常见做法是开新会话或从某轮「分支」,主聊天区会不断变长,追问某一条回答的上下文也容易和整段历史混在一起。若希望像 Slack 那样「在某条消息下开一条子讨论」,又不离开当前会话,就需要宿主支持会话分叉,并在界面上提供独立的线程面板。

下面介绍社区插件 DeepSeek Harness Threads(包名 dsh-threads,维护者 LeoAndJellyfish)。它在 DSH Web 界面(含官方桌面端内置 Web)加载,为每一轮已完成的回答提供「回复」入口,在右侧栏展开线程;并支持文字草稿持久化、线程列表导航,以及可选的 Slack 风格消息行。

这是什么

DeepSeek Harness Threads 是 DSH 的客户端类插件:声明平台为 web,通过 Cordis patch 注入会话分叉、右侧栏、聊天节点插槽和 Markdown 等宿主能力。Host 侧提供 /dsh-threads/store 路由,把线程索引、草稿和界面偏好写入 $DSH_HOME/dsh-threads/store.json。

与「整页新开一个会话」相比,线程是从锚定那一轮 fork 出的子会话(parentSession 指向主会话),继承到该轮为止的上下文;主界面仍保留原对话流,线程内容主要在右侧「线程」页签中查看与继续。

核心功能

独立线程面板

  • 从任意已完成回答分叉子会话;面板顶部引用被回复的那轮,下方为回复流与输入框。
  • 支持归档恢复:子会话在左侧栏被归档后,面板会禁用输入并提示,可一键恢复;草稿保留。
  • 工具审批与主界面共用 PendingApproval 状态,面板底部出现「允许一次 / 拒绝」卡片。
  • 助手回复使用宿主同一套 Markdown 渲染(CommonMark、KaTeX、代码高亮等)。

线程导航与状态

  • 锚定轮下方常驻「N 条回复」入口;标题栏「线程」按钮打开本会话线程列表(按最近更新排序)。
  • 列表与卡片展示回复条数、运行中/未读提示、最后更新时间;页签标题取被回复回答前 18 个字,便于多线程并行。

消息输入与草稿

  • 文字草稿在 Host 侧持久化,发送成功后清空;浏览器 localStorage 仅作同一次运行内的兜底。
  • 支持粘贴与拖拽图片(宿主默认:最多 20 张、单张 20 MB;过大图会在浏览器内缩放后以 WebP 发送)。
  • 可勾选「同时发到主对话」,线程消息带 [来自线程] 前缀写入父会话(会触发父 Agent 回复)。
  • 「带回主对话」把线程最后一条回答以引用块写入主对话输入框草稿,不自动发送。

可选 Slack 样式

对话标题栏提供 Slack 开关(role="switch")。开启后,user、assistant-step、steering 等节点改为头像 + 作者 + 时间的行样式;支持按天日期分隔、悬停操作条(复制、回复进线程、从该回答分支)、插话折叠行,以及 /goal 命令输入与结果卡片等。可随时切回宿主原生行样式。

与 Slack 概念的对应

Slack DSH
Channel 会话(Session)
一条消息 一轮对话(用户提问 + 助手回答)
Thread 从该轮 fork 的子会话
Thread 面板 右侧栏 thread 页签

发往线程的消息会带 <dsh-thread> 前缀,告知分叉 Agent 当前在侧边线程;面板展示时会剥除该前缀。

安装与启用

插件以当前 DSH 进程权限运行,安装前建议阅读仓库源码与 MIT 许可证。以下命令均来自项目 README。

Web 版(dsh web)

固定版本 v0.13.9:

dsh plugin --profile web add github:LeoAndJellyfish/DeepSeek-Harness-Threads#v0.13.9

安装开发分支当前版本:

dsh plugin --profile web add github:LeoAndJellyfish/DeepSeek-Harness-Threads

完成后重启 dsh web 并刷新浏览器。在一轮已完成回答下确认「回复」入口,在对话标题栏确认「线程」按钮及 Slack 样式开关。

官方桌面客户端

在桌面端会话中让宿主通过内置 plugin_manager 安装同一 GitHub 来源(README 提供了完整自然语言指令模板,目标版本 #v0.13.9)。桌面端使用 desktop profile;--profile web 仅用于独立 Web 版。按宿主提示重启后检查回复入口。

离线资源包

在 Release 下载 dsh-threads-0.13.9.tgz 后,于文件所在目录执行:

dsh plugin --profile web add ./dsh-threads-0.13.9.tgz

也可解压 ZIP,对含 package.json 的目录使用 file: 路径安装。Release 附带 SHA256SUMS 可供校验。

更新与卸载

更新时沿用原安装来源与目标版本,优先使用宿主插件管理界面的更新入口。线程与文字草稿位于 $DSH_HOME/dsh-threads/store.json,迁移前可备份。

Web 版卸载:

dsh plugin --profile web remove dsh-threads

早期本地包名 @local/dsh-threads 迁移到公开包 dsh-threads 前,应先通过对应 profile 移除旧注册再安装。

典型用法

经过安装并刷新页面后,可按 README 中的步骤操作:

  1. 将鼠标移到任意一条已完成回答底部的动作行,点击气泡图标「回复」。
  2. 右侧栏出现「线程」页签:顶部为被回复回答的引用,下方为回复流与输入框。
  3. 第一次发送时才真正创建线程——即从该轮分叉的子会话。
  4. 线程创建后,该轮下方会显示「N 条回复」,点击可回到对应线程页签。
  5. 需要总览时,使用对话标题栏的「线程」按钮打开列表并跳转。

若启用 Slack 样式,可在主对话区使用悬停操作条快速「回复进线程」或「从这个回答分支」。

适用场景与注意

适合谁: 需要在同一 DSH 会话里对单轮回答做多次追问、又不想把主聊天区拉得很长的开发者;习惯 Slack 线程交互、希望可选皮肤但不改宿主核心 UI 的用户。

运行条件: 插件依赖 DSH 的会话分叉、右侧栏、聊天插槽与 Markdown 模块;宿主大版本若调整这些接口或静态模块表(如 @deepseek-ai/dsh-client-ui-primitives),插件可能需要同步更新。

已知边界(摘自 README):

  • 线程继承锚点之前的完整上下文,连续回复时输入 token 会增大。
  • 线程面板主要渲染用户/助手文本;工具调用在面板中折叠为一行,不展示完整工具卡与轨迹。
  • 图片仅支持图片类型、暂存于内存,切换或重载后需重新粘贴;不支持通用文件上传。
  • Slack 皮肤替换了部分消息行,被替换行暂未提供宿主原有的编辑/重发交互(复制、回复、分支已补)。
  • 审批卡片仅支持「允许一次 / 拒绝」;持久权限策略仍由宿主处理。

社区插件目录 SkillHub 与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本插件是其中的客户端扩展之一。

结尾

DeepSeek Harness Threads 把「按轮分叉 + 右侧线程面板 + 草稿持久化」落到 DSH 上,并可选 Slack 风格界面,适合在主会话旁做聚焦追问。安装与问题反馈见 GitHub 仓库 与 v0.13.9 Release;目录介绍见 SkillHub 插件页。

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

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

小夜