Repository navigation
Releases: che246/dsh-workbuddy2api-connect
Release list
v0.5.1 — 把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness
v0.5.1
只跟着仓库改名走的一版,功能与 v0.5.0 完全一致。
变更
- 仓库改名:
DeepSeek-Harness-workbuddy2api-panel→dsh-workbuddy2api-connect
(旧地址 301 到新地址,历史 tag / release / 附件全部保留) package.json补上repository/homepage/bugs(之前没有仓库字段),指向新地址- README 里的安装示例与版本链接改用新地址,并记一句改名说明
为什么值得单独发一版
附件里的 package.json 与 README.md 是随包分发的:v0.5.0 的包内还写着旧仓库地址。虽然 GitHub
对旧地址做了 301,但把「包里写的就是现在的地址」这件事做对更省心。
功能无变化,不必特意升级;下次装新版时自然会拿到这份元数据。
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.5.1/dsh-workbuddy2api-connect-0.5.1.tgz
copy dsh-workbuddy2api-connect-0.5.1.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.5.1.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.5.1/dsh-workbuddy2api-connect-0.5.1.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。
v0.5.0 — 把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness
v0.5.0
加了路由就能直接拉模型:填好 URL 与 Key,点「拉取模型」就地请求网关;拉不到就把原因写在卡片里。
新增:按当前 URL / Key 现拉清单
- 新接口
POST /probe:用界面此刻的baseURL/apiKey请求…/models,不落盘、不注册,只看
一眼能不能拉到 - 新建路由时卡片里是 「拉取模型(按当前 URL / Key 去网关取)」;拉到后标题变成
「模型选择(启用 N / 共 M)」并直接列出模型,可以立刻勾选 - 已保存的路由不必重填 Key:界面只回传
id,宿主自己按凭据名去凭据库 / 环境变量取 - 另有
重新拉取;现拉成功会标一句「清单来自 …(现拉,尚未保存)」 - 改了 URL 或 Key,之前现拉的清单自动作废——不让旧清单冒充新地址的结果
错误一律说清楚
以前拉不到只是「空表」,现在是具体原因(probeErrorText):
| 情况 | 卡片上看到的 |
|---|---|
| 401/403 | HTTP 401 Unauthorized——网关拒绝了这把 Key(不对、过期或没有权限):… |
| 端口没开 | 端口没有在监听(ECONNREFUSED)——检查地址与端口 |
| 域名解析失败 | 解析不了 … 的主机名(ENOTFOUND)——检查域名或网络 |
| 没响应 | 超时(网关没有响应) |
| 404 | 这个地址下没有 /models,确认 URL 是否指到网关的 /v1 根 |
| Fetch 规范禁用端口 | 这个端口被 Fetch 规范列为禁用端口(bad port)——换一个端口 |
| 通了但没模型 | 通了,但没有解析出任何模型(返回里没有 data/models 数组) |
| URL 本身不合法 | 请先填 URL… / URL 不合法:… / URL 只支持 http/https,收到 ftp: |
Node 的 fetch 在双栈下会抛 AggregateError(v4/v6 各一条),错误码埋在 errors[] 里——这里会把
各层 code 都翻出来,必要时退回底层 message,而不是只留一句 fetch failed。同一套文本也用在后台
刷新上,所以状态行里的错误同样更具体。
验证
node test/verify.mjs → 141/141(新增 19 项):
/probe:用 URL+Key 拉到清单、条目与/status同形、回报请求地址- 错误分支:错 Key(401)、端口没开(ECONNREFUSED)、非 http(s)、没填 URL
- 已保存路由不带 Key 也能拉(自动用凭据库那把)
- 界面:新路由显示「拉取模型」、没填 URL 点它显示原因、填 URL 后拉到 2 个模型并列出、标题变成
「启用 2 / 共 2」、标记「现拉,尚未保存」、401 时把原文显示在卡片里、失败不残留旧清单、换 URL 后回到「拉取模型」
node test/verify.mjs --offline → 28/28。
顺带修的一处测试基础设施
React 桩的 useEffect 之前忽略依赖数组,导致每次渲染都重跑「拉 /status」,异步回来会把用户
刚编辑的草稿覆盖掉(表现为「加了一行又消失」)。现在按 deps 做浅比较,与真实 React 一致——这类
假阴性不会再出现。
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.5.0/dsh-workbuddy2api-connect-0.5.0.tgz
copy dsh-workbuddy2api-connect-0.5.0.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.5.0.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.5.0/dsh-workbuddy2api-connect-0.5.0.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。
v0.4.0 — 把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness
v0.4.0
面板上可以选模型了:每条路由卡里多一个「模型选择」,勾选哪些模型要接进 DSH。
新增:模型选择
- 每张路由卡里一个可折叠的 「模型选择(启用 N / 共 M)」,展开后逐个列出网关返回的模型
- 勾选 = 启用;行尾标出要点:上下文 / 思考档 / 可关思考 / 图片 / 倍率
全选/全不选,以及关键字过滤(模型多时按 id 或名字搜)- 未勾选的模型进宿主的
exclude列表,不注册进 DSH;一个都没勾会给出「分组会是空的」警告 - 保存即热重注册,不需要重启
设计取舍:用排除(exclude)而不是白名单。网关新增模型时默认可用,不会被一份过期的白名单挡在外面;想全启用就是全部勾上(等价 exclude: [])。
宿主侧
GET /status每条路由新增catalog(逐条模型的id/contextWindow/maxTokens/reasoning/
efforts/off/images/rate)与exclude/enabled;models仍是总数,旧界面不受影响exclude清洗加固:去重、丢弃非字符串 / 空串 / 超过 200 字符 / 含换行的项,上限 2000 条- 过滤发生在
piModels()里,即注册给 pi-ai 的模型表本身就少了那些条目——不是只在界面上隐藏
验证
node test/verify.mjs → 122/122(新增 22 项):
status带完整清单、条目含上下文与思考档、默认exclude为空- 存
exclude后enabled减少、exclude已去重并丢掉脏数据 - 反向验证适配器:
adapter.listModels('workbuddy2apicn')注入 21 个(原本 22 个),被排除的那个确实不在列表里 - 清空
exclude后恢复 22 个 - 界面:标题计数、展开列出全部模型、默认全勾、取消勾选后计数变化、保存体带上
exclude、
全选/全不选、关键字过滤、无清单时的指引文案
node test/verify.mjs --offline → 28/28。
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.4.0/dsh-workbuddy2api-connect-0.4.0.tgz
copy dsh-workbuddy2api-connect-0.4.0.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.4.0.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.4.0/dsh-workbuddy2api-connect-0.4.0.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。
v0.3.1 — 把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness
v0.3.1
修好 DSH 0.2.1-rc.2 上的「不适配」:插件代码没坏,坏在两处元数据。
根因
| 现象 | 真因 |
|---|---|
| 升级后模型分组整组消失 | 更新重写了 profile 的 package.json,dsh.profile.bundles 里只剩官方条目,插件的 cordis.patch.yml 不再生效 |
| 即便加回 bundle 也不加载 | manifest 的 peer 钉着 @deepseek-ai/dsh-llm: 0.2.0-rc.2,运行时是 0.2.1-rc.2,被 evaluatePluginCompatibility 判为不兼容 |
第二点值得单独记一句:npm semver 对预发布版本有额外规则——只有 range 里出现同一个
X.Y.Z 的预发布比较符,该版本才算满足。所以 0.2.0-rc.2、>=0.2.0-rc.2、
>=0.2.0-0 <0.3.0 这几种写法都判定不了 0.2.1-rc.2(已用运行时自带的 semver 逐个验证)。
结论:不要用 peer 去钉 dsh 版本。
改动
- 去掉
@deepseek-ai/dsh-llm/@deepseek-ai/dsh-llm-pi-ai两个 peer(官方自带插件也都不声明),
不再被 dsh 的版本闸门卡住;@earendil-works/pi-ai的 peer 放宽为>=0.87.1 <2.0.0(运行时已升到 1.1.0) - 新增
node tools/check-compat.mjs:直接用 DSH 自己的evaluatePluginCompatibility判定当前
运行时,退出码 1 表示不兼容并打印requirements细节——以后每次 DSH 升级跑一次即可 - README 增「兼容性与升级排查」:两种成因、自检命令、以及补丁版部署下
dsh plugin install
因app.asar路径而失败时的兜底装法(解压到 profile 的node_modules)
验证
node tools/check-compat.mjs→ 兼容 ✓(同一脚本对旧清单返回不兼容 ✗,反证判定确实生效)node tools/dump-profile.mjs→ bundle 层含dsh-workbuddy2api-connect,合成条目 7 条node test/verify.mjs --offline→ 28/28;node test/verify.mjs→ 100/100
(真连两个网关、真发最小对话、界面接口、客户端卡片与展开开关,全部在 0.2.1-rc.2 + pi-ai 1.1.0 上跑通)
顺带
- profile 里被更新冲掉的
ui-chat.transcriptView已改回standard(= 卡片上「命令与思考:
完全展开」开关的关闭态),并在配置里加了两行注释,免得下次更新又被静默改回verbose - 与本次更新无关但会挡路的:profile 里
dsh-purge(github master tarball)的锁文件哈希已过期,
pnpm install会报ERR_PNPM_TARBALL_INTEGRITY。本次没动它(用解压兜底装法绕开),
要恢复一条命令装包的话,需在确认上游内容后跑pnpm install --update-checksums。
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.3.1/dsh-workbuddy2api-connect-0.3.1.tgz
copy dsh-workbuddy2api-connect-0.3.1.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.3.1.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.3.1/dsh-workbuddy2api-connect-0.3.1.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。
v0.3.0 — 把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness
v0.3.0
界面新增一个 「命令与思考:完全展开」开关(默认关闭),并修掉一处旧配置的语义错误。
新增:命令与思考展开开关
卡片顶部多了一个开关,控制 DSH「工作详情」(思考块 + 工具调用/命令)的展开程度:
| 开关 | 写入的值 | 效果 |
|---|---|---|
| 关(默认) | ui-chat.transcriptView = standard |
折叠已完成轮次、步骤分组——DSH 桌面版默认 |
| 开 | ui-chat.transcriptView = verbose |
轮次不折叠、步骤不分组,命令与思考全部摊开 |
- 改的是 DSH 自己那个值(设置 → 通用 → 工作详情,同一个
ui-chat设置分节),走ctx.configForms.get('ui-chat').set(...) - 立即生效,不需要重启;宿主设置持久化(
settings.yaml) - 与 DSH 设置页双向同步:卡片订阅了设置变化,在设置页改了档位,开关跟着变
- 开关旁标出当前档位(
compact精简 /standard标准 /detailed详细 /verbose完全展开) - 宿主没有设置服务(headless)时开关禁用并说明原因,卡片与网关同步都不受影响
如果你之前靠
cordis.patch.yml里的ui-chat.transcriptView: verbose默认全展开,这一版把它
改成了standard(= 开关关闭),以符合「默认关闭」。想默认全展开:把开关打开,或把配置改回
verbose。注意:在卡片或设置页改过之后,值会落到settings.yaml并覆盖cordis.patch.yml。
其余
- 安装 / 发布流程与上一版相同(
python tools/cut-release.py) - 验证台:离线 28 项 + 在线 100 项(新增 12 项开关断言:默认关闭、打开写
verbose、关闭写回
standard、设置页改动同步到开关、无设置服务时降级不崩)
说明文件里不要自带安装小节标题:
cut-release.py见到它就跳过追加,Release 正文里反而
没有安装步骤。安装章节由工具统一生成(桌面版 / Web / TUI 两条路径)。
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.3.0/dsh-workbuddy2api-connect-0.3.0.tgz
copy dsh-workbuddy2api-connect-0.3.0.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.3.0.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.3.0/dsh-workbuddy2api-connect-0.3.0.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。
v0.2.1 — WorkBuddy2API 网关模型目录接入 DSH(含可视界面)
v0.2.1
把 WorkBuddy2API 网关的模型目录自动同步进 DeepSeek Harness,并带一个可视界面来增删网关路由。
宿主侧
- 启动时与之后按周期拉每条路由的
/v1/models,把name/reasoning_supported_efforts/context_length/max_output_tokens/supports_images/credits映射成 pi-ai model descriptor,注册成 DSH 的 provider 路由 - 模型表变化下一个刷新周期自动跟上;拉取失败保留上一份模型表并按 10s→20s→… 退避重试;另有磁盘缓存,首启网关不可达也不会出现空分组
- 路由配置存
$DSH_HOME/.workbuddy2api-connect.json;密钥只进 DSH 凭据库(ctx.credentials),配置文件里只有凭据名
界面
「插件」页 → 本插件配置区,每张卡只填三样:
| 字段 | 说明 |
|---|---|
| 分组名称 | 模型选择器里显示的分组名 |
| URL | 网关的 OpenAI 兼容基地址 |
| Key | 只写不回显;已保存时留空不改,可勾选清除 |
- 路由 id(provider 名)与凭据名由分组名称自动派生,新建时确定、之后改名不变(避免既有会话与
agent-default-model指空) - 保存即热重注册并重拉模型表,不需要重启
- 状态行显示
N 个模型 · 上下文 192K–1000K · 思考档 low/high/max · 可关思考 3 个 · 上次刷新;失败时原样显示网关错误(如HTTP 401 invalid_api_key)
思考档位
- 按网关声明逐档映射,未声明的档位显式写
null——pi-ai 对缺键的默认不对称,只写声明的档才不会让用户看到假档位 - 「关闭思考」只给 deepseek 系:下发
thinking: {type: 'disabled'}(实测真能关)。非 deepseek 系链路上没有关闭手段(reasoning_effort: off会被网关降级回最低档,thinking字段被上游忽略),所以不提供 - 守住一条不变式:只有该模型的默认档能明确下发时才提供
off,避免用户没选档位却被静默关掉思考
验证
node test/verify.mjs --offline # 28 项:映射与派生规则
node test/verify.mjs # 88 项:真连网关 + 真发最小对话 + 界面接口 + 客户端卡片在线部分用一个假 Cordis 上下文把插件真跑起来(真 apply、真 PiAiAdapter、真 pi-ai、真网关、真 HTTP 处理函数),核对逐条上下文一致、思考开关的实际行为、界面接口的环回门禁与校验、热重注册、密钥写入与不回显、客户端卡片的字段与请求体。
已知边界
- 首次装/升级需要重启一次(provider 路由与客户端 bundle 都在 boot 时装配)
- 同一个 provider 路由不能被两个适配器拥有:本插件接管后请把
@deepseek-ai/dsh-llm-pi-ai里同名的providers条目清空 max_output_tokens是上游声称值(网关侧实测普遍虚高),插件如实透传,可用maxTokensCap钳制
安装
桌面版
桌面版的 desktop profile 由 App 独占管理(独立 CLI 的 --dump-config 之类会被拒绝),但装包这条路是通的。
建议手工改两处再 install——dsh plugin add 会重写 dsh.profile.bundles,实测会把其它第三方 bundle 从列表里挤掉(本机丢过 dsh-workbuddy-connect 与 @eghrhegpe/dsh-connect-qoder);而 install 只装依赖、不动配置。
# 0) 附件地址:https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.2.1/dsh-workbuddy2api-connect-0.2.1.tgz
copy dsh-workbuddy2api-connect-0.2.1.tgz "$env:USERPROFILE\.dsh\local-plugins\"然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json 两处:
dependencies里加"dsh-workbuddy2api-connect": "file:C:/Users/<你>/.dsh/local-plugins/dsh-workbuddy2api-connect-0.2.1.tgz"dsh.profile.bundles里追加"dsh-workbuddy2api-connect"
cd "$env:USERPROFILE\.dsh\profiles\desktop"
$dsh = "D:\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" # 换成你的安装目录
& $dsh plugin --profile desktop install也可以用
& $dsh plugin --profile desktop add "<附件路径>"(自动写依赖与 bundles),但装完务必核对dsh.profile.bundles,少了别的插件就补回去。
Web / TUI
dsh plugin --profile web add https://github.com/che246/dsh-workbuddy2api-connect/releases/download/v0.2.1/dsh-workbuddy2api-connect-0.2.1.tgz两种方式装完都要重启一次 DSH:provider 路由与浏览器卡片都在 boot 时装配。重启后「插件」页出现本插件的配置卡片,模型选择器出现配置好的分组。