dsh-copy-file:在 DSH 文檔預覽裏一鍵把文件放進 Windows 剪貼板

前言

在 DeepSeek Harness(DSH)裏用右側文檔預覽看代碼、Markdown 或圖片時,若要把磁盤上的那個文件拷到別的目錄,常見做法是記住路徑、打開資源管理器再複製。預覽裏能看內容,卻不等於能直接把「文件對象」交給 Windows 剪貼板,在目標文件夾裏 Ctrl+V 粘貼。

dsh-copy-file 由社區維護者 doudoudouhuahua 發佈,分類爲客戶端插件:在右側預覽頭部增加「複製文件」按鈕,點擊後把當前預覽對應的文件寫入剪貼板文件列表(CF_HDROP),可在任意文件夾粘貼。DSH 生態強調「一切皆插件」;SkillHub 目錄頁 爲獨立社區站點,與 DeepSeek / 幻方無官方從屬關係。

這是什麼

一句話:給 DSH Desktop 右側文檔預覽加「複製文件」按鈕,一鍵把正在預覽的文件放進 Windows 剪貼板,直接粘貼到任意文件夾。

維護者:doudoudouhuahua。開源倉庫:github.com/doudoudouhuahua/dsh-copy-file。package.json 中版本爲 0.1.0,許可證 MIT。

核心功能

下面能力均來自項目 README 說明:

  • 按鈕出現在右側文檔預覽頭部,與「打開 / 顯示文件位置」等圖標同一排。
  • 點擊後寫入的是文件本身(非文本內容),資源管理器可直接 Ctrl+V 粘貼。
  • 成功時按鈕短暫變爲對勾;失敗時變爲警告圖標,懸停可查看原因。
  • 支持中文文件名與中文路徑。
  • 僅在本機 DSH 宿主內工作:路徑不離開本機,不上傳、不讀取文件內容。

安裝與啓用

環境要求:Windows + DSH Desktop(0.2.x,自帶 PowerShell 5.1)。安裝後需完全退出並重新打開 DSH Desktop。

方式一:插件管理器(推薦)

在 DSH 會話裏執行:

plugin_manager(action: "install_bundle", target: "github:doudoudouhuahua/dsh-copy-file")

README 還給出手動步驟:克隆倉庫、在 profile 的 package.json 增加 link: 依賴並把 bundle 名寫入 dsh.profile.bundles、用 junction 鏈到 node_modules,最後同樣完全重啓 DSH Desktop。細節見倉庫 README「方式二」。

插件以後臺 bundle 與客戶端腳本協作:cordis.patch.yml 聲明掛載;lib/client.js 在 sidebar.right.tab.document.actions 插槽註冊按鈕並向宿主 POST 絕對路徑;lib/index.js 註冊 POST /dsh-copy-file,校驗路徑爲存在的普通文件後調用 Set-Clipboard -LiteralPath。宿主路由只接受本機同源、已認證的 POST,不把路徑寫進日誌。

典型用法

  1. 在右側 Sidebar 打開任意可預覽文件的預覽(代碼、Markdown、圖片等)。
  2. 在預覽頭部點擊「複製文件」圖標。
  3. 在目標文件夾按 Ctrl+V 粘貼。

注意:複製會覆蓋剪貼板當前內容;一次只複製一個文件(預覽本身是單文件)。

適用場景與注意

適合在 Windows 上使用 DSH Desktop、頻繁在預覽與資源管理器之間搬運實體文件的開發者。若只需複製文本,仍應使用編輯器或預覽內的文本複製,本插件針對的是 CF_HDROP 文件粘貼。

兼容性(README):依賴 DSH 0.2.x 的 sidebar.right.tab.document.actions 插槽與 webServer.register 路由 API;Windows PowerShell 5.1 的 Set-Clipboard -LiteralPath,無需管理員權限。DSH 大版本升級後若按鈕消失,可能需要對照插槽與路由 API。

安全與權限:插件隨當前 DSH 進程權限運行,安裝前建議閱讀源碼與 MIT 許可證,確認行爲符合本機策略。

卸載:從 profile 的 package.json 刪除依賴與 bundles 項,移除 node_modules 下的鏈接目錄,再完全退出並重開 DSH。步驟見倉庫 README「卸載」。

結尾

dsh-copy-file 把「預覽裏看到的文件」和「資源管理器裏能粘貼的文件」連成一步,減少回源目錄查找的路徑成本。目錄與源碼:

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

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

小夜