dsh-delivery-library:DSH 會話交付與產出文件庫

前言

DeepSeek Harness(DSH)對話窗默認提供「對話」與「軌跡」兩個視圖。當會話中涉及大量文件產出或顯式交付時,在聊天記錄中檢索特定文件容易遺漏或干擾。需要一種方式,能在不翻閱長對話的前提下,集中查看當前會話生成的所有文件清單。

它是什麼

這是一個爲 DSH 客戶端提供的插件(類別:客戶端,維護者:BlankTasftu,許可證:MIT)。它的核心作用是在 DSH 對話窗的「對話 / 軌跡」之外,追加一個「交付文件」視圖。該視圖彙總當前會話裏全部顯式交付(present)和文件產出(write / edit),生成一份可檢索的文件庫,每個會話對應一份獨立的清單。

核心功能

該插件通過以下方式實現文件清單管理:

  1. 新增視圖頁籤
    安裝後,對話窗頂部頁籤增加「交付文件」。視圖區分爲兩欄:

    • 交付:僅彙總模型顯式聲明的最終文件(present 工具執行成功後的結果)。
    • 產出:彙總 write / edit / str_replace_editor 真正寫出的文件。
  2. 數據來源與範圍

    • 純插件:不修改 DSH 本體,僅往 conversation.view 座位追加一個新 id 的格子。
    • 不讀磁盤:清單完全由當前會話已載入的事件窗口摺疊而來,不掃描工作區或讀取日誌文件。
    • 會話作用域:視圖跟隨當前會話,切換會話即切換清單;空會話不渲染視圖區。
  3. 交互與檢索

    • 預覽:點擊列表中的某一行,在右側欄預覽該文件(協議地址爲 dsh-resource://file/session/...)。
    • 複製路徑:鼠標懸停在列表行時出現「複製路徑」按鈕,點擊僅複製路徑,不會連帶打開預覽。
    • 搜索:支持搜索文件名、目錄路徑以及說明文本。

安裝與啓用

在 DSH 的「設置 → 插件」安裝入口中填入以下說明符:

github:BlankTasftu/dsh-delivery-library

插件管理器會將其寫入 profile 的依賴與 bundles 清單,並通過 pnpm 安裝。安裝後刷新頁面,頁籤即變爲「對話 | 軌跡 | 交付文件」。

若需驗證安裝的完整性,可以在安裝目錄下運行以下命令(零依賴):

node --test "test/*.test.mjs"

典型用法

  1. 安裝:在設置中填入插件安裝說明符並完成安裝。
  2. 查看:進入「交付文件」頁籤,默認展示「交付」與「產出」兩個子頁籤。
  3. 檢索:在搜索框輸入文件名或路徑,列表會實時過濾。
  4. 確認:點擊某一行,右側顯示文件內容預覽;懸停行顯示「複製路徑」按鈕。

適用場景與注意

該插件適合需要在長會話中快速定位和管理模型生成文件的場景。

需要注意以下邊界與限制:

  • 加載範圍:清單僅覆蓋已載入的會話事件窗口。會話過長時,窗口可能只包含尾部數據,底部會出現「加載更早」按鈕,點擊可補齊歷史數據。
  • 文件狀態:交付卡片打開的是當前文件內容,並非交付那一刻的快照。如果文件被刪除,預覽會報錯。
  • 無資源管理器:插件不提供「在資源管理器中顯示」功能,這超出了插件的權限範圍。
  • 路徑歸一化:同一路徑(如反斜槓、./ 前綴、尾斜槓)會被合併顯示,但不折疊大小寫。
  • 性能與崩潰:極長會話(數百個產出文件)列表會一次性渲染,沒有虛擬滾動。客戶端插件的 apply 方法中任何未捕獲的異常都會導致桌面端直接退出,因此插件代碼需確保整體不可拋出。

總結

dsh-delivery-library 通過在 DSH 對話窗增加第三張視圖卡片,爲開發者提供了一種結構化、可檢索的文件交付與產出管理方式。它不依賴磁盤掃描,完全基於會話事件窗口,適合追求清單清晰度與操作效率的開發場景。

項目地址:dsh-delivery-library

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

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

小夜