前言¶
在 DeepSeek Harness(DSH)裏跑插件或 profile 之前,常見問題往往不是業務邏輯,而是本機環境沒對齊:Node 版本不夠、DSH_HOME 不存在或不可寫、profile 目錄缺 cordis.patch.yml 或 package.json、sessions 目錄缺失,或環境變量里根本沒有配置 API Key。這些問題往往在真正調用模型或加載插件時才暴露,排查成本高。
社區裏也有各自的手動檢查清單,但缺少一個在本地、只讀、不聯網的統一入口。dsh-env-doctor 由 lengrufeng2008 維護,歸類爲客戶端插件,專門做 DSH 相關的本地首次運行環境檢查;檢查項與 README 一致,不做修復、不做網絡探測、也不讀取 Key 的具體值。
這是什麼¶
dsh-env-doctor(npm 包名 dsh-env-doctor,當前資料中版本爲 0.1.0)是一句定位上的「本地 first-run 環境檢查」:針對 Node、DSH_HOME、可寫性、profile 文件、sessions 目錄以及 DEEPSEEK_API_KEY 是否存在做覈查。實現上強調 local-only——不聯網、不讀 Key 值,只判斷 presence。許可證爲 MIT;倉庫見 GitHub,目錄頁見 SkillHub。DSH 生態主張「一切皆插件」;SkillHub 爲社區目錄,與 DeepSeek / 幻方無官方從屬關係,本文不將其描述爲官方應用商店。
核心功能¶
README 與 package.json 中列出的檢查項如下,均在本機完成:
- Node:主版本號需 ≥ 20(與
engines.node一致)。 - DSH_HOME:目錄存在且可寫。
- Profile 文件:對應 profile 下需有
profiles/<name>/cordis.patch.yml和package.json。 - Sessions:sessions 目錄相關檢查(具體佈局可能隨 DSH 版本變化,見下文限制)。
- API Key:檢查
DEEPSEEK_API_KEY是否配置(僅 presence,不驗證有效性)。
插件還提供可編程導出(package.json 的 exports 含 ./doctor、./plugin 等),供集成或測試使用;對外文檔中的主要用法是 CLI 與 DSH 內調用。
安裝與啓用¶
已抓取資料中未給出 SkillHub 或 DSH 官方的 dsh plugin add … 一類安裝命令,下文不自行拼接倉庫名。若你已通過 DSH 插件機制安裝本倉庫,啓用方式以 DSH 與目錄頁說明爲準。
本地直接運行檢查(來自 README):
node bin/dsh-env-doctor.mjs --home ~/.dsh --profile web
node bin/dsh-env-doctor.mjs --json
第一條指定 DSH 主目錄與 profile 名;第二條以 JSON 輸出結果,便於腳本或 CI 解析。包入口 CLI 名爲 dsh-env-doctor,對應 bin/dsh-env-doctor.mjs。
在 DSH 進程內,README 給出的用法爲:
Use env_doctor with profile=web.
即通過 env_doctor 能力並傳入 profile=web(profile 名按你的實際配置替換)。
典型用法¶
先做路徑與 profile 對齊,再跑檢查:
- 確認
DSH_HOME(示例爲~/.dsh)與你要用的 profile 名稱(示例爲web)。 - 執行:
node bin/dsh-env-doctor.mjs --home ~/.dsh --profile web
- 若需要機器可讀輸出,改用
--json:
node bin/dsh-env-doctor.mjs --json
- 在 DSH 對話或工作流中,按 README 使用 env_doctor 並指定 profile。
開發側可運行倉庫自帶測試(README):
npm test
對應 package.json 中 node --test test/*.test.mjs。
適用場景與注意¶
適合誰:剛搭 DSH、換機器、或切換 profile 的智能體開發者;希望在連模型、跑複雜插件之前,用本地只讀方式快速確認 Node、DSH_HOME、profile 骨架、sessions 與 API Key 是否「在位」。
明確不做的事(README Limits):
- 不做 provider 鑑權探測、不發起網絡請求、不執行其他插件、不提供自動修復。
- DSH 目錄佈局可能因版本不同而有差異,檢查結果需結合你當前的 DSH 版本理解。
- 檢測到 Key 存在,不代表 Key 有效或有餘額。
安全與權限:插件以當前 DSH 進程權限運行;安裝或啓用任何社區插件前,應自行查看源碼與 LICENSE(本倉庫爲 MIT)。本工具不讀取 API Key 的值,但仍會訪問本地目錄與環境變量名,請在可信環境中使用。
結尾¶
dsh-env-doctor 的價值在於把 DSH 首次運行常見的本地前提收成一次可重複的檢查:Node ≥ 20、主目錄可寫、profile 關鍵文件、sessions 與 DEEPSEEK_API_KEY 是否存在。它不替代完整的鑑權或網絡診斷,但能減少「環境沒配好卻已開始調業務」的彎路。
- 目錄頁:https://www.skillhub.cn/plugins/lengrufeng2008/dsh-env-doctor
- 源碼與說明:https://github.com/lengrufeng2008/dsh-env-doctor