dsh 的角色预设与模型池:模型委派给角色,操作者规则挑模型,失败则沿角色链回退。
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/15 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add snnh/dsh-role-config该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · skill
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 17 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意未发布到 npm registry,仅可从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-role-config(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/9 17:36:04
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/schemastery@deepseek-ai/dsh-agent@deepseek-ai/dsh-jobs@deepseek-ai/dsh-llm@deepseek-ai/dsh-session@deepseek-ai/dsh-subagent@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-tools@deepseek-ai/dsh-scope给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 模型委派给角色
- 操作者规则挑模型
- 失败沿角色链回退
README
由 DeepSeek 最新模型翻译生成description: "dsh 的角色预设与模型池:模型只选角色,由用户的规则决定用哪个模型,失败按角色链逐级回退。"
@snnh/dsh-role-config
这个 dsh bundle 给委派加了两条入口和一层决策:
- 角色预设:模型按角色委派(role: "premium"),永远不知道背后是哪个模型。每个角色带模型可读的描述、优先级链,以及用户自己写的路由规则。
- 模型池:模型可以直接点名的模型,每个都带用户写的描述。直连按原样执行,不参与回退。
- 路由规则:在角色链首之前按顺序求值——提示词包含、正则、必需模态、最小上下文窗口、用户自己的能力标签。全不命中且开启 AI 路由时,由一次有界的路由器调用裁决;失败则回落链首。
- 优先级回退:角色路径创建的子代理请求终局失败后,用同一请求改走链上下一个成员;链走完则原失败照常上报。
- 功能绑定:上下文压缩与会话标题可以跟随某个角色,或保持 dsh 默认。
安装
dsh plugin --profile <profile> add @snnh/dsh-role-config
包已发布到 npm,上面的命令不需要构建步骤。
展开完整文档(README 剩余 1 节)
description: "dsh 的角色预设与模型池:模型只选角色,由用户的规则决定用哪个模型,失败按角色链逐级回退。"
@snnh/dsh-role-config
这个 dsh bundle 给委派加了两条入口和一层决策:
- 角色预设:模型按角色委派(role: "premium"),永远不知道背后是哪个模型。每个角色带模型可读的描述、优先级链,以及用户自己写的路由规则。
- 模型池:模型可以直接点名的模型,每个都带用户写的描述。直连按原样执行,不参与回退。
- 路由规则:在角色链首之前按顺序求值——提示词包含、正则、必需模态、最小上下文窗口、用户自己的能力标签。全不命中且开启 AI 路由时,由一次有界的路由器调用裁决;失败则回落链首。
- 优先级回退:角色路径创建的子代理请求终局失败后,用同一请求改走链上下一个成员;链走完则原失败照常上报。
- 功能绑定:上下文压缩与会话标题可以跟随某个角色,或保持 dsh 默认。
安装
dsh plugin --profile <profile> add @snnh/dsh-role-config
包已发布到 npm,上面的命令不需要构建步骤。git 安装(github:snnh/dsh-role-config)同样可用:构建产物(lib/index.js、lib/client.js 及其声明)随仓库提交,因此不需要构建脚本,也不需要 allowBuilds 放行。改动 src/ 后用 npm run build 重新构建。
默认什么都不开
刚挂载时插件不注册任何工具,也不改动任何 agent:exposure.delegateTool 与 exposure.listTool 的缺省值都是 false,官方委派工具照常服务,直到操作者主动点名要可路由的那一条。打开这两个开关就是全部的开启动作:
- id: role-config
config:
exposure:
delegateTool: true
listTool: true
pool:
- provider: deepseek-official
model: deepseek-chat
唯一的前置条件
开启 exposure.delegateTool: true 后,本插件用官方 subagent 同名注册委派工具。插件启用时,agent 看到的就是这条可路由的工具;停用插件,官方工具随即恢复服务。遮蔽要求官方工具比 agent 更靠外一层,因此官方 tool-subagent 行必须带 modelSelectionSettings: false:
- id: tool-subagent
config:
provider: spawn
toolName: subagent
modelSelectionSettings: false
那一行必须保持启用。为了腾出名字而停用它是一笔单向交易:此后一旦停用本插件,部署里就一个委派工具都没有了。其实并不需要:可路由的注册比预设作用域更靠内,因此它赢得这个名字,而官方工具依旧挂载着、随时可用。关闭接管(delegateTool: false,或设置页的恢复官方委派工具按钮——它一步完成"关开关并保存")就把名字交还回去,插件顺手清掉官方行上遗留的 disabled: true。
profile patch 只能改到 profile 自己声明的行;出厂预设的行嵌在 cordis:group 里,而 patch 会整体替换该行 config,所以需要像 harness 自己的 overlay 那样重述预设行、只翻这一个字段(出厂清单见 packages/bundle/web-app/presets/standard.patch.yml,它变化时请同步这份副本):
- id: preset-standard
config:
id: standard
order: 1
plugins:
…出厂插件清单,原样保留…
- id: delegation
name: cordis:group
group: true
isolate: { workflowEngine: true }
config:
- id: tool-subagent
name: '@deepseek-ai/dsh-tool-subagent'
config:
provider: spawn
toolName: subagent
modelSelectionSettings: false
开启模型选择时,官方工具会注册进每个 agent 自己的作用域,同作用域无法存在同名工具:这种情况插件会点名需要修改的行并保留官方工具,会话照常打开。若你更想保留官方配置,可用 delegate.toolName 改本插件的工具名。
在 LAN 地址上配置
设置文档默认只对回环页面开放,因此在 http://<lan-ip>:<port> 访问的部署里,模型页与所有插件页都会显示为不可用。若要在你实际使用的地址上配置本插件,请重述 client-connection 行并打开操作面:
- id: connection
config:
trustedHosts: !!js ctx.webRuntime.trustedHosts
operatorSurface: trusted
patch 会整体替换该行 config,所以 trustedHosts 要一并保留。页面只会在这之后、且访问令牌校验通过时才被提供,它发起的每个请求仍要过 Host/Origin 围栏与会话检查;改变的只是设置页与插件页终于能渲染。
配置
Web 侧栏打开 Plugins,选择 Role Config。页面编辑同一份 role-config 设置:模型池与描述、角色预设与链/规则、开关(暴露面、回退、AI 路由)、功能绑定、委派接线。
模型能看到什么
| 暴露面 | 内容 | 时机 |
| list_model_roles | 角色 id + 描述;池内路由 + 描述 | 仅模型主动调用时 |
| 系统提示 | 同一份目录的紧凑版 | 仅开启 exposure.sessionStart |
| subagent(role) | 不含所选模型的任何信息 | 始终 |
角色的成员、规则与路由器的裁决从不到达模型。
限制
- 直接指定路由不走回退;主 agent 自身的请求也不回退。
- agent team 成员继承 Lead 的路由,本插件只能对成员做失败回退,不能挑模型。
- 功能绑定写的是目标行的配置,本身没有回退。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
snnh/dsh-role-config
dsh 的角色预设与模型池:模型委派给角色,操作者规则挑模型,失败则沿角色链回退。
相关插件 · 技能 / 提示词
人设统管ZiChuanLan/agent-purge
一份系统提示词,喂给多个 coding…
★ 931已汉化DSH
73.8
人物画像蒸馏titanwings/distilly
Distilly — 把他们的思考方式提炼成可复用的技能,供任何智能体或机器人使用。原名 Colleague Skill(原同事 Skill)。
★ 25,659已汉化DSH
71.3
推理工作空间套件Tiger3807861189/J-Space-Cognition-Suite
J-Space 是面向复杂推理、大型仓库工程、子代理协作与授权安全分析的推理时工作空间和控制套件。
★ 2,957已汉化DSH
70.5
两阶段工具锚定预设xiaobright/dsh-anchored-standard
实验性 DeepSeek Harness agent preset…
★ 3,742已汉化DSH
70.1
智能体工作流编排nrslib/takt
不再日夜盯着 AI 编码智能体。
★ 1,402已汉化DSH
70
Agent 运行时手册Electricitysheep/dsh-handbook
DeepSeek Harness dsh 从 0 到 1 深度手册:安装/插件开发/性能调优/实测案例/同模型多…
★ 827已汉化DSH
68.7