DeepSeekDSH
独立社区指南与 DeepSeek 无隶属关系。下载版本与教程参考

在 DeepSeek Harness 中安装插件

插件需要装到你实际使用的配置环境中。以下步骤从检查 pnpm 开始,到重启并试用插件结束。

本页内容
安装前确认来源和权限

插件会在本机执行代码。请检查作者仓库、安装脚本,以及它需要访问的文件、网络和凭证;测试时使用不含敏感信息的项目副本。

选择安装到哪个 Profile

Profile 是一套独立的 DSH 配置环境,保存自己的依赖和插件组合。装进 web 的插件不会自动出现在 headless 中;它也不是聊天界面的模式预设。

Profile:配置环境

配置目录为 $DSH_HOME/profiles/<name>。安装命令中的名称必须与你启动 DSH 时使用的 Profile 一致。

Bundle:可加载的插件包

包需要在清单中声明 DSH Bundle 信息,向启动配置提供 cordis.patch.yml,才能被 CLI 加入插件组合。

普通依赖:不一定提供功能

没有 Bundle 声明的包也可能安装成功,但不会因此在 DSH 中出现工具或设置项。CLI 会给出提示。

可选功能

使用自定义索引源发现插件

alpha.4 允许 DSH 从你添加的索引 URL 中浏览和安装插件。DSH 默认不启用官方市场,因此每个索引都要按第三方来源审查。

  1. 01

    启用自定义插件市场(Custom plugin markets)

    在 Web 侧栏打开 Plugins,点击 Experimental plugins 旁的 More,打开自定义插件市场(Custom plugin markets)。插件页随后会出现 Installed 和 Discover 两个标签。

  2. 02

    添加索引 URL

    打开 Discover,选择 添加索引源(Add index source),粘贴市场发布者提供的 https:// 索引 URL 并保存。不要使用包含凭据或 URL 片段的地址。

  3. 03

    检查后安装一个条目

    选择市场,搜索或筛选列表,打开插件详情,检查作者、源码仓库、版本、Registry 和兼容性。点击 Install,确认来源和版本,再完成现有的插件安装对话框。

索引源只是发现入口,不是安全证明

仍要自己检查插件仓库、包元数据、权限和安装脚本。市场标签、作者名称或 Star 数量都不能证明第三方代码安全。

兼容性规则:插件声明 engines.dsh 时,DSH 优先按这个范围检查;未声明时沿用原有兼容性规则。即使能在市场中看到,版本也可能因不兼容当前 DSH 而无法安装。

第 1 步

检查 pnpm 是否可用

dsh plugin 使用 pnpm 安装和管理包。在准备执行安装命令的终端中运行:

pnpm --version

如果提示找不到命令,按 pnpm 官方安装说明安装,或将已有安装目录加入 PATH,然后重新打开终端再检查。版本要求以你所用 DSH 版本的文档为准;从源码运行时按仓库的 packageManager 字段选择版本。

npx @deepseek-ai/dsh web 能启动,不代表 pnpm 已安装,两者需要分别检查。

第 2 步

检查插件包

  • 核对包名、作者和仓库地址,防止安装同名或近似名称的包。
  • 阅读 README 中的前置条件,以及包的安装、构建脚本。
  • 确认所需文件、网络、凭证和外部程序权限。
  • 选择检查过的版本或提交,记录安装来源。
第 3 步

将插件添加到目标 Profile

下面是命令格式,不能原样执行。将 <name> 换成 Profile 名称,将 <package-or-git-spec> 换成已检查的包名与版本,或仓库地址与提交:

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

若终端找不到 dsh,且你使用的是 npm 启动方式,可以用完整入口:

npx @deepseek-ai/dsh plugin --profile <name> add <package-or-git-spec>

本地相对路径以执行命令时的目录为起点。使用 Desktop 时,先确认命令操作的是 Desktop 所用的 DSH 目录和 Profile,避免装进另一套配置。

第 4 步

看到 allowBuilds 时先停止并检查

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

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

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

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

第 5 步

重启使用这个 Profile 的 DSH

添加、删除或更新 Bundle 后,先结束正在运行的任务,再重启对应的 DSH 进程。使用 Desktop 时重启其管理的 Profile;如果使用 Web 界面,也刷新浏览器。

运行中的进程不会自动替换已加载的 Bundle。普通 cordis.patch.yml 配置编辑支持热加载,但增删或更新插件包需要重启。

第 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 组合?
打开源码运行指南 →
来源与适用版本

插件索引和 engines.dsh 规则依据 v0.2.1-alpha.4 发布说明;pnpm、Bundle 和重启边界依据 DSH CLI 行为参考,源码版本 0.1.5-rc.2(c291e79)。不同版本的构建授权提示可能不同,以命令输出中的包名、配置文件和键名为准。