前言¶
在 DSH(DeepSeek Harness)裏跑智能體或本地服務時,你往往還需要一眼看清本機 CPU、內存、磁盤和網絡是否在拖後腿,並在確認後再做 C 盤清理或找文件。系統自帶任務管理器能看進程,但不會和 Harness 側邊欄、配置留痕綁在一起;第三方清理工具功能多,卻常把刪除和權限邊界寫得不透明。
下面介紹社區插件 dsh-plugin-sysops(維護者 gh-gongjin):在 DSH 左側欄增加入口,打開一整頁本機面板,面向 Windows 桌面,強調只讀採集、兩段式清理和 guard 單點約束不可逆動作。插件分類爲 admin-security,當前 GitHub 星標爲 0,版本 0.1.0,MIT 許可。
這是什麼¶
dsh-plugin-sysops 是 DSH 的本機系統運維插件:零第三方依賴,HTTP 面掛在前綴 /sysops 下,配置與留痕存在宿主 KV(domain sysops),不上傳第三方。
它回答五類問題,對應五個頁籤(同一時刻只渲染一個面板):
| 頁籤 | 作用 |
|---|---|
| 監控 | 四曲線 + 採集源狀態 + 只讀進程榜 |
| 監控記錄 | 閾值告警觸發時間線 + 未讀藍點 |
| 清理 | 掃描、凍結清單、勾選後執行 |
| 搜索 | 全盤找文件,並標明答案來自哪條通路 |
| 設置 | 採集源、閾值、清理規則、搜索通路、宿主能力表 |
- 目錄頁:https://www.skillhub.cn/plugins/gh-gongjin/dsh-plugin-sysops
- 源碼:https://github.com/gh-gongjin/dsh-plugin-sysops
核心功能¶
實時監控¶
CPU 使用率、內存佔用、網絡吞吐、C 盤可用空間四條曲線,30 分鐘環形緩衝;採集源狀態條常顯。進程榜只讀,按 CPU 降序,可切換按 CPU / 內存排序;不結束、不殺任何進程。
採集按代價分層(README 給出 2026-09-28 本機實測數字):L0 用純 Node(os.cpus / os.totalmem / fs.statfsSync);L1a 網絡用常駐 typeperf;L1b 進程榜用 PowerShell Get-CimInstance Win32_Process,默認關閉,頁面可見才採。子進程由 lib/collect/supervisor.js 統一監督(退避、stall 判定、Windows 下用 taskkill 收尾,PID 僅來自 spawn 返回值)。
閾值告警¶
規則可配(連續 N 次才報、冷卻去重)。觸發後寫入「監控記錄」頁籤並在側邊欄顯示藍點;不推系統通知(宿主不提供該能力,設置頁能力表會標明)。
兩段式 C 盤清理¶
流程爲:掃描 → 凍結清單快照 → 逐項勾選 → 執行。執行前列表即爲實際刪除對象。分類爲「建議清理 / 建議先看一眼 / 建議保留」,默認只勾第一檔。
AI 智能清理(lib/clean/ai-advisor.js)把清單交給宿主模型做分類建議,全程零 apply,只推薦,刪不刪由你在同一頁確認。
每次執行會留痕:清單快照、執行方式、前後容量差、成功 / 跳過 / 失敗計數寫入 KV,而非模糊統計。
全盤文件搜索¶
三級探測選通路:Everything HTTP / es.exe / 限定目錄遍歷;每條結果顯示來源 pill。探不到則降級並說明缺哪一級。探測段只讀(existsSync / GET / 查詢),探測段不夾帶安裝。
唯一寫入系統的獨立動作是搜索自檢卡上的「Everything 一鍵安裝」(lib/search/installer.js):須顯式點擊,參數不採信前端、非 shell 執行、先探 winget 再起、一次只跑一裝;UAC 由 winget 彈出,插件不代點同意。也可自行執行 winget install voidtools.Everything 或官網安裝。
紅線(guard 單點)¶
不可逆約束收口在 lib/clean/guard.js,任何模塊不得自行放寬。包括但不限於:不碰 C:\Windows\*、Program Files*、C:\$Recycle.Bin*;不改屬主、ACL、註冊表;不做開機自啓常駐;拒絕 \\?\、UNC、8.3 短名、.. 與 junction 逃逸等繞過形態;新增規則在寫入階段被拒。
安裝與啓用¶
宿主爲 web profile 時,官方 CLI 安裝如下(內部走 pnpm,需 pnpm 在 PATH 中):
dsh plugin --profile web add github:gh-gongjin/dsh-plugin-sysops
也可安裝本地目錄:
dsh plugin --profile web add <本倉庫的絕對路徑>
手工兩步(不需要 pnpm):編輯 %USERPROFILE%\.dsh\profiles\web\package.json,在 dependencies 增加 "dsh-plugin-sysops": "link:<絕對路徑>",在 dsh.profile.bundles 末尾追加 "dsh-plugin-sysops";再在 profile 的 node_modules 下用 Junction 指向本倉庫,然後 重啓 dsh(只刷新頁面不夠)。
臨時停用:在 ~/.dsh/profiles/web/cordis.patch.yml(Windows 爲 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml)增加:
- id: sysops
disabled: true
徹底卸載:撤銷手工安裝的兩處改動並刪除目錄聯接,重啓即可。
典型用法¶
- 安裝並重啓 DSH 後,從側邊欄打開 sysops 面板。
- 在 設置 中打開需要的採集源(進程榜默認關)、配置閾值與清理 / 搜索規則;查看能力表,確認宿主是否提供
storageDomain、webServer等。 - 在 監控 查看四曲線與進程榜;告警在 監控記錄 中查看。
- 在 清理 先掃描,覈對凍結清單與分類,勾選後再執行;可選 AI 建議,但仍需逐項確認。
- 在 搜索 輸入關鍵詞;若需 Everything,按界面提示安裝或手動配置通路。
界面約定:錯誤與狀態落在觸發它的卡片上(行內 notice),無頂部 toast,無原生 confirm / alert。
適用場景與注意¶
適合誰:在 Windows 上用 DSH web profile 開發或運維、希望監控、可控清理和文件搜索都在 Harness 內完成、且能接受「只讀 + 顯式確認刪除」邊界的用戶。README 寫明這是自用工具口吻:能做什麼、做不到什麼寫在明面上。
權限與安全:插件以當前 dsh 進程權限運行;寫端點均爲 POST,非迴環請求一律 403。安裝前請自行閱讀源碼與 MIT 許可證,覈對 guard 與安裝 Everything 的路徑是否符合你的策略。本插件不提供提權、不結束進程,也不替你決定刪什麼;用完請覈對清理留痕。
宿主降級:缺 storageDomain 時配置只讀;缺 webServer 時不註冊側邊欄入口;缺 timer 時退回 setInterval 並在能力表標註。這些在設置頁可見,不會留假開關。
生態說明:DSH 理念是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-plugin-sysops 把本機監控、兩段式 C 盤清理和三級通路文件搜索收進 DSH 一頁面板,用 guard 單點和留痕把不可逆動作約束清楚。若你要在 Harness 裏運維 Windows 桌面,可按上文命令安裝並在設置裏對齊採集與告警規則。