dsh-upload-origin:解析上傳文件的原始本地路徑

前言

當用戶通過網頁編輯器將文件拖入對話時,瀏覽器僅能傳輸文件字節和顯示名稱,無法暴露文件在本地系統中的原始絕對路徑。DeepSeek Harness(DSH)會將上傳的快照存儲在 <session cwd>/.dsh-uploads/<sessionId>/<sha256-16>-<name> 目錄下。

dsh-upload-origin 插件運行在 DSH 主機端,通過匹配上傳快照的名稱、大小和 SHA256 哈希值,掃描會話工作區及常用用戶文件夾,從而恢復文件的原始本地路徑。該路徑隨後會被注入到當前智能體的系統提示詞中,並可通過工具按需查詢。

插件簡介

這是一個 DSH 主機插件,用於解決文件上傳後的路徑溯源問題。插件由 wlc114514 維護,屬於“聯網工具”分類,採用 MIT 許可證。它通過監視 .dsh-uploads 目錄、篩選被引用的文件、結合文件引用索引和有界文件系統掃描,最終將原始路徑映射注入系統提示詞,並註冊了 resolve_uploaded_file 查詢工具。

安裝

通過官方命令安裝預編譯的 tarball 包。該插件通過 DSH 的 bundle/profile 流程自動安裝:

dsh plugin --profile web add https://github.com/wlc114514/dsh-upload-origin/releases/download/v0.1.0/dsh-upload-origin-0.1.0.tgz

配置

插件支持通過 bundle patch 行進行配置,主要參數包括:

- id: upload-origin
  name: 'dsh-upload-origin'
  config:
    maxSearchFiles: 250000
    searchTimeoutMs: 9000
    maxDepth: 12
    maxHashChecks: 30
    maxResults: 10
    recentUploadMs: 604800000
    maxRecentUploads: 8
    autoResolveTimeoutMs: 7000

工具:resolve_uploaded_file

插件註冊了一個 resolve_uploaded_file 工具,用於在需要時手動查詢文件的原始路徑。

參數

  • file_path (string, optional): 上傳文件的路徑,可以是絕對路徑或相對於會話工作區的路徑。
  • name (string, optional): 原始文件名,用於在未知上傳路徑時進行定位。
  • search_roots (string[], optional): 額外的絕對掃描目錄。
  • max_results (integer, optional): 返回的最大候選結果數(默認 10)。

返回值與置信度

工具返回上傳路徑、原始名稱、大小、SHA256、最佳原始路徑、置信度、候選列表、掃描根目錄及元數據。置信度表示匹配的精確程度:

置信度 含義
exact 名稱、大小和 SHA256 全部匹配。
name+size 名稱和大小匹配;未檢查 SHA256 或哈希值不同。
name+size-hash-differs 名稱和大小匹配,但內容在上傳後發生變更。
name-only-size-differs 僅名稱相同,大小不同。
name-only 僅名稱相同,需人工驗證。

注意事項

  • 運行環境:插件僅爲主機端運行,不進行網絡調用,不讀取、存儲或傳輸憑證。所有內容哈希計算均在本地完成。
  • 工具權限:resolve_uploaded_file 工具爲只讀操作。
  • 瀏覽器限制:由於瀏覽器在拖拽上傳時不暴露原始絕對路徑,本插件通過主機側匹配來恢復路徑。
  • 文件變更:如果原始文件在上傳後被修改,SHA256 將不同,插件會回退到“名稱+大小”或僅“名稱”的候選方案。
  • 掃描範圍:默認掃描根目錄外文件需通過工具參數 search_roots 指定或等待未來版本配置擴展。
羽毛球分组比赛记分
小程序二维码

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

小夜