dsh-thought-fold:DeepSeek Harness 的原生执行过程折叠与样式增强插件

前言

DeepSeek Harness (DSH) 在处理长任务或高频代码重构时,中间的思考过程与工具调用往往会占据大量屏幕空间。这使得阅读核心结论和与输入区交互变得困难,阅读节奏容易被打断。

dsh-thought-fold 是一个用于解决这一问题的插件。它通过折叠长过程、整理中断状态以及提供随行浮动收起功能,让长对话更易阅读,同时保持数据完整性和零指令侵入。

插件概览

该插件由 new-Beginner 维护,属于客户端类别,采用 MIT 许可证。它不涉及模型提示词注入,也不改写消息 DOM 或破坏 React 节点生命周期,仅作为 UI 增强层运行。

核心功能

  1. 长过程智能收起
    默认自动折叠已完成的思考与工具调用。用户消息、最终回答与关键状态提示始终完整保留。在加载老会话或历史延迟补载时,同样自动生效。需要细节时,可一键展开。

  2. Codex 两级折叠
    运行期间,普通正文持续实时显示,默认每段正文之间只有一个“过程”入口。原生思考摘要、工具调用、上下文等非正文过程默认统一收起。展开长内容后,默认限高并可内部滚动。

  3. 中断过程安全整理
    当任务手动停止、出错或触达长度限制时,插件会自动整理已结束的过程内容,完整保留中断前最后输出的有效正文卡片与错误状态,避免误判断网等待或重试。

  4. 双端收起与随行浮动
    展开过程底部设有“收起过程”按钮。当过程较长被输入框遮挡时,唯一的浮动收起按钮会自适应吸附在输入区上方。多轮同时展开时互不冲突。

  5. 状态持久且完全可恢复
    页面重绘、窗口尺寸变化不会打乱用户手动展开的选择。原生紧凑与标准模式切换双向保留选择状态。停用插件时即刻撤销所有显示代理,零残留。

  6. 纯 UI 增强,零指令侵入
    不向模型注入任何 System Prompt,完全遵循模型原有习惯。仅使用安全的 CSS 标记与局部会话作用域观察,不扫描 document.body。

安装与启用

在终端中执行以下命令即可安装该插件(以桌面端为例):

dsh plugin --profile desktop add github:new-Beginner/dsh-thought-fold

安装完成后,需要重启 DeepSeek Harness 才能生效。

配置与用法

设置面板

插件会在 DeepSeek Harness 的设置中心注入专属管理页。你可以在此直接控制插件、视觉增强以及思考与工具的默认折叠状态。

配置项

通过 settings.yaml 文件或设置面板进行配置,支持以下选项:

dsh-thought-fold:
  enabled: true        # 启用插件核心功能
  showLiveHud: true    # 开启视觉增强样式
  foldReasoning: true  # 默认收起思考(包括原生思考摘要)
  foldTools: true      # 默认收起工具、上下文等其他非正文过程
  foldStyle: codex     # 按钮外观风格:codex | minimal | clean

快捷指令

在输入框中可直接使用斜杠指令进行控制:

  • /fold status:查看插件当前启用状态、HUD 样式与外观模式。
  • /fold toggle:一键切换插件的开启与关闭。
  • /fold help:查看指令帮助说明。

技术细节与质量

  • 环境要求:需要 Node.js >= 20.0.0。
  • 架构设计:采用会话插槽挂载,不破坏 React 节点生命周期。
  • 测试覆盖:包含 26 项 Node.js 测试(涵盖完成态总包络判定、设置异步生命周期等)与 42 项真实 Edge 浏览器测试(涵盖真实 React 18 节点挂载、流式外露与准确计时等)。
  • 可搜索隐藏:兼容折叠采用 hidden="until-found" 机制,折叠状态下依然支持浏览器原生 Ctrl + F 查找。

适用场景与注意

该插件适合处理长任务、高频代码重构或多轮工具调用的场景。使用前请确认插件以当前 DSH 进程权限运行,并建议检查源码与许可证。

结语

dsh-thought-fold 提供了一种克制且可恢复的思考与工具过程折叠方案。它通过 UI 层面的优化,解决了长对话阅读困难的问题,同时保持了与宿主系统的低耦合。

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

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

小夜