DeepSeekDSH
独立社区指南与 DeepSeek 无隶属关系。官方源码快照

在 DeepSeek Harness 中安装插件

先理解 Profile 与 Bundle 的关系,再安装经过审查的包,处理 pnpm 安装阶段构建提示,并在重启后确认插件真正生效。

本页内容
能搜到插件,不代表应该安装

社区插件出现在目录里只代表可发现。安装前仍要检查仓库、包信息、权限、安装脚本和维护状态。

先理解 Profile 和 Bundle

DSH 的 Profile 有自己独立的依赖与 Bundle 组合。一个插件装进某个 Profile,不会自动复制到其他 Profile。只有包 manifest 声明了 DSH 所需 Bundle 元数据时,CLI 才会把它加入 Bundle 层。

Profile

位于 $DSH_HOME/profiles/<name> 的可运行组合,先确认你到底要修改哪个 Profile。

Bundle

向 Profile 启动组合贡献 cordis.patch.yml 的包。

普通依赖

依赖可以安装成功但不会自动变成 Bundle;没有 Bundle 声明时 CLI 会提示。

第 1 步

使用 dsh plugin 前先检查 pnpm

仅运行 npx @deepseek-ai/dsh web 不要求你先装 pnpm,但插件管理不同:官方 dsh plugin 命令会把包操作交给 pnpm,因此 pnpm 必须在 PATH 中。

pnpm --version
第 2 步

安装前先审查插件

  • 确认仓库和包确实属于预期作者。
  • 阅读 README 与 package install/build scripts。
  • 检查它可能访问的文件、网络、凭据和外部可执行程序。
  • 审查完成后优先固定明确版本或 commit,不要盲目追随不断变化的分支。
第三方插件是真实本地代码

它的安装和运行不是“模型文字建议”,而是在你的机器上执行软件依赖,应按普通本地软件的安全标准审查。

第 3 步

把包添加到正确的 Profile

官方通用命令格式:

dsh plugin --profile <name> add <package-or-git-spec>

<name> 换成你确实想修改的 Profile。相对本地路径会以运行命令时所在目录为基准。

不要直接复制未审查社区卡片里的安装命令

先进入作者仓库或包页面确认当前安装方式,再固定你审查过的版本或 commit。

第 4 步

看到 allowBuilds 时先停止并检查

Git 源码插件可能在安装时执行 prepare 构建。pnpm 10+ 会先阻止这类安装阶段构建,因此首次 add 可能失败,并提示 allowBuilds 与对应 Profile 的 pnpm-workspace.yaml

只有你已经检查源码,并且明确愿意允许这段安装阶段代码执行时,才按照 pnpm/DSH 打印的 key 修改该 Profile 的配置,然后重新运行 add。

allowBuilds 是安全授权,不是语法修复

它代表允许依赖在安装阶段执行代码。不要为了让报错消失就直接批准。

第 5 步

Bundle 变化后要重启

add/remove/update 成功会修改磁盘上的 Profile,但正在运行的 Profile 仍保持启动时加载的 Bundle 集合。修改 Bundle 成员后重启对应 Profile;如果由 DSH Desktop 管理,则重启 Desktop/Profile。

普通 cordis.patch.yml 编辑可以热加载,但 Bundle 成员变化跨越了启动边界。

第 6 步

验证插件是否真正生效

  1. 01

    确认 Profile

    你重启的必须是刚才修改的那个 Profile。

  2. 02

    确认能力出现

    检查目标工具、Preset 选项或 Provider 是否出现;“安装成功”不等于功能已经激活。

  3. 03

    小范围测试

    先用可丢弃工作区执行一个小任务,再让插件访问重要项目或凭据。

常见问题

pnpm is not recognized

安装 pnpm 或修复 PATH。npm quick-start 可用,并不代表插件管理已经有 pnpm。

Git 插件首次 add 出现 allowBuilds

检查安装脚本;确认愿意执行后,只加入 pnpm 打印的对应 key,再重试。

命令成功但插件没出现

重启 Profile。当前启动周期不会自动更换 Bundle 集合。

一个 Profile 有插件,另一个没有

Profile 的依赖和 Bundle 是独立的,需要分别安装和审查。

依赖装好了但没出现功能

包可能没有声明 DSH Bundle,或 Bundle 只注册了休眠 Provider,还需要对应 Preset/Tool row 才会启用。

下一篇需要调试 Profile 组合?
打开源码运行指南 →
主要来源

DeepSeek Harness CLI 行为参考,其中明确记录 pnpm 转发、Bundle 重新计算、重启边界和 Git 源码插件的 allowBuilds 行为。