dsh-pwsh-progress:DSH 對話流實時任務進度插件

前言

在 DeepSeek Harness(DSH)對話流開發中,後臺任務(run_in_background)的監控往往依賴手動查詢或刷新頁面。這導致開發者無法直觀掌握任務狀態、耗時與進度。插件解決了這一痛點,提供實時渲染。

這是什麼

這是 DeepSeek Harness(DSH)的對話流實時任務進度插件。由 sssueason 維護。它爲後臺任務渲染狀態、耗時、進度條、ETA 及停止按鈕,無需刷新頁面。

核心功能

  • 實時狀態顯示:支持運行中、停止中、完成、已停止、失敗五種狀態,並顯示耗時與退出碼。
  • 進度條渲染:自動解析模型 job_output 中的 N/M 或 NN% 格式,生成可視化進度條。
  • 預計剩餘時間(ETA):輸出進度估算;若無進度,則基於歷史均值計算。
  • 停止按鈕:支持一鍵調用 jobs.kill 終止任務。
  • 通用覆蓋:支持 PowerShell、Bash、Subagent 等多種工具的後臺任務展示。

安裝與啓用

使用以下命令安裝插件:

dsh plugin --profile web add "github:sssueason/dsh-pwsh-progress#main"

安裝完成後,需要重啓 dsh web 以使配置生效。

典型用法

安裝並重啓 dsh web 後,當你在對話流中發起後臺運行 PowerShell 命令時,會自動顯示實時進度卡片。

例如運行循環任務:

1..25 | ForEach-Object { Write-Output "step $_/25" }

界面將展示:
* 任務狀態:運行中
* 進度條:[██████████████░░░░░░░░] 56%
* 耗時與 ETA
* 停止按鈕

適用場景與注意

  • 場景:適合需要長時間運行後臺任務(如數據遷移、腳本執行、大文件處理)的場景。
  • 注意:
    1. Slot 語義:該插件會替換官方同名卡片(Slot 語義),在 pwsh 場景下生效。
    2. 輸出限制:無輸出 tail(輸出仍經 job_output 呈現),依賴模型側的輸出流。
    3. 進程依賴:ETA 的歷史估算功能在宿主進程內運行,重啓 dsh web 後該數據將丟失。

結尾

該插件通過非消費式 jobs.get 跟蹤,避免了阻塞模型的 job_output,保證了任務反饋的實時性。更多細節可查閱 GitHub。

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

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

小夜