dsh-turn-collapse
面向 DeepSeek Harness Web UI 的 Codex 式 turn 级折叠插件:将两段实际输出之间的思考链与工具调用折叠为单个可展开单元(三角箭头切换)。
English | 中文
功能
DSH 默认聊天流中,每个 assistant turn 的思考(Think 行)与工具调用是各自独立折叠的。本插件按 Codex 方式将它们分组折叠:
[▶ 思考与工具 · 5 项] ← 折叠条:两段实际输出之间的一切(思考 + 工具调用)
文字输出 1
[▶ 思考与工具 · 3 项]
文字输出 2- 每个输出间隙(输入 → 首个输出、输出 → 输出、……)生成一个折叠条
- 默认折叠;点击展开整组(组内原生
Think行与ToolRow仍可单独使用) - 展开/收起状态按会话持久化(
localStorage) - 视觉完全复用 DSH 设计令牌(
--dsw-alias-*),与原生头部行风格一致
安装
git clone https://github.com/mctang985211-coder/dsh-turn-collapse
cd dsh-turn-collapse
dsh plugin --profile web add link:$(pwd)
# 重启 dsh web(浏览器硬刷新)工作原理
纯客户端插件。通过 MutationObserver 监听会话滚动容器([data-conversation-scroll]),按聊天流节点重建折叠组:
- 节点类型来自
data-chat-flow-kind(assistant-step、tool-call等) - 思考行通过
data-variant="think"在 assistant-step 节点内定位 - 节点在剥离思考行与工具链后仍含文本时判定为可见输出
- 连续的非输出元素(纯思考的 assistant-step + tool-call 节点)组成一个折叠组;折叠条插入组首元素之前
React 重渲染由 reconcile 重跑兜底;组的开合状态经 localStorage 跨重渲染与刷新保持。
无宿主代码、无服务器、无 API 面。
许可证
MIT