dsh-compact-activity:讓 DSH 的過程記錄更緊湊

前言

DSH 運行任務時,經常會出現連續的思考與工具調用。這些信息在排查過程時有用,但在 Web 頁面裏逐條展開會拉長滾動區域,也會讓模型最終輸出更難快速定位。

dsh-compact-activity 是一個 DSH 插件,目標是把連續的思考和工具調用收進一個單行摺疊項:默認保持收起,需要查看細節時再展開,同時保持模型最終輸出正常顯示。

該插件由 wallpap 維護,GitHub 倉庫爲:

https://github.com/wallpap/dsh-compact-activity

它只調整 Web 界面的展示方式,不修改模型上下文、會話日誌或工具執行。

插件做什麼

下面介紹這個插件已經明確的幾項能力:

  • 將連續的思考和工具調用收進一個單行摺疊項。
  • 默認保持收起,需要查看細節時再展開。
  • 模型最終輸出始終正常顯示。
  • 即時顯示執行狀態、計數和最後一項活動摘要。
  • 對過程中的失敗步驟單獨計數。
  • 識別 PWSHBash 等終端工具的非零退出碼或終止信號。
  • 最後一個過程項失敗或中斷時顯示“執行錯誤”,正常結束時顯示“已完成”。
  • 總摺疊的狀態和計數文案跟隨 DSH 的語言設置,支持中文和 English
  • 插件只調整 Web 界面的展示方式,不修改模型上下文、會話日誌或工具執行。

安裝前提

先確認使用環境,再執行安裝命令。

DSH Desktop

適用於 DSH Desktop 2.0.3。從系統托盤打開 DSH Terminal,針對當前 profile 執行安裝、檢查和驗證命令。

普通 DSH CLI/Web

適用於終端中已有 dshpnpm 的環境。普通 CLI/Web 安裝需要 dshpnpm,npm 不能代替 pnpm。

本地源碼安裝

本地源碼安裝需要 Node.js 滿足:

^22.19.0 || >=24.0.0

通用注意事項

  • 插件沒有獨立的設置頁面。
  • 安裝後重啓 DSH Web 或 Desktop,插件會自動生效。
  • 語言由 DSH 的 Language 設置統一控制。
  • Desktop 的每個 profile 有獨立的插件清單和構建配置。切換 profile 後,需要在目標 profile 的 DSH Terminal 中重新執行安裝、更新和驗證命令。
  • Desktop 對剛發佈的 npm 包默認應用 24 小時最短髮布時間策略。安裝時應優先使用 @latest,並比較 npm 最新版本和 profile 實際安裝版本。

安裝與啓用

DSH Desktop 2.0.3

從系統托盤打開 DSH Terminal,針對當前 profile 運行:

dsh plugin add dsh-compact-activity@latest
dsh --dump-config
pnpm list dsh-compact-activity --depth 0

dsh --dump-config 用於檢查當前 profile 的配置輸出。pnpm list dsh-compact-activity --depth 0 用於查看該插件的實際安裝版本。驗證後重啓 DSH Desktop。

由於 Desktop 存在 24 小時最短髮布時間策略,安裝後不要只看命令是否成功,應比較 npm 最新版本與 profile 實際安裝版本。如果版本不一致,應按已確認的版本重新安裝。

普通 DSH CLI/Web

在已有 dshpnpm 的終端中運行:

dsh plugin --profile web add dsh-compact-activity@latest
dsh --profile web --dump-config

dsh --profile web --dump-config 用於檢查 web profile 的配置。驗證後運行:

dsh --profile web

本地源碼安裝

確認 Node.js 版本滿足 ^22.19.0 || >=24.0.0 後,在插件目錄運行:

pnpm install
npm run check
dsh plugin --profile web add .
dsh --profile web --dump-config

npm run check 用於執行項目檢查。驗證後運行:

dsh --profile web

典型用法

安裝並重啓 DSH Web 或 DSH Desktop 後,執行過程會按下面的方式展示:

  • 連續的思考和工具調用會進入同一個單行摺疊項,默認收起。
  • 需要查看細節時展開對應摺疊項。
  • 執行期間顯示狀態、計數和最後一項活動摘要。
  • 過程中的失敗步驟會被單獨計數。
  • PWSHBash 等終端工具的非零退出碼或終止信號會被識別並計入失敗步驟。
  • 最後一個過程項失敗或中斷時顯示“執行錯誤”。
  • 正常結束時顯示“已完成”。
  • 模型最終輸出始終正常顯示,不會因過程摺疊而消失。
  • 總摺疊的狀態和計數文案跟隨 DSH 的語言設置,支持中文和 English

更新與卸載

DSH Desktop 更新或卸載

在 DSH Desktop 的 DSH Terminal 中運行:

dsh plugin update dsh-compact-activity --latest
dsh plugin remove dsh-compact-activity

更新後應再次檢查 profile 實際安裝版本,並與 npm 最新版本進行比較。操作後重啓 DSH Desktop。

普通 DSH CLI/Web 更新或卸載

在終端中運行:

dsh plugin --profile web update dsh-compact-activity --latest
dsh plugin --profile web remove dsh-compact-activity

命令執行後,按普通 DSH CLI/Web 的當前使用方式重新啓動對應進程。

適用場景與注意

這個插件適合使用 DSH Web 或 DSH Desktop、希望把過程信息摺疊起來、優先查看最終輸出的用戶。它更適合長工具調用、多步驟思考、需要在頁面中快速定位最終回答的場景。

使用前注意以下幾點:

  • 插件由當前 dsh 進程加載執行,因此會沿用該進程可用的權限。安裝前應檢查源碼、依賴和倉庫中的 LICENSE 文件。已抓取資料未明確具體許可證名稱,本文不將其寫成確定許可證。
  • 插件只調整 Web 界面展示,不修改模型上下文、會話日誌或工具執行。
  • peer dependencies 由 DSH 宿主提供,不應手動安裝到 profile;當前版本已將它們標記爲 optional peer。
  • Desktop 的每個 profile 有獨立的插件清單和構建配置。切換 profile 後,需要在目標 profile 的 DSH Terminal 中重新執行安裝、更新和驗證命令。
  • Desktop 對剛發佈的 npm 包默認應用 24 小時最短髮布時間策略。安裝時應優先使用 @latest,並比較 npm 最新版本和 profile 實際安裝版本。
  • 普通 DSH CLI/Web 場景需要 dshpnpm,npm 不能代替 pnpm。
  • 本地源碼安裝需要 Node.js ^22.19.0 || >=24.0.0

結尾

dsh-compact-activity 的價值不是改變模型執行,而是把 DSH 的過程信息整理成更容易瀏覽的摺疊結構:過程可收起、失敗可計數、狀態可跟隨 DSH 語言切換、最終輸出仍清楚可見。

倉庫地址:

https://github.com/wallpap/dsh-compact-activity
羽毛球分组比赛记分
小程序二维码

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

小夜