前言¶
在 DSH Web GUI 中,連續工具調用可能佔用較多界面空間。dsh-toolfold 將連續工具調用摺疊爲一條可展開/收起的摺疊條,並對已完成的思考提供顯示控制。下面介紹它的核心行爲、安裝方式和設置項。
這是什麼¶
dsh-toolfold 是 DSH Web GUI 插件,維護者爲 Minecraftbe,許可證爲 MIT。
它不替換任何內置渲染器,卸載後界面完全恢復原樣。
核心功能¶
工具調用摺疊¶
- 連續工具調用自動摺疊,相鄰工具調用整段收起。
- 摺疊後僅顯示最後一個調用的摘要行,並標註摺疊數量。
- 點擊摺疊條可展開/收起工具調用卡片,鍵盤
Enter/Space同樣有效。
思考顯示¶
- 已完成的思考默認隱藏,可開啓「保留思考」保留。
- 「思考分隔調用組」默認開啓,已完成的思考把前後兩組工具調用隔開、各自獨立摺疊。
- 進行中的思考始終保持可見。
動畫與統計¶
- 支持彈性瀑布動畫,並在系統開啓「減少動態效果」時自動關閉動畫。
- 支持可選性能統計,在設置卡片內顯示插件各環節耗時。
安裝與啓用¶
使用以下命令安裝:
dsh plugin --profile web add dsh-toolfold
安裝後重啓 dsh 並刷新瀏覽器即可生效。
確認配置已生效:
dsh --profile web --dump-config
卸載:
dsh plugin --profile web remove dsh-toolfold
卸載後界面完全恢復原樣。
典型用法¶
設置入口:
設置 → 插件 → 工具摺疊
如果默認隱藏思考不符合預期,可在設置中開啓「保留思考」。
如果希望已完成的思考併入所在工具組一起摺疊,可關閉「思考分隔調用組」。
也可以手工編輯 ~/.dsh/settings.yaml 中的 toolfold 字段:
toolfold:
durMs:
keepThink:
splitThink:
stats:
其中:
durMs:展開動畫時長。keepThink:是否保留已完成的思考。splitThink:是否讓已完成的思考隔開前後兩組工具調用。stats:是否開啓性能統計。
如果沒有 DSH 設置服務,設置會退化爲 localStorage 鍵 dsh-toolfold.settings.v1。
如果瀏覽器不支持 MutationObserver 與 requestAnimationFrame,會退化爲初始渲染摺疊一次。
適用場景與注意¶
適合在 DSH Web GUI 中查看連續工具調用、並希望減少界面佔用的開發者。使用前注意:
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
package.json聲明 peerDependencies:@deepseek-ai/dsh-settings、schemastery。- 摺疊基於產品穩定的 DOM 渲染標記;若標記變動,最壞情況是摺疊停止生效,但不會破壞聊天。
鏈接¶
- 社區目錄:dsh-toolfold
- GitHub:dsh-toolfold