dsh-recipe:插件環境的配方聚合工具

前言

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

鏈接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜