# dsh-zai-coding-models [English](README.md) | 中文 一个 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)(DSH)桥接插件:在自带 pi-ai 目录跟上来之前,把**智谱 / Z.AI coding 套餐的最新模型**——目前是 **GLM-5.3**——补到内置的 `zai-coding-cn` 提供方路由上。 如果你买了智谱 coding / token 套餐,在 DSH 的 Models 页面添加了 API key,但模型选择器里只有上一代的模型(没有 GLM-5.3),这个插件就是为你准备的:你的 token 套餐在智谱发布新模型的第一时间就能用上——不需要升级 DSH、不需要折腾重启、不需要手改 `settings.yaml`。 ## 它做了什么 DSH 从打包进依赖树的 pi-ai 目录解析每个提供方的模型列表。智谱发布新模型时(GLM-5.3 于 2026 年 8 月上线 coding 端点),目录会滞后一到两个发布周期。DSH 本身有一等的逃生口——在配置里声明提供方 profile 的 `models` 列表——本插件就是把这个逃生口打包,让 `dsh plugin add` 一步到位: - 原样保留内置的六个 `zai-coding-cn` 模型(glm-4.5-air、glm-4.7、glm-5-turbo、glm-5.1、glm-5.2、glm-5v-turbo); - 新增 **glm-5.3**,按官方能力声明:纯文本、1M 上下文、128K 最大输出,思考档位 Low / Medium / High / Max(GLM-5.3 **不能关闭思考**——Low 就是最轻的档); - 设置端点需要的 compat 开关(`thinkingFormat: zai`、`supportsReasoningEffort: true`——少了后者,effort 参数会被静默丢弃); - 其他一概不碰:你的 API key、端点、其余提供方仍留在你自己的设置里。 ## 安装 ```bash dsh plugin --profile web add dsh-zai-coding-models ``` (把 `web` 换成 `tui`/`headless`/你的 profile)。然后重启一次 DSH——插件 bundle 在启动时读取。你已经存好的 `ZAI_CODING_CN_API_KEY`(Models 页面写入的)原样生效;GLM-5.3 出现在原有 Z.AI Coding CN 提供方下的模型选择器里。 卸载:`dsh plugin --profile web remove dsh-zai-coding-models`。 ## 原理 包里声明的 `dsh.bundle.patch` 层定向到内置的 `llm-pi-ai` 组合行,提供一份基础 provider profile: ```yaml - id: llm-pi-ai config: providers: zai-coding-cn: models: - id: glm-4.5-air # 只写 id 的条目 - id: glm-4.7 # 从已安装目录 - id: glm-5-turbo # 继承全部字段 - id: glm-5.1 - id: glm-5.2 - id: glm-5v-turbo - id: glm-5.3 name: GLM-5.3 contextWindow: 1000000 maxTokens: 131072 reasoningEfforts: low: low medium: high high: high max: max compat: thinkingFormat: zai supportsReasoningEffort: true ``` DSH 会把你的用户设置按提供方合并到这份 base 之上,所以只存了 `apiKeyEnv: ZAI_CODING_CN_API_KEY` 的 profile(Models 页面写出来的形态)能干净合并。同样的 YAML 也可以直接放进 `~/.dsh/settings.yaml`(不想装插件的话)——见[手动配方](#手动配方不用插件)。 ## 已知限制 - **`models` 列表会替换该路由的目录**——这是 DSH 的语义,不是本插件的选择。列表随插件版本钉死,所以 pi-ai 发 `glm-5.4` 时,本插件要发新版本才会带上(而如果它已经收录了你要的模型,卸载本插件即可回到目录)。留意 releases,或者 DSH 升级后看看选择器。 - 如果你的**用户级** `settings.yaml` 已经为 `zai-coding-cn` 声明了 `models`,你的层会覆盖插件的。只保留一个来源。 - patch 替换 `llm-pi-ai` 行的整个 config;内置行目前不带 config,但若未来 DSH 版本给这一行加了 config,本插件可能需要跟进。 ## 手动配方(不用插件) 加进 `~/.dsh/settings.yaml`(热生效,无需重启): ```yaml llm-pi-ai: providers: zai-coding-cn: apiKeyEnv: ZAI_CODING_CN_API_KEY # 保留你现有的 models: - id: glm-4.5-air - id: glm-4.7 - id: glm-5-turbo - id: glm-5.1 - id: glm-5.2 - id: glm-5v-turbo - id: glm-5.3 name: GLM-5.3 contextWindow: 1000000 maxTokens: 131072 reasoningEfforts: low: low medium: high high: high max: max compat: thinkingFormat: zai supportsReasoningEffort: true ``` ## 上游状态 pi(pi-ai 的上游项目)的 `main` 分支已经收录 glm-5.3(`packages/ai`,由 models.dev 数据库生成);一旦 pi-ai 发版且 DSH 某个版本采纳,本插件对该模型就 redundant 了。它定位就是桥接,走的也正是 DSH 官方为生态工作推荐的贡献路径。 ## 许可 MIT