dsh-storage-inspector:DSH 本地存儲只讀體檢

前言

DeepSeek Harness(DSH)的運行時、會話、緩存、插件和日誌都會落在本地目錄,默認是 ~/.dsh(也可通過 DSH_HOME 指定)。日常用 Finder 或 du 看佔用,往往對不上「到底佔了多少」;目錄列表也回答不了「空間花在哪」以及「哪些目錄不能隨手刪」。下面介紹社區客戶端插件 dsh-storage-inspector,把掃描、口徑和可解釋建議集中到一套邏輯裏,通過設置頁和 Agent 工具兩個入口呈現;當前 V1 爲只讀版,不會刪除、移動或上傳任何文件。

這是什麼

dsh-storage-inspector 由維護者 OnebugIS 發佈,在 SkillHub 目錄中歸類爲客戶端插件。一句話定位:對 DSH 本地存儲做一次安全的磁盤佔用檢查,並按模塊給出分級清理建議(建議本身可解釋,V1 不執行清理)。

倉庫:https://github.com/OnebugIS/dsh-storage-inspector
目錄頁:https://www.skillhub.cn/plugins/OnebugIS/dsh-storage-inspector

DSH 生態強調「一切皆插件」;SkillHub 是社區插件目錄站點,與 DeepSeek / 幻方無官方從屬關係,本文僅介紹該插件本身的能力與用法。

它解決什麼問題

README 歸納了三個常見疑問:

  1. 到底佔了多少磁盤? Finder、du 與「文件邏輯大小」可能給出不同答案;
  2. 空間花在哪裏? 需要按模塊、緩存和最大文件定位;
  3. 什麼能動、什麼不能動? 運行時目錄和活動配置不能因爲「看起來很大」就刪除。

本插件用統一掃描器(lib/scan.js)生成報告,避免設置頁與對話裏兩套口徑互相矛盾。

核心功能

能力 說明
設置 → 存儲 總量、物理/邏輯雙口徑、模塊佔用、Top 文件和分級建議
Agent 工具 storage_report 在對話中詢問 DSH 佔用;默認摘要,detail=full 返回完整報告
可解釋分類 區分 active、cache、runtime、sessions、unknown,並說明建議原因
安全邊界 只讀、不聯網、不跟隨符號鏈接、硬鏈接去重、設置頁 loopback 接口
統一口徑 設置頁與 storage_report 共用同一掃描實現

當前版本(package.json 0.1.0)明確爲 V1 / 只讀版:自動清理功能尚未開啓;dsh-runtimes/ 標記爲禁止觸碰;sessions/ 只展示體積,不提供第二套刪除入口。

數據口徑與限制

設置頁主數字使用物理塊大小:

physical bytes = st_blocks × 512
logical bytes  = 所有文件 st_size 之和

物理口徑更接近 macOS Finder / du 的實際佔用;邏輯口徑更接近文件內容總和。報告會同時展示兩種口徑。

兼容性與掃描行爲(摘自 README):

項目 當前支持/默認值
DSH >=0.2.1-rc.3
Node.js >=20
掃描範圍 僅 DSH 根目錄,不掃工作區或系統其他路徑
緩存 默認 5 分鐘(cacheTtlMs=300000)
超時 默認 10 秒(timeoutMs=10000);超時返回已掃描部分並標記不完整

當報告 complete 爲 false 時,數字是部分結果,不能當作完整盤點。

安裝與啓用

1、確認 DSH 與 Node.js 版本符合上表。
2、從 npm 安裝(README 給出的快速開始命令):

dsh plugin --profile desktop add dsh-storage-inspector

3、重啓 DSH。
4、新建會話,詢問「DSH 佔多少空間?」驗證 storage_report。
5、打開 設置 → 存儲 查看圖形化報告。

卸載:

dsh plugin --profile desktop remove dsh-storage-inspector

開發或自用可從源碼用 link: 指向本地絕對路徑安裝;README 要求「測試先行、明確授權後安裝」,不要在未經使用者授權的情況下改寫 desktop profile。若 npm 版本尚未同步,可暫時使用 GitHub 倉庫配合 link: 方式(路徑需替換爲本機絕對路徑)。

典型用法

設置頁

打開 DSH 的 設置 → 存儲,可查看總物理佔用與總邏輯大小、各模塊佔用及分類、最大文件榜,以及緩存、活動配置、會話和運行時的分級建議。需要最新結果時,使用「重新掃描」(會帶 force=1 繞過緩存)。

Agent 工具

在對話中可以直接問:

DSH 佔多少空間?

模型可調用摘要:

{
  "name": "storage_report",
  "arguments": { "detail": "summary" }
}

需要最大文件榜和完整明細時:

{
  "name": "storage_report",
  "arguments": { "detail": "full" }
}

summary 默認不攜帶最大文件榜,適合日常對話;full 才返回完整明細,避免把大量路徑塞進上下文。

安全與隱私(V1)

  • 只讀:不刪除、不移動、不改名、不寫入掃描目錄;
  • 本地:只讀取 DSH 目錄,不聯網上傳路徑或報告;
  • 不跟隨符號鏈接,權限拒絕的條目跳過,不通過提權繞過;
  • 設置頁接口只接受本機 loopback 請求;若顯示「僅本機可用」,屬預期行爲,勿通過反向代理或遠程端口轉發訪問。

許可證:MIT(README 與 package.json 一致)。

適用場景與注意

適合長期使用 DSH、需要定期看清 ~/.dsh 佔用結構、又希望先「看懂再動手」的桌面用戶。插件以當前 DSH 進程權限讀取本地目錄;安裝前應自行查看倉庫源碼與許可證,確認符合你的安全策略。V1 不提供刪除 dsh-runtimes/ 或 sessions/ 的入口;版本計劃中 V2 才涉及 dry-run 清理預覽等能力,V3 原則是不提供直接永久刪除。

結尾

dsh-storage-inspector 把 DSH 本地存儲的掃描、雙口徑展示和可解釋建議收到一處,設置頁與 storage_report 共用同一掃描器,適合在動手清理前先做一次只讀體檢。

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

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

小夜