dsh-zai-coding-models
English | 中文
A DeepSeek Harness (DSH) bridge plugin that exposes the newest Zhipu / Z.AI coding-plan models — currently GLM-5.3 — on the stock zai-coding-cn provider route, before the pi-ai catalog bundled with your DSH release catches up.
If you bought a Zhipu (智谱) coding plan / token plan, added the API key in the DSH Models page, and the model picker only offers models one generation behind (no GLM-5.3), this plugin is for you: your token plan works with the newest models the moment Zhipu ships them — no DSH upgrade, no restart dance, no hand-editing of settings.yaml.
What it does
DSH resolves each provider's model list from the pi-ai catalog compiled into its dependency tree. When Zhipu ships a new model (GLM-5.3 went live on the coding endpoint in August 2026) the catalog lags behind by a release cycle or two. DSH has a first-class escape hatch — a provider profile's models list declared in configuration — and this plugin is exactly that escape hatch, packaged so dsh plugin add carries it for you:
- keeps the six bundled
zai-coding-cnmodels untouched (glm-4.5-air,
glm-4.7, glm-5-turbo, glm-5.1, glm-5.2, glm-5v-turbo);
- adds glm-5.3 with its official capabilities: text-only, 1M context,
128K max output, thinking levels Low / Medium / High / Max (thinking cannot be turned off on GLM-5.3 — Low is the lightest setting);
- sets the compat flags the endpoint needs (
thinkingFormat: zai,
supportsReasoningEffort: true — without the latter the effort parameter is silently dropped);
- touches nothing else: your API key, endpoint, and every other provider keep
living in your own settings as before.
Install
dsh plugin --profile web add dsh-zai-coding-models # from npm
dsh plugin --profile web add github:auuduu/dsh-zai-coding-models # from GitHub(replace web with tui/headless/your profile). Then restart DSH once — plugin bundles are read at boot. Your ZAI_CODING_CN_API_KEY (stored through the Models page) is picked up as-is; GLM-5.3 appears in the model picker under the existing Z.AI Coding CN provider.
To remove: dsh plugin --profile web remove dsh-zai-coding-models.
How it works
The package declares a dsh.bundle.patch layer that targets the stock llm-pi-ai composition row and supplies a base provider profile:
- id: llm-pi-ai
config:
providers:
zai-coding-cn:
models:
- id: glm-4.5-air # id-only entries inherit
- id: glm-4.7 # everything from the
- id: glm-5-turbo # installed catalog
- 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: trueDSH merges your user settings per-provider on top of this base, so a profile that only stores apiKeyEnv: ZAI_CODING_CN_API_KEY (what the Models page writes) merges cleanly. The same YAML works standalone in ~/.dsh/settings.yaml if you prefer not to install anything — see [the manual recipe](#manual-recipe-no-plugin).
Known limits
- The
modelslist replaces the route's catalog — that is DSH semantics,
not a choice. The list is pinned per plugin release, so when pi-ai ships glm-5.4, this plugin must release a new version to carry it (and if it already bundles the model you wanted, uninstall the plugin to return to the catalog). Watch releases, or just check the picker after DSH upgrades.
- If your user
settings.yamlalready declaresmodelsfor
zai-coding-cn, your layer wins over the plugin's. Keep exactly one source.
- The patch replaces the whole config of the
llm-pi-airow; the stock row
ships config-less, but if a future DSH release puts config there, this plugin may need a bump.
Manual recipe (no plugin)
Add to ~/.dsh/settings.yaml (hot-reloaded, no restart needed):
llm-pi-ai:
providers:
zai-coding-cn:
apiKeyEnv: ZAI_CODING_CN_API_KEY # keep whatever you have
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: trueUpstream status
pi (the project behind pi-ai) already carries glm-5.3 on main (packages/ai, generated from the models.dev database); the moment a pi-ai release ships and a DSH release adopts it, this plugin becomes redundant for that model. It is intentionally a bridge, following the contribution path DSH recommends for ecosystem work.
License
MIT