前言¶
DeepSeek Harness (DSH) 在处理长任务或高频代码重构时,中间的思考过程与工具调用往往会占据大量屏幕空间。这使得阅读核心结论和与输入区交互变得困难,阅读节奏容易被打断。
dsh-thought-fold 是一个用于解决这一问题的插件。它通过折叠长过程、整理中断状态以及提供随行浮动收起功能,让长对话更易阅读,同时保持数据完整性和零指令侵入。
插件概览¶
该插件由 new-Beginner 维护,属于客户端类别,采用 MIT 许可证。它不涉及模型提示词注入,也不改写消息 DOM 或破坏 React 节点生命周期,仅作为 UI 增强层运行。
核心功能¶
-
长过程智能收起
默认自动折叠已完成的思考与工具调用。用户消息、最终回答与关键状态提示始终完整保留。在加载老会话或历史延迟补载时,同样自动生效。需要细节时,可一键展开。 -
Codex 两级折叠
运行期间,普通正文持续实时显示,默认每段正文之间只有一个“过程”入口。原生思考摘要、工具调用、上下文等非正文过程默认统一收起。展开长内容后,默认限高并可内部滚动。 -
中断过程安全整理
当任务手动停止、出错或触达长度限制时,插件会自动整理已结束的过程内容,完整保留中断前最后输出的有效正文卡片与错误状态,避免误判断网等待或重试。 -
双端收起与随行浮动
展开过程底部设有“收起过程”按钮。当过程较长被输入框遮挡时,唯一的浮动收起按钮会自适应吸附在输入区上方。多轮同时展开时互不冲突。 -
状态持久且完全可恢复
页面重绘、窗口尺寸变化不会打乱用户手动展开的选择。原生紧凑与标准模式切换双向保留选择状态。停用插件时即刻撤销所有显示代理,零残留。 -
纯 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 层面的优化,解决了长对话阅读困难的问题,同时保持了与宿主系统的低耦合。