为子代理单独指定第三方模型,主对话不受影响
30.6/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/11/6 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/leotpp/dsh-subagent-toolkit.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
为 DeepSeek Harness 的子代理单独指定第三方模型(Settings → 子模型)
README
由 DeepSeek 最新模型翻译生成dsh-subagent-toolkit
给 DeepSeek Harness 的子代理单独指定模型。
主模型继续用你惯用的模型,子代理可以固定走另一个第三方模型 —— 不改 DSH 源码,不替换 DeepSeek Account,也不影响主对话。
子模型设置
选择子模型
适用 DSH 0.2.1-rc.5(engines.dsh: >=0.2.1-rc.5 <0.3.0)
为什么需要它
DeepSeek Harness 有两条模型链路:
| 链路 | 用途 | 由什么决定 |
| 主模型 | 主对话、主 Agent | agent-default-model |
| 子模型 | subagent 创建的子 Agent | tool-subagent 的默认值 / 父 Agent 路由;可选 subagent-model-selection-settings |
原生逻辑有两个现实限制:
1. 子模型默认继承主模型。 subagent 未显式指定 provider/model 时,子 Agent 走父 Agent 的同一路由。接入第三方模型时,常见做法是直接替换主模型 —— 主模型换成第三方,子代理也被一起绑走,无法做到「主模型 A + 子模型 B」。
2. 原生的模型选择是「授权名单」,不是「固定默认值」。
展开完整文档(README 剩余 1 节)
dsh-subagent-toolkit
给 DeepSeek Harness 的子代理单独指定模型。
主模型继续用你惯用的模型,子代理可以固定走另一个第三方模型 —— 不改 DSH 源码,不替换 DeepSeek Account,也不影响主对话。
子模型设置
选择子模型
适用 DSH 0.2.1-rc.5(engines.dsh: >=0.2.1-rc.5 <0.3.0)
为什么需要它
DeepSeek Harness 有两条模型链路:
| 链路 | 用途 | 由什么决定 |
| 主模型 | 主对话、主 Agent | agent-default-model |
| 子模型 | subagent 创建的子 Agent | tool-subagent 的默认值 / 父 Agent 路由;可选 subagent-model-selection-settings |
原生逻辑有两个现实限制:
1. 子模型默认继承主模型。 subagent 未显式指定 provider/model 时,子 Agent 走父 Agent 的同一路由。接入第三方模型时,常见做法是直接替换主模型 —— 主模型换成第三方,子代理也被一起绑走,无法做到「主模型 A + 子模型 B」。
2. 原生的模型选择是「授权名单」,不是「固定默认值」。 subagent-model-selection-settings 默认关闭;即使打开,也只是允许主 Agent 在每个 subagent 调用里从名单中挑一个模型。原生的「子智能体」设置页只能从当前模型目录里勾选授权,不能在同一页添加 OpenAI 兼容渠道、拉取模型或设置模型参数,也没有「固定子模型」这一项。主 Agent 不主动传参时,子代理还是回到主模型。
所以,直接接第三方模型时,子模型机制相当于被写死在「跟随主模型」上。本插件就是为补这一层灵活度而做的。
它做了什么
- Settings → 子模型 页面:添加 OpenAI 兼容渠道(Base URL、API Key)、获取模型列表、只选一个子模型;也可以保留「跟随主模型」。
- 写入官方设置:保存为 subagent-model-selection-settings = { enabled: true, allowedModels: [{ provider, model }] },并同步写入 llm-pi-ai.providers 的渠道/模型参数(上下文窗口、最大输出、思考强度)。
- 系统提示词引导:当允许名单恰好只有一个路由时,向主 Agent 注入一条提醒:派 subagent 时显式带上 provider、model 和 reasoning_effort。这样「固定子模型」在新会话里真正生效,而不只是写在配置里。
- 可选的 subagent_pi:用官方 Pi CLI 一次性进程执行子任务,完全独立于 DSH 的 in-process 子 Agent;不会加载 PI Desktop 的 Maker,也不会触发 codex exec。
不改 DSH 内核,不替换 deepseek-account;使用的是 DSH 官方的 bundle / 配置扩展机制。原生的 Plugins → Subagent 页(递归深度、并发、模型授权)仍然可用,两者共存。
工作机制
改造前后
flowchart LR
subgraph before["改造前:子模型只能跟随主模型"]
M1["主模型 A"] --> T1["subagent 工具"] --> C1["子 Agent只能用 A"]
end
subgraph after["使用本插件后:主模型和子模型解耦"]
M2["主模型 A保持不变"] --> T2["subagent 工具"] --> C2["子 Agent使用 B"]
P["Settings → 子模型选择唯一模型 B"] -.->|"allowedModels + 系统提示词"| T2
end
一次委派的完整流程
sequenceDiagram
autonumber
actor U as 用户 participant UI as Settings → 子模型 participant H as DSH Host participant M as 主 Agent(主模型 A) participant T as subagent 工具 participant S as 子 Agent(子模型 B)
U->>UI: 添加渠道 / 获取模型 / 选唯一模型 / 保存 UI->>H: 写入 llm-pi-ai.providers(渠道、模型参数) UI->>H: 写入 subagent-model-selection-settingsenabled=true, allowedModels=[B] Note over H: 新建 Session 时采样并写入subagent/model-selection-policy
H-->>M: 系统提示词:派 subagent 时带上指定路由 B
U->>M: 提出任务 M->>T: subagent(prompt, provider, model, reasoning_effort) T->>H: 校验 Session allowlist
H-->>T: 通过
T->>S: 启动子 Agent(模型 B)
S-->>M: 返回结果
两个半边
| 文件 | 运行位置 | 作用 |
| client.js | 浏览器(DSH Web GUI) | Settings → 子模型 页面:渠道、模型目录、唯一子模型、Pi CLI 高级项;通过 configForms 写官方配置命名空间 |
| index.js | Host | 注册 pi-cli 子代理提供方(subagent_pi);读取 subagent-model-selection-settings,在恰好一个路由时注入系统提示词 |
| cordis.patch.yml | Host 启动层 | bundle patch:插入 subagent-pi 和 tool-subagent-pi 两个条目 |
| package.json | — | DSH bundle 清单,声明 engines.dsh 和 client 注入 |
DSH 侧的两个关键点(使用时也要记住):
- subagent-model-selection-settings 是 Host 在创建 Agent 时采样 的设置。保存后只对 新会话 生效;老会话不会追溯。
- subagent 工具只有在 Session 存在 allowlist 且调用显式传 provider + model 时才会切换子路由;未传参时仍按 tool-subagent.agentOptions / 父 Agent 路由走。
安装
本地路径:
dsh plugin --profile desktop add /absolute/path/to/dsh-subagent-toolkit
或使用目录里已打好的 tgz:
dsh plugin --profile desktop add ./dist/dsh-subagent-toolkit-0.2.0.tgz
发布到 npm 后:
dsh plugin --profile desktop add dsh-subagent-toolkit
安装后打开 Settings → 子模型。
使用
1. 选择渠道:用已经存在的渠道,或点“添加 OpenAI 兼容渠道”,填 Base URL 和 API Key。
2. 获取模型:点“获取模型”,从返回的模型列表里选一个。
3. 只选一个模型并保存:保存后会写入 enabled=true + allowedModels=[该路由];想恢复“跟随主模型”就不选模型直接保存。
4. 新开会话:设置只在创建 Agent 时采样,保存后请新开会话(或重启 DSH)。
5. 可选 Pi CLI:在页面底部的 Advanced 区域配置 subagent_pi;pi 需在 PATH 中,或填写绝对路径。
版本、优先级与风险
配置优先级(谁覆盖谁)
DSH 的加载顺序是:
1. 内置 bundle 层(base / web-app 等)
2. 插件 bundle 层(按 profile package.json 的 dsh.profile.bundles 顺序,后加的在后)
3. profile 的 cordis.patch.yml
4. home 级 cordis.patch.yml(优先级最高)
也就是说:
- 插件不会比官方“优先”。 它只在 bundle 层插入自己的两个条目(subagent-pi、tool-subagent-pi),不覆盖官方条目;设置页保存的值走第 3 层,最终以用户 profile 为准。
- 和官方设置页的关系是“同一份数据”。 我们的页面与 DSH 官方的 Plugins → Subagent 页都编辑 subagent-model-selection-settings;不是谁优先级高,而是同一命名空间的值,最后保存的一方生效(页面内的 revision 校验只防同一页面的并发编辑)。
- 子代理运行时路由优先级:subagent 调用显式传入的 provider/model/reasoning_effort(必须在 Session allowlist 中)> tool-subagent.agentOptions 部署默认值 > 父 Agent 的主模型。
兼容性
| 项目 | 要求 |
| DSH | >=0.2.1-rc.5 <0.3.0;在 0.2.1-rc.5 上验证 |
| Client | Web 平台(dsh.client.platform: web),即桌面 App 的 Web GUI |
| Pi CLI(可选) | pi 在 PATH,或在 subagent-pi.binPath 配绝对路径 |
风险提示
- 软约束,不是内核强制。 “固定子模型”依靠系统提示词提醒主 Agent 传参;模型不遵守时仍可能退回主模型路由。若需要硬默认,请同时设置 tool-subagent.agentOptions(并验证它与模型自选的叠加效果)。
- 只影响新会话。 subagent-model-selection-settings 在创建 Agent 时采样;保存后请新开会话(或重启 DSH),老会话不会更新。
- 路由失效会报错。 删除/重命名渠道或模型后,已保存的 allowedModels 会指向不存在的路由,subagent 调用会失败;回设置页重新选择并保存即可。
- 升级可能失效。 插件依赖 DSH 的扩展点:configForms、settings.section、llm-pi-ai.providers、subagent-model-selection-settings。DSH 升级到 0.3.x 后,bundle 可能因 engines.dsh 不匹配被跳过(设置页消失),或 client API 变化导致页面不可用。升级前保留旧版 dist/*.tgz 以便回滚;升级后先验证设置页和一次 delegation。
- 条目 id 冲突。 插件插入的 subagent-pi / tool-subagent-pi 若与未来官方条目重名,Loader 会报重复 id;届时需要改 id 或改用官方能力。
- Pi CLI 是外部进程。 subagent_pi 会执行你本机的 pi 二进制,不继承父会话上下文和 DSH Session 记录;只从可信来源安装。未安装 pi 时只有 subagent_pi 不可用,不影响原生 subagent。
- API Key 存储。 页面通过 DSH credential service 保存 key,设置页不回显;不要把 key 写进 README 或配置文件。
DSH 升级后的自检
1. 打开 Settings → 子模型,确认能读取渠道和模型。
2. 保存一次唯一子模型,检查 ~/.dsh/profiles/desktop/cordis.patch.yml 里的 subagent-model-selection-settings。
3. 新开一个会话,触发一次 subagent,确认子会话使用指定模型。
4. 如果页面消失或保存报错:先回滚到旧版 DSH,或禁用本插件并改用官方能力。
目录结构
dsh-subagent-toolkit/
├── index.js # Host 半边:subagent_pi 提供方 + 系统提示词引导 ├── client.js # 浏览器半边:Settings → 子模型 页面 ├── cordis.patch.yml # DSH bundle patch:插入 subagent-pi / tool-subagent-pi ├── package.json # DSH bundle 清单 ├── locale/ # 页面文案(en / zh) ├── docs/ # 截图 ├── dist/ # 打包好的安装 tgz └── market/ # DSH 插件市场索引示例
开发
修改 index.js / client.js 后,用 npm pack 或 pnpm pack 重新生成 dist/dsh-subagent-toolkit-<version>.tgz,再按上面的安装命令安装即可。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
leotpp/dsh-subagent-toolkit
为子代理单独指定第三方模型,主对话不受影响
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,891已汉化DeepSeek 客户端
74.4
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,884已汉化DSH
72.2
花束设计alchaincyf/huashu-design
一句话生成网页、原型、PPT 与信息图等可交付设计
★ 28,638已汉化DSH
71.7
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,410已汉化DSH
71.7
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,330已汉化DSH
71.3
这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。