Skip to content

feat:增加「显示的模型」白名单筛选功能 - #25

Merged
Mars-Sea merged 1 commit into
Mars-Sea:mainfrom
zsfjim:feat/visible-models
Sep 7, 2026
Merged

feat:增加「显示的模型」白名单筛选功能#25
Mars-Sea merged 1 commit into
Mars-Sea:mainfrom
zsfjim:feat/visible-models

Conversation

@zsfjim

@zsfjim zsfjim commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

关联 Issue:#24

做什么

给 Command Code 供应商增加「显示的模型」白名单筛选,模型目录大时可以只保留常用模型,模型选择器更清爽。

改动

  • 配置:新增可选 visibleModels: string[](model id 白名单)。未配置 / 空数组 = 显示全部(默认行为不变);非空 = 选择器只显示名单内模型,作用在套餐过滤(filterModelsByPlan)之后。落盘 llm-commandcode.visibleModels
  • 服务端listModels(provider, opts) 支持 { unfiltered: true };目录接口(commandcode/models)走全量做候选项,避免"显示全部"保存后候选项被清空;LLM 运行时走默认过滤路径。
  • 设置页:新增「显示的模型」卡片,复用"按模型切换账户"现成的 ModelMultiSelect 多选下拉,支持勾选 N 个 / "显示全部"(清空名单),走正常的保存-放弃流程,中英文案齐备,无新增 CSS。

验证

  • npx tsc --noEmit 通过;npm test 297/297 通过(含新增 3 个单测:白名单收窄、空名单全显、unfiltered 全量)。
  • 本地 67 个模型的目录下实测:白名单 4 个 → 选择器只显示 4 个;"显示全部"保存 → 候选项恢复全量。

默认关闭(空名单),对现有用户零影响。

- 新增可选配置 visibleModels: string[],未配置/空数组表示显示全部,
  非空时选择器只显示名单内模型,作用在套餐过滤之后
- listModels 支持 { unfiltered: true },目录接口走全量做候选项,
  LLM 运行时走默认过滤路径
- 设置页新增「显示的模型」卡片,复用 ModelMultiSelect,支持勾选/显示全部,
  走正常保存-放弃流程,中英文案齐备
- 新增 3 个单测:白名单收窄、空名单全显、unfiltered 全量

Closes Mars-Sea#24
@Mars-Sea
Mars-Sea merged commit 3515956 into Mars-Sea:main Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants