前言¶
DeepSeek Harness(DSH)把能力拆成插件來組合。實際開發中,profile 配置、依賴或插件狀態異常時,常見問題有兩類:一類是 Web UI 還能打開,但 prompt 或 Agent 失敗;另一類是 Harness 無法啓動。
DSH Doctor 就是針對這些狀態給出的診斷和恢復入口。它先發現問題,再執行有限的恢復動作,並在需要時把 profile 配置回滾到健康檢查點。
這是什麼¶
DSH Doctor 是 DeepSeek Harness 的診斷與恢復插件,定位爲 “Deterministic diagnostics and recovery for DeepSeek Harness”。項目由 astra3294 維護,許可證爲 MIT。
它主要解決兩個問題:
- Web UI 可用時,從界面側發現失敗並觸發恢復;
- Web UI 無法啓動時,用 CLI 做掃描、啓動探測、恢復和回滾。
核心功能¶
DSH Doctor 提供的能力包括:
- 在 sidebar 的 Settings 旁邊保留一個持久 Doctor action;
- 在 prompt 或 Agent 失敗後,於 composer 上方顯示自動恢復 banner;
- 在 Settings 中提供完整 Doctor page,包含 findings、checkpoints 和 rollback;
- 當 profile 損壞時,在 frame overlay 中顯示 floating emergency entry;
- 提供 loopback-only Host recovery service;
- 提供 standalone CLI,支持 scan、boot probe、recover、checkpoint、launch 和 rollback 命令;
- 支持一鍵重置到最後一個健康檢查點;
- 安全的一鍵動作會把 profile 配置重置到最新健康檢查點。
安裝與啓用¶
先把它加入 web profile,再啓動 Harness:
dsh plugin --profile web add dsh-doctor
dsh --profile web
如果 Web UI 無法啓動,可以直接用 CLI 做恢復:
npx dsh-doctor recover --profile web
典型用法¶
下面按常見路徑給出命令。
掃描¶
npx dsh-doctor scan
掃描默認離線進行,並對路徑做匿名化。
啓動探測¶
npx dsh-doctor boot
用於探測 Harness 是否能啓動。
恢復¶
npx dsh-doctor recover --profile web
npx dsh-doctor recover --profile web --yes
recover 用於執行恢復流程。恢復中的安全一鍵動作會把 profile 配置重置到最新健康檢查點。
recover 的退出碼如下:
0:只有 warnings,除非使用--strict;1:仍有 errors,或 boot verification 失敗;2:參數無效或內部失敗。
檢查點與啓動¶
npx dsh-doctor checkpoint --profile web
npx dsh-doctor launch --auto-recover
npx dsh-doctor rollback <checkpoint-id>
checkpoint 用於創建檢查點,rollback 用於恢復指定檢查點,launch --auto-recover 用於啓動流程。
行爲邊界¶
DSH Doctor 對恢復動作做了明確限制:
- 依賴安裝、禁用導致啓動崩潰的插件、隔離損壞的會話文件、重新啓用被 Doctor 禁用的插件,都需要顯式確認;
- Doctor 不會禁用 connection、layout、settings、conversation、runtime、module-loader 或 Doctor rescue 條目;
- checkpoints 保存在本地
$DSH_HOME/doctor/checkpoints/下,不會包含在報告中,也不會上傳; - API keys 不會被打印、修改或發送;
- DeepSeek Harness 是 developer preview;未知版本會以保守的只讀模式掃描。
適用場景與注意¶
DSH Doctor 適合需要頻繁調整 DSH profile、依賴或插件狀態的開發者。它提供的價值在於:出現問題時,不是手工改配置,而是先掃描、再恢復、最後用檢查點兜底。
使用時注意:
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證;
- DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不應理解爲官方應用商店;
- 開發環境要求 Node 24 和 pnpm。
結尾¶
DSH Doctor 把 DSH 的常見異常處理變成了一組可執行的命令:先掃描,再恢復,必要時回滾。對於希望保持可實驗、可回滾的 DSH 開發環境來說,它是一個直接可用的處理工具。
GitHub 倉庫:
https://github.com/astra3294/dsh-doctor
社區目錄(項目資料提供):