DeepSeek Harness 插件配置怎么改?DSH plugin 的 config 块与 patch 覆盖

配置与使用发布于 2026-10-02作者: DeepSeek Plugin 插件市场
DeepSeek HarnessDSH plugin插件配置cordis.ymlconfig-catalog
DeepSeek Harness 里每个 DSH plugin 的 config: 块都能由 cordis.yml 条目设置,官方 config-catalog 列出各插件可配项;改动通过 patch 层覆盖,越靠后的层越优先。本文讲清插件条目写法、覆盖顺序与用 --dump-config-schema 查字段。

DeepSeek Harness 里每个 DSH plugin 的 config: 块都能由 cordis.yml 条目设置,官方 config-catalog 逐包列出可配项;改动通过 patch 层覆盖,越靠后的层越优先。 这篇讲清插件条目怎么写、覆盖顺序怎么排、字段怎么查。

DeepSeek Harness 插件配置项从哪来:cordis.yml 的 config 块与配置目录

DeepSeek Harness 的总原则是「每个 config: 块均可由 cordis.yml 条目设置」,条目用 name 指定插件、config 传参,可配字段在官方 config-catalog 里逐包列出(来源)。 按下面认一遍:

  1. 看插件条目结构 — 一条插件配置由 name(插件名)、config(参数字典)构成,必要时加 id 标识与 insert 控制插入位置。预期:name 对不上时插件根本不会加载。
  2. 查官方配置目录 — 在 config-catalog 里按包名找该插件的可配项。预期:例如 @deepseek-ai/dsh-agent-default-model 有 provider 与 model,dsh-agent-instructions 有 dshHome、maxBytes、instructionFileCandidates。
  3. 认字段类型 — 数值、布尔、字符串数组各有语义,如 dsh-agent-loop 的 maxParallelToolCalls 是数值、agents[] 是列表。预期:类型写错会导致配置校验失败。
  4. 写进条目 — 把想改的键值写进对应插件的 config。预期:保存后按生命周期决定是否需重启。

DeepSeek Harness 怎么覆盖插件默认配置:patch 层与 --patch

插件默认配置按四层依次叠加:各组合包自己的 patch → profile 的 cordis.patch.yml → home 级 $DSH_HOME/cordis.patch.yml → 启动时的 --patch,越靠后的层越靠外、越优先(来源)。 按目标层选写法:

  1. 只改一个 profile 的插件 — 写 $DSH_HOME/profiles/<name>/cordis.patch.yml。预期:只影响该 profile,别的 profile 读不到。
  2. 让本机所有 profile 都吃到 — 写 $DSH_HOME/cordis.patch.yml。预期:作为 home 级层被所有 profile 叠加。
  3. 临时试验 — 启动时用 --patch 指定覆盖文件。预期:优先级最高、不改动任何持久文件,重启即失效。
  4. 确认生命周期 — 看该 profile 的 patchReload 是 live 还是 startup。预期:startup 下改完要重启才生效。
  5. 用 dump 验证 — --dump-config 打实际合成值、--dump-default-config 打默认值。预期:两份对比即可确认哪层赢了。

DeepSeek Harness 怎么查插件能配哪些字段:--dump-config-schema

--dump-config-schema 在不启动服务的情况下打印配置项结构定义,是「能配什么」的权威答案;--dump-config 则回答「实际配成了什么」(来源)。 排查插件配置时按这个顺序:

  1. 先 dump schema — 跑一次 --dump-config-schema,按插件名找到它的字段定义。预期:能确认字段名、类型与是否必填,避免凭记忆猜。
  2. 再 dump 实际值 — 跑 --dump-config。预期:看到的是多层叠加后的最终结果。
  3. 对比默认值 — 跑 --dump-default-config。预期:分清「默认就是这样」还是「你改成了这样」。
  4. 定位覆盖来源 — 若实际值与预期不符,逐层检查 profile 与 home 级 patch。预期:找到更外层把内层盖掉的那一行。

改 DSH插件 配置时如果想找带配置面板的现成插件,可在 DSH Plugin Hub 的设置页里改,图形化比手写 yaml 省事。

设置

DeepSeek Harness 插件配置的注意事项与局限

  1. name 必须精确:插件名写错时配置不会报错、插件直接不加载,先确认包名。
  2. 层越外影响越大:home 级 patch 影响所有 profile,只动一个就写 profile 级。
  3. --patch 不持久:适合验证,别把它当正式配置。
  4. patchReload: startup 要重启:不是所有改动都会热生效。
  5. 能配 ≠ 该配:改前先看官方 config-catalog 的字段说明,别填未定义的键。

配置层与文件位置的关系见《dsh 配置文件在哪》;插件装到哪个 profile 见《DeepSeek Harness 怎么建独立 profile》。

来源:插件配置目录(官方文档)、dsh CLI README(官方仓库)

常见问题

DeepSeek Harness 的 DSH plugin 配置项在哪里能查到、有哪些字段?

DeepSeek Harness 的插件配置项在官方插件配置目录(config-catalog)里逐包列出,总原则是每个 config: 块都能由 cordis.yml 条目设置。例如 dsh-agent-default-model 有 provider 与 model,dsh-agent-loop 有 maxParallelToolCalls。

DeepSeek Harness 的 cordis.yml 插件条目怎么写、有哪些字段?

DeepSeek Harness 的插件条目用 name 指定插件、用 config 传参,必要时用 id 标识、用 insert 控制插入位置。远程或 stdio 类插件还会带 transport 与 command 等字段。

DeepSeek Harness 改了插件配置不生效,是覆盖层写错了吗?

多是这样。DeepSeek Harness 按组合包 patch → profile 的 cordis.patch.yml → home 级 $DSH_HOME/cordis.patch.yml → --patch 的顺序叠加,越靠后越优先。写在会被外层覆盖的层,就会表现为改了没反应。

DeepSeek Harness 的 --dump-config-schema 是干什么的?

它用于在不起服务的情况下打印配置项的结构定义,能看清某个插件接受哪些字段与取值类型,配合 --dump-config 一起用,前者看「能配什么」、后者看「实际配成了什么」。

DeepSeek Harness 的 --patch 和直接改 profile 的 cordis.patch.yml 有什么区别?

改 profile 的 cordis.patch.yml 是持久生效、只影响该 profile;--patch 是启动时指定的一次性覆盖层,优先级最高、适合临时试验,不写进文件。

相关术语

config-catalog
config-catalog 是 DeepSeek Harness 的官方插件配置目录,逐包列出可配置项,其总原则是每个 config: 块都可以由 cordis.yml 条目设置。— DeepSeek Harness 官方文档 - 插件配置目录
config 块
config 块是 DeepSeek Harness 插件条目里承载参数的字段,写在 cordis.yml 或 cordis.patch.yml 的插件条目下,内容随插件而异。— DeepSeek Harness 官方文档 - 插件配置目录
--dump-config-schema
--dump-config-schema 是 dsh 命令行的排查参数,用于打印配置项结构定义,帮助确认某插件支持哪些字段与取值类型,而不必启动服务。— dsh CLI README
--patch
--patch 是 dsh 启动参数,用于指定一个额外的高优先级配置覆盖层,只对本次启动生效,适合临时试验配置改动。— dsh CLI README

来源