DSH 的架構基於插件,運行時環境涉及配置、加載狀態、會話活動和版本兼容等多個維度。當插件行爲異常或啓動失敗時,排查往往需要查閱多個分散的信息源。dsh-insight-tree 旨在將這些信息合併爲一份可解釋的報告,並提供可視化的管理界面,幫助開發者完成“發現問題 → 判斷影響 → 採取處理”的閉環。
是什麼¶
這是一個面向 DeepSeek Harness(DSH)的運行時可觀測與插件診斷面板。它由用戶 xingzhen199186 維護,採用 MIT 許可證。該插件將 Profile 配置、實際安裝包、Loader 運行狀態、會話活動和上游版本信息合併生成一份可解釋的報告,並通過插件樹、當前會話活動和獨立診斷頁提供支持。
核心功能¶
綜合報告生成
插件會合並 Profile 配置、實際安裝包、Loader 運行狀態、會話活動和上游版本信息生成可解釋報告。報告基於 InsightTreeReport 模型(當前 schema 爲 v3),所有界面均消費這份報告,避免邏輯不一致。
插件管理
它可以處理當前 Profile 中已安裝的非核心插件:關閉、重新啓用(重載)、更新或卸載。修改前會執行靜態配置 dry-run,失敗時保留原文件。
獨立診斷
提供命令行獨立診斷工具。即使 DSH 本體未運行,也可以啓動獨立診斷頁面,讀取 Profile、檢查插件狀態,並執行可用的關閉、重新啓用和卸載操作。
啓動歸因
當 DSH 啓動失敗時,它會嘗試自動歸因到非核心插件。這通過包裝命令 dsh-insight-tree-web 實現,只有當錯誤被報告明確歸因到非核心插件時,纔會自動打開獨立診斷頁。
兼容性檢查
提供版本和依賴的兼容性檢查,判斷插件與 DSH 本體及配套包的適配情況。
安裝與啓用¶
從 npm 安裝到 DSH:
dsh plugin --profile web add dsh-insight-tree
安裝完成後重啓 DSH Web,使 host、client bundle 和 cordis.patch.yml 裝配生效:
schtasks /run /tn DSHWebRestart
典型用法¶
安裝成功後,可以通過以下方式使用:
- 插件樹面板:啓動 DSH 後,在“設置 → 插件 → 插件樹”打開面板,查看插件的結構、能力、依賴、兼容性和 Loader 狀態。
- 本輪活動:在對話頁右側打開“本輪活動”,查看當前對話中實際出現的插件活動。
- 命令行獨立診斷:在命令行中執行:
dsh-insight-tree-diagnose --profile web --port 3092
隨後訪問 http://127.0.0.1:3092/。
- 包裝命令:使用包裝命令啓動診斷:
dsh-insight-tree-web --profile web
適用場景與注意¶
適用場景
- 需要確認 Profile 中實際裝配了哪些插件。
- 需要驗證 Loader 是否正確加載了插件,以及當前處於什麼階段。
- 需要檢查當前插件與 DSH 本體及配套包的兼容性。
- 需要查看本輪會話實際使用了哪些插件能力。
- 需要在 DSH 未運行時,獨立檢查並處理插件配置。
注意事項
- 它不是插件市場,也不是第三方插件安全審計器。
- HTTP 服務只監聽 loopback,支持令牌認證。
- 修改前執行靜態配置 dry-run,失敗時保留原文件。
- 卸載有被依賴插件時會拒絕執行。
- Loader、session projection 和 session query 的真實可用性取決於 DSH 主機是否提供對應服務。
- 工具事件沒有顯式 owner 時,只能使用穩定映射或標記爲未確認,不能保證精確歸因。
- 獨立診斷沒有 Loader 運行證據,因此不會虛構“當前正在運行”的狀態。
- 缺少必要上下文時顯示“暫時無法確認”,不把未知誤報爲“不適配”。
生態與鏈接¶
該插件已公開到 GitHub:https://github.com/xingzhen199186/dsh-insight-tree