destructive_command_guard: 一個防止 AI 編碼代理執行破壞性指令的高性能安全鉤子
destructive_command_guard: 一個防止 AI 編碼代理執行破壞性指令的高性能安全鉤子
它解決了什麼問題
AI 編碼代理(例如 Claude Code、Cursor 和 GitHub Copilot)偶爾會執行災難性的指令——例如 rm -rf ./src 或 DROP TABLE users——這些指令會在幾秒鐘內摧毀未提交的工作或生產數據。dcg 提供了一個安全層,在這些破壞性指令被執行之前攔截它們。
運作原理
它作為一個高性能的鉤子,攔截來自 AI 代理的指令。它使用 SIMD 加速過濾和雙正規表示式引擎來掃描指令,包括嵌入在 heredocs 或行內腳本中的指令(例如 python -c "os.remove(...)")。該工具會對上下文進行分類,以避免攔截安全的數據操作(例如 grep "rm -rf"),同時攔截實際的執行。它被設計為 fail-open 模式,確保超時或解析錯誤不會阻礙用戶的工作流程。
對象是誰
使用 AI 編碼代理的開發者,希望防止因代理生成的 shell 指令而導致的意外數據丟失或系統破壞。
重點功能
- 廣泛的代理支持:相容於 Claude Code、Codex CLI、Gemini CLI、Copilot、Cursor、Hermes Agent、Grok 等。
- 豐富的安全包:超過 50 個模組化套件,涵蓋數據庫(PostgreSQL、MongoDB)、雲端供應商(AWS、GCP、Azure)、容器(Docker、Kubernetes)和基礎設施(Terraform、Pulumi)。
- 亞毫秒級延遲:高性能 Rust 實作確保了該守護程序不會降低代理的響應時間。
- 智能上下文檢測:區分正在執行的指令與作為數據被提及的指令。
- 靈活的繞過方式:提供多種允許指令的方式,包括環境變數 (
DCG_BYPASS=1)、一次性允許碼和永久白名單。 - CI 集成:包含用於 pre-commit hooks 和 CI 流水線的掃描模式,以便在代碼審查期間捕捉危險指令。