前言¶
在 DeepSeek Harness(DSH)裏讓智能體下載文件,常見做法是把下載寫成一個工具函數:調用後阻塞到文件落地。這樣能把單次傳輸做快,但會話或回合結束時任務容易跟着消失;沒有隊列、暫停與續傳;進程重啓後狀態也留不住。
DLS(DSH Download Server,dsh-dl-server)把下載當作 DSH 內的隊列層,而不是替代底層傳輸。任務掛在 DSH 上,跨會話可見;入隊後立即返回,由智能體再查狀態或等待完成。下面介紹它解決什麼問題、提供哪些工具,以及如何安裝與使用。
這是什麼¶
- 定位:面向 DeepSeek Harness 的全局、會話感知、持久化下載隊列(見倉庫
package.json中的 description)。 - 維護者:Jestions-dev(GitHub 倉庫 jestions-dev/dsh-download-server)。
- 分類:工作流類插件;社區目錄頁:skillhub.cn 插件頁。
- 當前版本:
0.1.0(MIT 許可證)。
README 用一句話概括設計意圖:Downloads should not live inside a session. 即作業活在 DSH 裏,而不是綁在某次會話裏。
核心功能¶
隊列與持久化¶
- 入隊即返回 job id,不阻塞智能體回合。
- 在一臺機器上,任意會話都能查看所有任務的進度與目標路徑;只有發起該任務的會話可以暫停、恢復或取消。
- 檢查點寫在 DSH storage,不依賴在用戶目錄裏散落鎖文件,也不依賴
TMPDIR或當前工作目錄。
七個工具¶
| 工具 | 作用 |
|---|---|
download_enqueue |
入隊,立即返回 job id |
download_status |
查看隊列或單個任務(如 J#1042) |
download_wait |
阻塞到任務進入終態,可設超時 |
download_pause |
暫停,保留已寫入磁盤的字節 |
download_resume |
從最近檢查點繼續 |
download_cancel |
取消,可選是否刪除部分文件 |
download_cleanup |
清理記錄;默認範圍不刪已下載文件 |
傳輸層¶
- 可選 aria2:16 路分段下載;未安裝時退化爲 Node 單流,功能不減,速度可能下降。
- README 在同機同文件場景下給出對比數據(如 TUNA 鏡像下 DLS 約 61.08 MB/s;HuggingFace 單流 fallback 約 1.00 MB/s,DLS 約 6.96 MB/s)。差異主要來自對按連接限速主機做分段。
安裝與啓用¶
環境要求:DSH 0.2.1-rc.5 或更新;dsh 需在 PATH 上(桌面版自帶 CLI 路徑見 README)。
圖形界面(推薦)¶
在 DSH 中依次打開:
Settings → Plugins → Install a third-party plugin → Add plugin
輸入插件名 dsh-dl-server,確認後重啓 DSH 一次。
命令行¶
dsh plugin add dsh-dl-server
aria2 爲可選項:需要多連接分段時自行安裝;不裝也能用單流。
典型用法¶
README 給出的對話式示例:
You: download these two PDFs into D:\Papers and tell me when they're done
智能體可對兩個 URL 各調用一次 download_enqueue,得到例如 J#10、J#11,再調用 download_wait 等待完成。因爲入隊立即返回,同一回合裏可以先發起多個下載,再統一等待。
查看進度可用 download_status;需要中途控制時用 download_pause / download_resume / download_cancel。
適用場景與注意¶
適合:需要在多輪對話、多會話之間延續下載任務;需要隊列化、可暫停續傳;希望智能體不必在單次工具調用裏阻塞到文件寫完的場景。
使用時建議留意:
- 會話所有權:別的會話只能看,不能改你的任務。
download_cleanup:默認allWithoutFiles只刪記錄;scope="all"會刪除文件。- 權限:插件在當前 DSH 進程權限下運行,寫入路徑與網絡訪問與 DSH 一致。安裝第三方插件前,宜自行查看源碼與 MIT 許可證。
- 生態:DSH 採用「一切皆插件」;SkillHub 等目錄爲社區站點,與 DeepSeek / 幻方無官方從屬關係。
路線圖(倉庫 README):v1 已發佈隊列、持久化、七工具與 aria2 傳輸;v1.1 計劃磁盤餘量、靜默失敗、會話公平性與鏡像等;v2/v3 涉及 shell 攔截、torrent、自研分段引擎與用戶面板等,以倉庫後續更新爲準。
結尾¶
若你關心的是「下載別跟着會話一起死掉」,而不是隻想拼單次帶寬,dsh-dl-server 提供的是 DSH 側的隊列與持久化層。安裝名爲 dsh-dl-server,詳情見 GitHub 倉庫 與 社區目錄頁。