前言¶
DeepSeek Harness (DSH) 插件體系強調「一切皆插件」。在開發智能體時,tool-trace 插件能記錄每次調用的數據與耗時,但面對成百上千次調用,如何快速定位是「抖動」還是「系統性故障」?dsh-plugin-error-radar 旨在解決這個問題。它讀取 tool-trace 的邊車數據,按工具維度計算錯誤率、連敗和 p95 延遲,並提供一屏化的健康判定。
核心功能¶
該插件主要包含以下能力:
- 數據讀取:讀取
tool-trace邊車目錄(默認~/.dsh/tool-trace)中的數據。 - 指標計算:計算每個工具的錯誤率、連續失敗次數(連敗)以及 p95/最慢耗時。
- 靜默機制:對樣本數小於 3 的調用靜默,避免將一次抖動誤報爲系統性問題。
- 命令行工具:提供
/radar和/health兩個命令,分別用於雷達掃描和健康判定。
安裝與配置¶
安裝過程需要手動合併配置文件。
- 安裝插件:
使用官方安裝命令將插件加入當前 profile:
dsh plugin --profile web add github:121212165/dsh-plugin-error-radar
-
合併配置文件:
安裝後,需要手動將倉庫根目錄的cordis.patch.yml內容合併進$DSH_HOME/profiles/web/cordis.patch.yml。默認該文件爲空數組,建議整份替換或插入同一數組,不要直接追加,否則可能導致 YAML 解析錯誤。 -
重啓服務:
配置層與客戶端都需要重啓才能生效。
使用方式¶
插件提供了兩個主要命令,用於查看工具的健康狀態。
/radar¶
按錯誤率降序輸出每個工具的統計信息。輸出內容包括:調用數、錯誤率、連敗次數、p95 延遲、最慢耗時,以及下方的告警段。
/health [--days 3]¶
將工具的調用量、時延與雷達告警合成一屏判定。
* 默認窗口:默認只看近 3 天。
* 參數調整:使用 --days 參數調整統計窗口(範圍 1-365)。
* 判定結論:
* ✓:沒有告警,工具面是乾淨的。
* △:沒有連敗,但有其他異常。
* ❌:有系統性故障(如連敗),建議先修復。
配置項¶
| 字段 | 默認值 | 說明 |
|---|---|---|
enabled |
true |
是否啓用插件 |
dataDir |
~/.dsh/tool-trace |
tool-trace 邊車目錄(只讀) |
errorRateAlert |
20 |
錯誤率告警閾值(百分比 1-100) |
已知侷限¶
- 樣本限制:樣本極少時(< 3 次調用)刻意不告警。
- 寫入權:本插件只讀取
tool-trace數據,寫入權保留在tool-trace插件。 - 數據容錯:損壞的行會被跳過並在輸出末尾報數。