@czottmann/pi-zai-api

中文文档
1.1.0发布于 2026/06/22MITES Module零依赖构建来源已验证近 30 天下载 4577

Z.AI API provider extension for pi coding agent. Install with pi install npm:@czottmann/pi-zai-api.

原始使用文档
文档目录10 节
  1. Why this exists
  2. Requirements
  3. Install
  4. Set up auth
  5. Use
  6. How it works
  7. Development
  8. A note on local dev and the mirrored list
  9. Publishing
  10. Author

@czottmann/pi-zai-api

Z.AI API provider extension for pi. It registers the Z.AI GLM models under a zai-api provider that points at the general Z.AI API endpoint.

Why this exists

pi already ships a built-in zai provider, but it points at the Coding Plan endpoint (https://api.z.ai/api/coding/paas/v4), which needs a Z.AI coding subscription. If you have a regular pay-as-you-go Z.AI API key, that endpoint won't work for you.

This extension registers the same GLM models under a separate zai-api provider that uses the general API endpoint (https://api.z.ai/api/paas/v4) instead, authenticated with ZAI_API_KEY. The built-in zai provider is left untouched.

Requirements

npm install -g @earendil-works/pi-coding-agent

Install

From npm:

pi install npm:@czottmann/pi-zai-api

From a local checkout:

cd path/to/pi-zai-api
npm install
pi install "$PWD"

Set up auth

Use pi's API-key flow:

pi
/login
# Choose "Use an API key", then "ZAI" (same as with the built-in `zai` provider).

Or set an environment variable before starting pi:

export ZAI_API_KEY=your-key-here

Get a key from the Z.AI Dashboard. It must be set as API keys in /login, not as a subscription.

Use

List registered models:

pi --list-models | grep zai-api

Start pi with the provider:

pi --provider zai-api

In interactive mode, /zai-api-models lists the models registered by the extension.

How it works

On startup, the extension reads pi's own built-in zai model definitions via getModels("zai") from @earendil-works/pi-ai, drops their per-model base URL, and re-registers them under the zai-api provider with the general API base URL and ZAI_API_KEY.

Everything else is carried over from pi's catalog verbatim: context window, max output tokens, reasoning support, input types, and the z.ai-specific compatibility flags (thinking format, tool streaming). Because the list is mirrored at runtime, it tracks pi's built-in zai models as you update pi: new GLM models pi adds show up here too, with the corrected endpoint.

pi resolves @earendil-works/pi-ai to its own bundled copy when it loads the extension, so the mirrored list always matches the pi version you're running.

Development

npm run check
npm run build
pi -e . --provider zai-api

A note on local dev and the mirrored list

When you load the extension from a local checkout (pi -e . or pi install "$PWD"), Node resolves @earendil-works/pi-ai to the copy in this project's node_modules, not to the one inside your pi install. If that dev copy is older than your pi, the mirrored model list reflects the dev copy and can miss models your pi actually ships.

The published package bundles no dependencies, so a real install always mirrors the pi you're running. To check the published behavior locally, install a packed build:

npm pack
mkdir -p /tmp/zai-test && tar -xzf czottmann-pi-zai-api-*.tgz -C /tmp/zai-test --strip-components=1
pi install /tmp/zai-test

Publishing

GitHub Actions publishes the package to npm when a GitHub Release is published. The release tag must match package.json exactly, with or without a leading v (v1.0.0 and 1.0.0 both work for version 1.0.0).

The workflow uses npm Trusted Publishing, so it does not need an npm token secret. Configure this package on npm with this repository and workflow file (.github/workflows/publish.yml). The workflow builds the package, runs npm run check, and publishes with npm provenance.

Author

Carlo Zottmann, [email protected]

版本与发布记录

@czottmann/pi-zai-api 共发布 2 个版本,首次发布于 2026/06/22;过去 12 个月发布了 2 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.1.0latest2026/06/224 个月前
1.0.02026/06/224 个月前

关于 @czottmann/pi-zai-api 的常见问题

@czottmann/pi-zai-api 是什么?

Z.AI API provider extension for pi coding agent. Install with pi install npm:@czottmann/pi-zai-api.

如何安装 @czottmann/pi-zai-api?

在项目目录运行 npm install @czottmann/pi-zai-api,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@earendil-works/pi-ai(*)、@earendil-works/pi-coding-agent(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@czottmann/pi-zai-api 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/czottmann__pi-zai-api 是否存在。

@czottmann/pi-zai-api 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@czottmann/pi-zai-api 可以商用吗?

@czottmann/pi-zai-api 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@czottmann/pi-zai-api 的下载量有多少?

根据 npm 官方下载统计,@czottmann/pi-zai-api 在 2026/10/11 – 2026/11/09 这 30 天内被下载 4,577 次,日均约 153 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@czottmann/pi-zai-api 还在维护吗?

最新版本 1.1.0 发布于 2026/06/22(4 个月前);至今共发布 2 个版本,其中过去 12 个月发布了 2 个;首次发布于 2026/06/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。