dsh-safety:DeepSeek Harness 文件系統安全 Harness

前言

DeepSeek Harness (DSH) 強調插件化與自動化,但在實際使用中,智能體若擁有對文件系統的直接操作權限,極易因誤操作或腳本錯誤導致配置丟失、項目文件被誤刪,甚至破壞運行環境。dsh-safety 插件作爲 DSH 的配套安全 Harness,在工具執行邊界強制執行三層文件策略,核心價值在於攔截破壞性調用並強制要求人工介入批准,確保每一次關鍵操作都處於可審計、可撤銷的狀態。

是什麼

這是一個針對 DeepSeek Harness (DSH) 的文件系統安全 Harness。它提供了執行時守護、基於回收站的 safe_delete(支持撤銷)、組合快照與回滾、重啓前校驗等功能。插件以標準 DSH profile bundle 形式提供,同時也包含一個獨立 CLI,具備零運行時依賴的特性。

核心功能

執行時守護

插件在破壞性調用運行前進行攔截,核心規則包括:
* 遞歸刪除攔截:默認拒絕 rm -r/-rf、Remove-Item -Recurse 等遞歸刪除命令,強制通過 safe_delete 通道。
* 受保護路徑攔截:對 package.json、cordis.patch.yml、lockfiles、node_modules、部署目錄等關鍵路徑的 write/edit 操作進行阻斷。
* 代碼掃描:不僅攔截文件系統 API,還會掃描 run_code 代碼體,防止通過代碼執行隱藏 fs.rmSync 等破壞性操作。
* 變量引用攔截:攔截如 Remove-Item "$env:USERPROFILE..." 這類變量展開後的路徑刪除。

用戶門控批准系統

模型無法自行批准破壞性操作,必須經過人工確認。
* safety_ask:模型調用此工具,傳入結構化參數(path, kind, what, why, consequence, alternative),創建一個帶有系統計算後果的批准請求,返回 ID。
* 人工介入:模型需提示用戶運行 dsh-safety allow <id>。
* 機制限制:批准是一次性的、有時限的,通過原子鎖在進程間同步。模型自身無法設置 force:true 來通過驗證。

安全刪除與撤銷

  • safe_delete:唯一的批准刪除通道。支持 preview:true 預覽刪除內容,拒絕刪除根目錄或插件自身狀態目錄。
  • 撤銷:刪除操作將文件移至回收站,可通過 safety_undo 恢復。
  • 審計:每次刪除都會被記錄在日誌中。

組合快照與回滾

  • safety_snapshot:保存整個插件組合(manifests、patches、lockfiles、package.json 等),計算 SHA-256 哈希。
  • safety_restore:將環境回滾至上一個已知良好狀態。回滾前會備份當前文件,確保回滾失敗不會導致環境處於半損壞狀態。
  • 安全過濾:默認排除包含憑證的文件。

重啓前校驗

  • safety_check:在 DSH 重啓前執行,檢查 UTF-8 編碼、檢測亂碼(導致無法打開的錯誤)、JSON 解析錯誤以及重複的插件 ID。

審計日誌

通過 safety_journal 或 safety_status,可以查詢所有被攔截、批准、刪除、快照和回滾的操作記錄。

安裝與啓用

該插件以標準 DSH profile bundle 形式提供,同時也作爲 npm 包 @suagr_xl/dsh-safety 發佈。安裝後,它會在 DSH 啓動時自動作爲插件加載,接管文件系統操作。

典型用法

用戶批准流程

  1. 模型檢測到需要刪除文件,調用 safety_ask 並返回 ID。
  2. 模型提示用戶:”請批准刪除:dsh-safety allow “。
  3. 用戶在終端執行 dsh-safety allow <id>。
  4. 插件記錄批准並放行。

撤銷刪除

# 恢復最近一次安全刪除的文件
dsh-safety undo

快照與回滾

# 創建當前配置快照
dsh-safety snapshot

# 恢復到上一次快照
dsh-safety restore

檢查環境

# 檢查配置完整性及潛在錯誤
dsh-safety check

適用場景與注意

  • 環境要求:需要 Node.js 版本 >= 22。
  • 依賴:零運行時依賴,僅依賴 Node.js 環境。
  • 權限風險:插件以當前 DSH 進程的權限運行,請確保 DSH 進程權限合理。
  • 安全原則:插件默認排除包含憑證的文件,但建議在部署前檢查源碼與許可證。
  • 獨立 CLI:即使 DSH 無法啓動,dsh-safety CLI 依然可用,可用於緊急恢復或審計。

總結

dsh-safety 通過在執行時攔截、強制人工批准和提供快照回滾能力,爲 DSH 插件開發和使用提供了堅實的安全基座。它將生產環境中的事故教訓轉化爲強制性的機制,而非文檔說明。

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

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

小夜