🐳 第三章 一切皆插件意味着什么
📄 一句话概括

四套 Preset 共享同一个 Runtime,差别只在 composition——是【一套底座的四份装配清单】,不是四个独立的 Agent。

📝 本节和前面几节的关系

2.4.1 看过四套的真身,2.4.2 量出了它们的差分。这一节回答一个更根本的问题:这四套到底是什么关系。

一、先看一个证据:四套预设同一个名

打开配置树,四套预设的定义里,name 字段一模一样——都是 @deepseek-ai/dsh-agent-preset,不同的只有 id 与 order。

也就是说,【预设】本身只是一个插件包的四个实例——同一个模具压出的四块砖。 界面上那四个名字是给人看的;配置里,它们共享同一份实现。

二、切换预设,换的是清单不是软件

选预设不是换软件,更不是重装——换的只是 composition(装配清单)。

和 1.1 呼应:同一套 Runtime 长出四种产品形态;这里是同一套 Runtime 装出四套能力。产品多样靠 UI 插件,能力多样靠装配清单。

会话开始后预设锁定(2.4.1 讲过):一次会话一份清单,中途不换——唯一的例外留给 Creative,3.6 再讲。

三、为什么非要分清【不是四个 Agent】

这个区分有两个实际后果:

顺带一提,2.6 说的【做差集看结构】之所以成立,前提就是它们共享同一个底座——不在一个底座上的东西,差集没有意义。

四、四套一句话定位

后面四节会逐套拆解,先把定位立在这里:

五、动手 Demo:四套 Preset,一套 Runtime

把配置树里的证据和差分数据放到一起看:

presets = [
    ("Standard", "standard", 19, "基准"),
    ("PTC", "ptc", 20, "多 1 件 tool-presentation"),
    ("Minimal", "minimal", 2, "多 1 件,少 18 件"),
    ("Creative", "cordis", 20, "多 1 件 tool-cordis"),
]
for name, pid, n, diff in presets:
    print("  %-10s %-10s %2d 件  %s" % (name, pid, n, diff))
print()
print("四套预设的 name 全是同一个:")
print("  @deepseek-ai/dsh-agent-preset")

实跑输出:

--------------------------------------------------------------------
四套 Preset,一套 Runtime
--------------------------------------------------------------------
  配置树里,四套预设的定义长这样(节选):

    - id: preset-standard   name: '@deepseek-ai/dsh-agent-preset'
    - id: preset-ptc        name: '@deepseek-ai/dsh-agent-preset'
    - id: preset-minimal    name: '@deepseek-ai/dsh-agent-preset'
    - id: preset-cordis     name: '@deepseek-ai/dsh-agent-preset'

  四行里,name 一模一样,不同的只有 id 和 order。

  预设         内部 id      顶层插件数     相对 Standard
  -------------------------------------------------------------------
  Standard     standard     19             基准
  PTC          ptc          20             多 1 件 tool-presentation
  Minimal      minimal      2              多 1 件,少 18 件
  Creative     cordis       20             多 1 件 tool-cordis
  -------------------------------------------------------------------

  算一笔账:四套预设,要维护几份 Runtime 代码?

    Runtime 代码           1 份
    预设配置               4 段(每段就是一张装配清单)
    改一处能力要动几处     1 处(四套同时受益)

  如果它们真是四个独立 Agent,上面第三行就得写成 4。
  【一套底座、四份清单】——这就是 3.1 要立住的判断。

最值得盯住的是最后一行:四套预设共用同一个插件包,不同的只是 id、order 和装配清单。 这就是【不是 4 个独立 Agent】的实物证据——底座只有一套。 顺带解释了 2.4.2 的差分为什么那么整齐:PTC 和 Creative 都恰好是 Standard 加一件。

30 秒实验

  1. 打开 --dump-default-config,搜 preset-,亲眼看四套预设的 name 是不是同一个。
  2. 在界面里把四套预设各切一次,观察:变的是能力面板,不是整个软件。
  3. 想一个问题:如果四套真是四个独立产品,2.4.2 的差集还能做吗?

常见误区

  1. 错误:换预设就是换了一个 Agent。——纠正:换的只是装配清单,Runtime、模型、插件池都是同一套。
  2. 错误:Minimal 是 Standard 删减来的。——纠正:差分显示它与 Standard 几乎不重叠,它是另起炉灶的路线。
  3. 错误:四套预设要分别升级维护。——纠正:插件只有一份,改一处四处受益;预设只是四段配置。
自测三问(点开对答案) 1. 四套预设的 name 字段是什么? —— 都是 `@deepseek-ai/dsh-agent-preset`;不同的只是 id 与 order。 2. 切换预设时,什么变了、什么没变? —— 变的是 composition(装配清单);Runtime、模型、插件池都没变。 3. 为什么【做差集看结构】在这里成立? —— 因为四套共享同一个底座,**同一把尺子量出来才有可比性**。

相关笔记