前言¶
在使用 DeepSeek Harness (DSH) 時,Agent 代理可能會根據指令執行文件系統操作或 Git 命令。這些操作如果誤觸,可能導致代碼回滾或敏感信息泄露。爲了在 Agent 代理運行代碼前增加一道防線,需要在 Harness 環境中引入執行前的安全檢查。CC Safety Net 是爲此設計的 DSH 插件,它通過解析命令意圖,在 Agent 代理真正執行破壞性操作前進行攔截。
插件定位¶
CC Safety Net (Coding CLI Safety Net) 是一個針對 AI 編碼 Agent 的預執行防護工具。它由 kenryu42 維護,採用 MIT 許可證。其核心作用是在工具調用運行前檢查命令意圖,阻止破壞性的 Git 和文件系統命令,並禁止訪問密鑰文件(如 SSH keys 和 .env 文件)。
核心功能¶
該插件提供以下具體能力:
- 阻斷破壞性命令:能夠識別並攔截如
git reset --hard、git push --force以及rm -rf等危險命令,防止 Agent 代理誤刪代碼或覆蓋歷史記錄。 - 阻斷密鑰訪問:防止 Agent 代理從 Shell 或文件工具中讀取敏感文件,包括 SSH 密鑰、
.env文件、~/.aws目錄以及編碼 CLI 的憑證。 - 策略可視化調整:通過圖形界面調整策略。運行 GUI 命令可以快速選擇 Standard(標準)、Strict(嚴格)或 Paranoid(偏執)預設,並手動開啓或關閉具體規則。
- 規則書擴展:支持通過規則書(Rulebooks)添加自定義阻斷規則,官方提供 Terraform、AWS、gcloud 和 Azure 的規則包,也支持使用自定義 JSON。
- 策略版本管理:支持將策略配置通過 Git 共享,確保團隊成員或雲環境中的會話使用一致的規則。
- 工具嵌入:允許開發者在自己的工具中調用
checkCommand接口,無需安裝 Hook 即可集成安全檢查邏輯。
安裝與啓用¶
使用前需確保系統已安裝 Node.js 18 或更高版本。
執行以下命令安裝插件並檢查環境狀態:
npx -y cc-safety-net@latest install
npx -y cc-safety-net@latest doctor
安裝完成後,插件會自動介入 DSH 的執行流程。如需更新插件,請運行:
npx -y cc-safety-net@latest update
典型用法¶
在本地開發時,建議啓動 GUI 界面來審查和調整安全策略:
npx cc-safety-net gui
通過 GUI 可以直觀地查看當前生效的規則,並根據需要調整阻斷策略。
適用場景與注意¶
該插件適合需要嚴格管控 Agent 代理執行權限的開發環境。
注意事項:
* 配置文件損壞:如果配置文件損壞,插件將不會阻止任何命令。
* 非沙箱機制:它不是沙箱。插件不包含進程、不設置文件系統權限、也不監控網絡出口。包裝命令或重新排序標誌無法隱藏危險操作。
* 依賴要求:必須使用 Node.js 18 或更高版本。
總結¶
CC Safety Net 通過命令級別的預檢,爲 DeepSeek Harness 提供了基礎的執行安全防線,有效防止 Agent 代理因誤操作導致的數據丟失或泄露。若需深入瞭解配置模式或官方規則書,可參考其文檔。