# 更新日志 `dsh-model-context-catalog` 的重要变更均记录在此。每个正式版本必须保留一个 `## X.Y.Z` 小节;发布流水线会提取该小节作为 Release Notes,并拒绝发布缺少对应小节的版本。 ## 0.5.0 - 新增 CLIProxyAPI 上下文容量获取:点击“一键匹配”,通过服务端复用已配置服务商的地址、凭据和请求头,请求 `/models?client_version=1`。 - 按当前服务商下的模型 ID 精确匹配接口返回值,容量来源显示为 CLIProxyAPI;同时保留 models.dev 参考容量,支持在下拉框中选择。 - 已有窗口默认保留;尚未设置窗口时优先推荐接口容量。接口获取失败时继续使用其他参考,models.dev 暂不可用时仍可采用接口容量和当前配置。 - 每个服务商单次查询,限制并发、超时和响应大小;保存前核对配置版本,服务商配置变化时要求重新匹配。 - 补充接口解析、凭据使用、失败回退、路由隔离和页面交互测试;更新中英文文案及使用说明。 ## 0.4.3 - 容量下拉框已有选中值时,移除多余的“选择参考容量”空选项,只显示当前窗口和实际参考容量。 - 尚未确定容量时保留不可选择的提示,避免用户误选空值后无法批量添加模型。 ## 0.4.2 - 点击“一键匹配”时自动获取 models.dev 最新模型与服务商资料;使用 24 小时浏览器本地缓存,过期自动刷新,无需脚本或额外按钮。 - 更新失败时使用上次成功的资料并显示提示,不延长旧资料有效期;首次获取失败可重试或手动添加。存储不可用时仍支持获取资料与内存缓存。 - 校验下载和缓存数据,限制请求等待时间,合并同一实例的并发请求;公开资料请求不附带模型配置、凭据或页面 URL。 - 预览展示本次资料的模型数量、获取日期和缓存状态;批量确认沿用该预览的资料,保留原有路由核对与用户勾选流程。 - 移除发布包和前端模块内的固定容量快照,历史资料仅保留为离线测试夹具;更新中英文文案、README 和维护说明,增加缓存及网络失败回归测试。 ## 0.4.1 - 扩大模型信息匹配:支持 `m3`、`astra`、`gpt-6-astra-cdx`、`astra-gpt` 等短名称、路由别名和乱序名称;保留版本及型号区别,信息不足或指向多个型号时不猜测。 - 新候选显示“模型信息匹配,待确认”,默认不勾选;已有窗口仍保留当前值,容量来源沿用服务商优先、模型目录回退规则。 - 修复日期与版本归一化把 `gpt-latest` 等已知别名简化为系列名后,导致单独 `gpt` 被误匹配的问题。 - README 补充 `k3`、`m3` 和 Astra 别名的匹配示例,说明已知别名来自 models.dev 服务商记录,区分直接识别与型号推测。 - 更新主要演示截图及发布包图片路径。 ## 0.4.0 一键匹配已配置模型的上下文窗口,勾选后批量配置,也可将已有窗口纳入管理。 - 内置 models.dev 的上下文窗口资料,记录来源、时间和内容摘要;只补全上下文窗口。 - 新增一键匹配、候选预览、逐项勾选、容量选择、全选和批量添加;保留手动添加及原有目录同步。 - 区分模型厂家与服务商;按 provider 标识或展示名称匹配容量,未命中时使用独立模型目录默认值,避免混入其他网关的窗口。单一值直接展示,多选项注明来源。 - 支持大小写、分隔符、服务商前缀、日期与部署版本后缀和显示名称匹配,保留型号的主要版本及 flash/mini/thinking 等区别。 - 核对 DSH 内置窗口和当前配置,只跳过已有管理条目;已有窗口默认保留当前值,已有容量差异与模糊匹配默认不选中。 - 批量确认重新核对路由和条目,配置变化或写入失败时保留预览并提示重试。 - 客户端声明 remote.llm 依赖;构建将参考数据与匹配代码合并成单个客户端模块,运行时不请求外部资料站点。 - 更新中英文界面和 README,明确原生配置已有能力及插件的新价值。 - 源码统一放入 `src/`,拆分界面组件、配置控制器、模型匹配、provider 别名和 Host 同步;使用 esbuild 按模块依赖生成稳定发布入口。 - 自动容量备注精简为参考方和资料站;兼容显示旧自动备注,保留手写备注及详细来源链接,并明确 provider 匹配与回退规则。 - 修复插件热更新时旧实例清理导致新界面样式丢失的问题。 - 已有上下文窗口的模型也可批量纳入管理;默认保留当前值,支持无公开参考资料的已配置模型,删除条目后可重新添加。 ## 0.3.0 对照 DSH `0.2.0-rc.2` 维护自定义模型路由的上下文窗口。 - 将 Host 的旧 `settings.register/get/update` 迁移为 volatile `Config`、descriptor 和 revision CAS 路径 mutation。 - 同步只写目标模型的 `contextWindow`,不再重写数组;保护凭据、模型别名及其他字段,冲突重试时重新定位模型。 - 修复运行中保存目录未同步的问题:退出 DSH HMR 的异步事务上下文后再排队写入,避免被拒绝为嵌套事务;接收跨组件的 volatile 更新和 profile 重载通知。 - 浏览器由 `settingsScope.bind` 迁移到共享的 `configForms.get`,不释放其他页面共用的表单。 - 文档说明安装、启用与自定义路由的使用流程,加入真实设置截图和工作方式图。 - 目录修改按条目提交并携带读取时的 revision,写入返回 false 时显示失败并保留编辑器。 - 增加容量来源链接;核对模型行显式容量,缺少窗口或容量不一致时显示同步提示。 - 移除默认容量目录与来源标签,新安装从空列表开始;保留已有配置与启停状态。 - 设置页只保留启用开关,在未同步、模型被移除或写入失败时显示必要提示;编辑停用条目后保存不会自动启用。 - 明确用途为自定义 provider、中转站和模型别名;补充容量来源、内置 provider 和原生配置的适用边界。 - 更新 DSH peerDependencies 和客户端模块依赖,移除已失效的 client-runtime 依赖。 - 测试限定插件 test 目录,加入真实 DSH 0.2 SettingsForms 回归。 ## 0.2.1 重构设置页的模型下拉栏,对齐 DSH 官方选择器的视觉与交互: - **紧凑的官方风格菜单**:每个模型只显示一行名称;选中态改为浅灰圆角背景, 移除蓝色高亮、勾选图标和重复的模型 ID;provider 分组压缩为单行 「displayName · provider key」,不再显示模型计数。 - **独立的浮动面板**:菜单改用 viewport 固定定位,不再被设置卡片与编辑器的 `overflow: hidden` 裁剪;列表最大高度提升到约 370px,宽度下限 240px。 - **视口自适应定位**:菜单左右自动约束在屏幕内,下方空间不足时自动向上弹出, 并跟随窗口滚动与缩放实时更新位置。 - **更安静的搜索框**:弱边框、聚焦时不再出现双层蓝色描边。 - 模型名称、`(Agent Plan)` 等原始信息、键盘导航与 ARIA listbox 语义全部保留, provider key、模型 ID 仍可搜索。 ## 0.2.0 首次 npm 发布。修复自定义模型路由上的 `pi-ai detected context overflow …` 误报: pi-ai 适配器会为未声明容量的路由生成 262,144 tokens 猜测兜底 (`DEFAULT_CONTEXT_WINDOW`),静默溢出启发式又把这个猜测当成真实限制。结果是成功的长上下文 `stop` 回合被重新分类为 `CONTEXT_WINDOW_EXCEEDED`——工具循环继续工作,但最终回答失败; `/compact` 因复用同一路由生成摘要,也会以相同原因失败。 插件为精确路由声明容量,并通过公开 Settings API 将其同步进 `llm-pi-ai`。 - **忠实显示模型名称**:设置页模型选择器原样显示已配置名称,包括 `(Agent Plan)` 等后缀; 只有名称不存在时才使用模型 ID。套餐后缀可参与搜索,绝不改写。 - **按 provider 分组的模型组合框**:sticky 分组标题同时显示展示名称、原始 provider key 和模型数量;支持按 provider、名称和 ID 搜索;支持 ArrowUp/Down、Home/End、Enter、 Escape,并提供完整 ARIA listbox 语义。 - **诚实显示容量状态**:模型行显式配置显示为 **已生效**;provider 默认值显示为 **提供方默认容量**,仅在悬浮时显示数值。适配器的 262,144 兜底不会被展示为真实限制。 其他状态包括:**等待同步**、**未配置此路由**、**已停用**。 - **服务状态提示**:增加目录不可用、只读、已配置模型列表不可用三类通知;只读模式会禁用 添加和保存。 - **同步加固**:使用 revision CAS 和有限冲突重试;始终保留无关 `llm-pi-ai` 字段及路由; 目录不可读时不会修改 `llm-pi-ai`。 - **打包与分发**:加入 `engines >= 22`、`publishConfig`、`repository` 元数据;CI 覆盖 Node.js 22/24 和 `dsh-plugin-checker`;通过 GitHub Actions + npm Trusted Publishing (OIDC)按 tag 发布,启用 `--provenance`、tarball 边界检查和逐版本 CHANGELOG 守卫。