前言¶
DSH 生態強調“一切皆插件”。開發者或用戶往往需要的是一套完整場景(如“瀏覽器開發環境”),而非逐個安裝插件。dsh-recipe 旨在將 dsh 插件打包成場景配方,通過工具列出、搜索、應用和組合這些環境,實現一鍵部署。
核心功能¶
- 瀏覽全部配方:查看社區提供的場景配置。
- 按需求搜索配方:通過自然語言匹配所需環境。
- 展開配方:將配方展開爲有序插件清單及安裝命令序列。
- 合併配方:將多個配方合併爲整套環境,自動去重並保持順序。
- 本地運行:純邏輯實現,零網絡請求、零依賴、零寫入。
安裝與啓用¶
安裝該插件需指定 profile。執行以下命令即可將 dsh-recipe 加入當前環境:
dsh plugin --profile <profile> add dsh-recipe
使用方式¶
安裝完成後,使用 recipe 工具進行操作。工具支持以下動作:
| 動作 | 參數 | 行爲說明 |
|---|---|---|
list |
— | 列出全部可用配方 |
search |
need |
按自然語言需求匹配配方 |
apply |
recipeId 或 need |
展開配方,生成有序插件清單 + 安裝命令序列 |
compose |
recipeId1,recipeId2 |
合併多個配方爲整套環境(去重、保序) |
apply 和 compose 命令通常輸出爲“點菜單”形式,即逐條 dsh plugin add 命令,模型可直接執行或交由用戶確認。
內置配方¶
插件內置了 10 個常見場景配方,包含插件數量如下:
| id | 名稱 | 插件數 |
|---|---|---|
browser-dev-env |
瀏覽器開發環境 | 4 |
notification-suite |
通知全家桶 | 6 |
academic-writing |
學術寫作套裝 | 5 |
mobile-remote |
移動遠程控制 | 3 |
security-hardening |
安全加固套裝 | 4 |
memory-kit |
記憶持久化套裝 | 5 |
fun-break |
娛樂休閒 | 4 |
model-routing |
模型路由優化 | 5 |
workflow-automation |
工作流自動化 | 5 |
market-manager |
插件市場管理 | 5 |
技術實現與依賴¶
- 實現方式:純邏輯實現(
lib/recipe.js),不依賴外部服務。 - 數據來源:配方數據存儲於
lib/recipe-data.json,插件映射存儲於lib/plugins.json。 - 配方格式:JSON 格式,包含
id、name、description、tags及plugins數組(數組順序即安裝順序)。 - 依賴庫:作爲 DSH 插件,運行時需要以下 peer dependencies:
@deepseek-ai/cordis@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/schemastery- 安全特性:完全本地運行,無網絡請求,無文件寫入操作,不處理敏感信息。
測試¶
運行以下命令可驗證插件功能:
node test/recipe.test.mjs