前言¶
DSH 的理念是「一切皆插件」。實際使用 DSH 時,profile 裏會包含 bundles、plugins 和 patch,真正影響運行結果的往往不只是某一個插件,而是整套加載順序和覆蓋配置。
常見的麻煩通常不是“能不能啓動”,而是這幾件事:
- 本機到底有哪些 profiles
- 某個 profile 當前加載了哪些 bundles、plugins 和 patch
- 做實驗前如何複製一份可用配置
- 如何把整套 dsh setup 交給別人,並儘量還原原來的結構
Dsh 本身可以啓動 profile,並轉發安裝到 pnpm。已覈實資料提到,它不能創建空 profile,也不能直接列出本機 profile 或在實驗前複製一套可用配置;這些過去常常要手工處理。下面介紹 asdf17128/dshp,它把這些 profile 管理動作集中成一個命令行工具,也可以作爲 DSH 插件安裝。
這是什麼¶
dshp 的定位可以概括爲:管理 DeepSeek Harness profiles——列出、創建、克隆,並把整套 dsh setup 分享成一個可移植文件。
基礎信息:
- 倉庫:
asdf17128/dshp - 許可證:MIT
- 運行要求:Node 18+
- 已驗證兼容:
@deepseek-ai/dsh0.1.0-rc.5
核心功能¶
下面介紹的能力均來自已覈實資料:
- 列出本機 profiles,並顯示 bundle/plugin 數量與磁盤佔用
- 查看指定 profile 的 bundle 加載順序、plugins 和 patch
- 創建新 profile,支持
--web或--headless - 複製已有 profile,保留
node_modules - 將 profile 導出爲單個可移植文件
- 從文件導入並重建 profile
- 對比兩個 profile 的差異
- 刪除指定 profile
安裝與啓用¶
作爲 CLI 使用時,已覈實資料給出的示例是:
npx github:asdf17128/dshp ls
作爲插件安裝時,已覈實資料給出的示例綁定 --profile web:
dsh plugin --profile web add github:asdf17128/dshp
移除該插件:
dsh plugin --profile web remove dshp
已覈實資料沒有給出更通用的插件安裝命令形式,因此這裏只展示資料中明確出現的命令。
典型用法¶
先查看本機有哪些 profiles:
npx github:asdf17128/dshp ls
如果要從 web 複製一份用於實驗,先做複製,再在副本上試錯:
dshp clone web web-試驗田
確認需要分享後,可以導出當前配置:
dshp export web -o my-setup.dshp
在另一臺機器上導入該文件:
dshp import my-setup.dshp
導入會重建 profile,並通過 dsh 自己的 pnpm 安裝插件;因此這一步需要可用的 dsh。其他命令按已覈實資料描述是純文件系統操作。
對比兩個 profile:
dshp diff web web-試驗田
經過上面的實驗後,如果不再需要副本,可以刪除:
dshp rm web-試驗田 --yes
適用場景與注意¶
dshp 適合需要經常整理、複製、分享 DSH profiles 的使用者。使用前注意:
import需要可用的 dsh,並通過 dsh 自己的 pnpm 安裝插件;其他命令爲純文件系統操作- bundle 順序是格式的一部分,重新排序會被
diff報告爲實際差異 - patch 按字節複製,不重新序列化,以避免 YAML 往返破壞或求值
- 作爲插件安裝後移除會移除
list_profiles和export_profile工具;已覈實資料說明 profiles 不受影響,插件只讀 - dshp 以當前 dsh 進程權限運行,安裝前應檢查源碼與 MIT 許可證
- DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不應視爲官方應用商店
結尾¶
dshp 的價值在於把 DSH profile 的常見維護動作變得可見、可複製、可分享:列本機、查細節、複製實驗、導出文件、導入重建、對比差異、刪除清理。
GitHub:https://github.com/asdf17128/dshp
目錄頁:已覈實資料未給出 URL,請以實際發佈渠道爲準。