dsh-plugin-recent-files:在 DSH 側欄找回最近打開的文件產物

前言

在 DeepSeek Harness 裏跑一輪對話,右側欄往往會多出好幾份文件產物:out/report.html、docs/方案.md、根目錄截圖等。想再打開某一份時,常見做法是回滾聊天記錄找產物卡片,或在右側文件樹裏一層層點。社區插件 dsh-plugin-recent-files(維護者 msongw-design)只做一件事:記住你在右側欄打開過的 dsh-resource://file/session/... 地址,按時間列在左側欄,點一下即可切回對應會話並重新打開該文件。

這是什麼

dsh-plugin-recent-files 是分類爲「客戶端」的 DSH 插件,當前版本 0.1.0,許可證 MIT。它在左側欄「自動化任務」下方增加 最近瀏覽 入口,面板裏展示最近打開的文件產物列表。倉庫:https://github.com/msongw-design/dsh-plugin-recent-files;社區目錄頁:https://www.skillhub.cn/plugins/msongw-design/dsh-plugin-recent-files。

核心功能

側欄順序與 README 一致:Plugins(order: 0)→ 自動化任務(10)→ 最近瀏覽(20)。

面板每行顯示文件類型圖標、文件名、所在目錄、相對時間(例如「3 分鐘前」);右上角有 清空;懸停單條可移除。

點擊條目時,會先切換到該文件所屬會話,再在右側欄打開;這次打開會把該條重新置頂。

列表最多保留 50 條,最新在前,按文件地址去重。同一路徑在不同會話下算兩條記錄,與右側欄標籤的地址模型一致。

實現上包裹右側欄控制器的 openResource 與 openResourceIn:前者覆蓋對話裏的產物卡片、路徑鏈接、工具行行號引用等;後者覆蓋標籤頁內動作(例如文件樹某一行)。數據持久化在 localStorage 鍵 dsh.recent-files.v1,字段含 address、sessionId、path、at。

插件在 DSH 0.2.0-rc.2 開發與首次驗證,0.2.1-rc.3 已確認 sidebar.panellist、main 槽位及 @deepseek-ai/dsh-client-ui-primitives 等 API 仍可用;僅註冊這兩個槽位,不依賴未公開內部模塊。

安裝與啓用

方式一:Plugins 頁(推薦)

  1. 左側欄點 Plugins
  2. 點 Add plugin
  3. 填寫 Git 地址 https://github.com/msongw-design/dsh-plugin-recent-files,或本倉庫克隆後的本地絕對路徑
  4. 安裝完成後在 Installed 組裏啓用

方式二:寫進 profile

在 profile 目錄(例如 ~/.dsh/profiles/desktop)中安裝包:

pnpm add /path/to/dsh-plugin-recent-files

將包名加入 package.json 的 dsh.profile.bundles:

{
  "dsh": {
    "profile": {
      "bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-plugin-recent-files"]
    }
  }
}

重啓應用;profile 帶 HMR 時通常刷新頁面即可。

典型用法

安裝並啓用後無需額外配置。在對話中點擊文件產物卡片、路徑鏈接,或在右側文件樹打開文件,對應條目會出現在 最近瀏覽 面板。需要快速回到剛纔看過的某份產物時,在側欄點該條目即可;若條目已過時,可懸停移除或點 清空。

開發者在倉庫根目錄可用冒煙測試驗證行爲:

node test/smoke.mjs

該腳本使用假的 window.__ModuleLoader__ 與 Cordis ctx,配合真實 React,覆蓋註冊、打開捕獲、存儲去重、持久化與頁面渲染等斷言。

適用場景與注意

適合經常在 DSH 裏切換、複查多份會話產物的開發者。下列邊界來自 README,安裝前宜心中有數:

  • 只記錄右側欄內的打開動作;通過 Open In… 用系統默認應用打開的不計入
  • 列表全局共享,不按會話分組;點擊時會切換會話
  • 只存地址,不校驗文件是否仍存在;會話歸檔導致切換失敗時會被忽略,地址仍可解析

DSH 生態強調「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。插件隨當前 DSH 客戶端進程運行,安裝前應自行查看源碼與 MIT 許可證,確認符合你的安全與合規要求。

結尾

dsh-plugin-recent-files 用側欄一條列表補上了「剛纔打開過哪些文件」的缺口,改動面小、職責單一。若要安裝或讀實現細節,見社區目錄 msongw-design/dsh-plugin-recent-files 與 GitHub 倉庫 msongw-design/dsh-plugin-recent-files。

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

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

小夜