dsh-turn-collapse:DeepSeek Harness 的 Codex 風格層級摺疊插件

在 DeepSeek Harness (DSH) 的默認 Web UI 中,每個助手回覆都會將推理(Think 行)和工具調用渲染爲單獨的可摺疊行。這導致對話流中出現許多嵌套的可摺疊項,視覺上較爲分散。dsh-turn-collapse 插件模仿 Codex 的風格,將可見輸出之間的推理和工具調用分組爲單個摺疊單元,使對話流更加清晰。

插件簡介

這是一個由 mctang985211-coder 維護的純客戶端插件,旨在通過將思考鏈和工具調用摺疊在可見文本輸出之間,來簡化 DSH Web UI 中的對話流。它重用 DSH 的設計令牌,確保視覺風格與原生 UI 保持一致。

核心功能

  • Codex 風格的層級摺疊:將推理和工具調用分組在可見輸出之間。
  • 統一折疊條:在每兩個可見輸出之間插入一個摺疊條。
  • 默認摺疊:摺疊條默認爲摺疊狀態,點擊三角形即可展開。
  • 狀態持久化:摺疊/展開狀態按會話在 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)

安裝完成後,必須對瀏覽器進行硬刷新才能使插件生效。

使用方法

在啓用插件後,對話流中的界面結構會發生變化。每個可見輸出(文本內容)與下一段可見輸出之間的所有推理(Think 行)和工具調用(ToolRow)會被包裹在一個摺疊條中。

界面示意如下:

[▶ 思考與工具 · 5 項]    ← 摺疊條:兩段實際輸出之間的一切(思考 + 工具調用)
文字輸出 1
[▶ 思考與工具 · 3 項]
文字輸出 2
  • 展開/摺疊:點擊摺疊條上的三角形圖標,可以展開或摺疊該組內容。
  • 內部可用性:在展開狀態下,內部的原生 Think 行和 ToolRow 仍然保持其原有的可摺疊和交互功能。

技術細節

  • 純客戶端實現:插件不包含任何主機端代碼,無服務器,無 API 表面。
  • 渲染處理:通過 MutationObserver 監聽對話滾動容器 ([data-conversation-scroll]),並執行 reconcile pass 來處理 React 重渲染。
  • 數據來源:流節點類型通過 data-chat-flow-kind 識別(如 assistant-step、tool-call),推理行通過 data-variant="think" 定位。

適用範圍與注意

  • 適用場景:適合希望在 DSH Web UI 中獲得類似 Codex 體驗、希望減少視覺雜亂的智能體開發者。
  • 權限與安全:由於是純客戶端插件,運行在當前 dsh 進程的瀏覽器沙箱內,無需擔心後端權限泄露。但安裝前建議檢查源碼與許可證(MIT)。
  • 注意事項:插件依賴 DSH 的設計令牌和 DOM 結構,升級 DSH 版本後可能需要重新檢查兼容性。

總結

dsh-turn-collapse 通過簡單的摺疊邏輯,解決了 DSH 默認輸出流中可摺疊元素過多的問題。它通過 localStorage 維護狀態,並在 React 重渲染中保持穩定,是優化 Web UI 可讀性的實用工具。

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

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

小夜