前言¶
在 DeepSeek Harness (dsh) 生態中,插件是擴展能力的標準方式。現有的代碼審查工具大多停留在“觀察差異”和“添加註釋”的階段,它們無法阻斷合併操作。review-gate 解決了這一斷層,它將代碼審查轉化爲一個硬性關卡:只有通過自動規則判定、滿足團隊批准配額,並生成合規審計日誌後,代碼才能合併。
插件定位¶
這是一個 DeepSeek Harness (dsh) 插件包,核心價值在於將代碼審查流程化、標準化和強制化。
- 定位:代碼審查硬性關卡插件。
- 維護者:JohnXu22786。
- 類別:admin-security。
- 許可證:MIT。
- 核心價值:確定性嚴重程度規則、LLM 輔助發現、團隊批准配額、合規審計跟蹤。
核心功能¶
- 審查會話:支持審查工作區、暫存區、單個提交或任意
base..head範圍。發現結果按severe(嚴重)、warning(警告)、suggestion(建議)分級。分級依據包括確定性靜態規則(基於正則匹配新增代碼,不依賴模型)和可選的 LLM 輔助(僅增加發現,絕不繞過規則閾值)。 - 關卡規則:可配置通過閾值(例如
severe = 0,warning ≤ N)。判定邏輯完全由確定性規則計算,確保結果可復現。 - 團隊批准流程:支持
approve(通過)、request_changes(請求修改)、reject(拒絕)投票。可配置通過配額,最後寫入者優先,重新審查會刷新狀態。 - 合規審計跟蹤:所有運行、投票、確認和導出操作都會追加到不可變的審計日誌中,記錄時間、操作人、結論和規則版本。
- CI 協作:所有工具和 CLI 命令輸出 JSON 格式,並返回正確的退出碼(
gate-check在不可合併時返回非零),可直接集成到 GitHub Action 或鉤子中。 - 教訓庫:失敗的發現可以轉化爲可複用的靜態規則。
- 工具鏈:提供 dsh 工具(
review_run等)和獨立 CLI。
安裝與啓用¶
環境要求¶
- 獨立 CLI:Node.js >= 18。
- DSH Bundle 模式:DeepSeek Harness 要求
^22.19.0 || >=24.0.0。 - 系統要求:Git 必須在系統 PATH 中,目標目錄必須是 Git 工作樹。
安裝獨立 CLI¶
全局安裝以在任何 Git 倉庫中使用:
npm install -g review-gate
安裝爲 DSH Bundle¶
作爲 DSH 插件包安裝,需要添加插件並應用補丁配置。
dsh plugin --profile <name> add ./review-gate
dsh --profile <name> --patch ./review-gate/cordis.patch.yml
典型用法¶
CLI 命令¶
在 Git 倉庫目錄下執行:
# 審查工作區變更
review-gate run --json
# 查看審查狀態
review-gate status --json
# 檢查合併資格(只有在合併條件滿足時退出碼爲 0)
review-gate gate-check --mode merge
配置文件¶
在倉庫根目錄創建 .review-gate.config.json 或在 DSH profile 配置中寫入:
{
"cwd": "/absolute/path/to/repo",
"store": {
"root": ".review-gate",
"repoId": "github.com/acme/repo"
},
"gate": {
"severe": 0,
"warning": 0,
"suggestion": -1,
"requiredAcknowledge": []
},
"approvals": {
"required": 2
},
"llm": {
"enabled": false
},
"rules": {}
}
初始化配置文件:
review-gate init
適用場景與注意¶
適用場景:需要強制執行代碼審查標準的團隊,要求審查結果阻斷合併操作,或需要保留完整的合規審計記錄的場景。
注意事項:
* 插件以當前 DSH 進程的權限運行,請確保安裝前檢查源碼與許可證(MIT)。
* 依賴 Git 命令行工具進行差異解析和會話鎖定。
總結¶
review-gate 通過將代碼審查從“可選的討論”轉變爲“強制的關卡”,利用確定性規則和團隊投票機制,確保代碼質量。結合其不可變的審計日誌,適合對合規性要求較高的團隊使用。