dsh-conversation-files:把助手跨對話產生的文件收進一個側欄畫廊

前言

用 DSH(DeepSeek Harness)跑一段時間後,常見的一個結果是:磁盤上躺着一堆助手寫過的東西,文檔、圖片、代碼、表格,來自不同的對話,散落在各自工具調用的輸出裏。想知道某個 PDF 是哪次對話生成的、後來改過幾次、現在還在不在,往往要翻事件日誌,或者手工回憶路徑。這個插件做一件事:把 profile 裏每個對話中助手實際產生的文件,聚合到一個左側邊欄面板裏,按文件類型分組,一點就能打開。

下面介紹的是 Shall0vv 維護的客戶端插件 dsh-conversation-files。它在社區目錄裏歸類爲「客戶端」,目前 GitHub 1 stars,許可證 MIT。

這是什麼

一句話定位:DSH 的 web 插件,在左側邊欄放一個「對話文件」入口,點擊後打開一個畫廊面板,集中展示所有對話中助手產生的文件。

它只認兩類文件:

  • 寫入(Written):通過 write、edit、apply_patch 等工具寫入、編輯或修補的文件。
  • 交付(Delivered):通過 present 風格工具交出來的文件。

只讀操作(read、view_image 等)和用戶自己附加的文件不算,會被主動排除。

核心功能

面板按擴展名把文件分成十組:圖片、文檔、表格、演示文稿、代碼、配置、數據、壓縮包、音視頻、其他。.conf、.lock 歸入配置,字體等未知擴展名歸入其他。

卡片顯示擴展名、來源對話(同一個文件被多個對話接觸過時顯示 +N)、寫入次數、大小和最後寫入時間,完整路徑放在 tooltip 裏。不同類型有不同縮略圖:圖片直接縮小顯示;代碼、文本、配置顯示前 8 行的等寬塊;Markdown 會去掉標題標記、列表符和強調符號,讀起來像正文;PDF / Word / PowerPoint / Excel / iWork 用 macOS QuickLook 按需渲染首頁;壓縮包、媒體、二進制文件顯示一個大擴展名標籤和類型圖標。磁盤上已不存在的文件不屬於「全部」,單獨放在「已刪除」分類下,帶紅色標記、沒有縮略圖。

交互上有幾種過濾方式:「全部 / 寫入 / 交付 / 已刪除」切換寫入類型;「全部類型」下拉框按文件類型收窄並顯示實時計數;「全部後綴」下拉框只列出當前類型過濾下存在的擴展名,最常用的排前面,如果選了一個不再包含該擴展名的類型,會自動重置爲「全部後綴」;搜索框按文件名或完整路徑過濾;工具欄右側的「網格 / 列表」按鈕切換卡片視圖和緊湊列表視圖(列表顯示縮略圖、名稱、來源對話 · 寫入次數 · 大小 · 日期、擴展名標記和操作菜單),視圖選擇會存進 localStorage。分組頭在滾動時固定,面板可見時每 5 秒刷新一次,窗口隱藏時跳過輪詢。

點卡片用默認應用打開。右下角 ⋮ 菜單有四項:用默認應用打開(調用 open)、選擇應用打開(列出 macOS 能打開該文件的應用,默認項在前,另有 Other… 走系統選擇器)、在 Finder 中打開(open -R)、移到廢紙簍(移到 ~/.Trash,可恢復,執行前有確認)。

安裝與啓用

README 給出的安裝方式是先取得源碼目錄,再用 bundle 命令註冊:

git clone https://github.com/Shall0vv/dsh-conversation-files

然後在 DSH 裏執行:

plugin_manager install_bundle target=<absolute path to the cloned folder>

更新已安裝的副本需要先移除再重裝:

plugin_manager remove_bundle  target=dsh-conversation-files
plugin_manager install_bundle target=<absolute path to the cloned folder>

bundle 會被鏈接進 ~/.dsh/profiles/<profile>/package.json,並出現在 dsh.profile.bundles 裏,重啓後依然生效。從 profile 移除該 bundle 後,側欄入口也會消失。

運行要求是 macOS(文檔縮略圖依賴 QuickLook)。安裝前建議先讀一遍源碼,確認它做什麼。

典型用法

插件啓動後在左側邊欄(SSH 入口下方,文件夾圖標)顯示「對話文件」入口,點擊即可打開面板。安裝並啓動 DSH 後,五秒後會有一次預熱掃描,冷啓動也有快照可用。

打開面板後:

1、用「全部類型」篩到「文檔」,再看「全部後綴」是否只剩 md、docx、pdf 等當前類型下的擴展名。
2、搜索框輸入文件名片段,確認是否按全名和路徑過濾。
3、點某張卡片,文件用默認應用打開;點 ⋮ 選擇「移到廢紙簍」,在確認後文件被移入 ~/.Trash,之後在面板中會變成「已刪除」標記。

適用場景與注意

適合在 macOS 上用 DSH、希望按類型盤點助手產出文件的人。它關注的是文件級視圖,而不是對話內容或工具調用本身的細節。

兩點需要注意。第一,插件運行在當前 DSH 進程的權限上,讀寫文件、改用默認應用打開、移到廢紙簍這些動作都以該進程身份執行,不要輕易在一個權限較高的 profile 裏啓用不了解的插件。第二,它只解析工具調用的參數,不解析工具結果,因此通過 bash 重定向(>、tee 等)寫出的文件不會被識別,這類文件不會出現在面板中。

結尾

這個插件的價值不在於多新,而在於把分散的產出收斂到一個可篩、可搜、可打開的視圖裏。源碼和許可信息見 GitHub:https://github.com/Shall0vv/dsh-conversation-files ;目錄頁:https://www.skillhub.cn/plugins/Shall0vv/dsh-conversation-files 。社區目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,DSH 的理念是「一切皆插件」,插件本身的行爲和質量由維護者負責。

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

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

小夜