@diwu507/pi-dusage
v0.2.0
Published
Pi extension package for provider quota checks across Codex, z.ai Coding CN, and MiniMax CN.
Maintainers
Readme
pi-dusage
pi-dusage 是一个最小的 Pi extension(扩展)包,用来查看订阅 / 套餐 provider(提供方)的 quota(配额)使用情况。
第一版范围
当前只接入 3 个已验证路径:
openai-codexzai-coding-cnminimax-cn
不包含:
volcengine-ark-coding- footer(页脚)常驻显示
- 自定义登录流程
- 服务状态页告警
命令
只注册一个 slash command(斜杠命令):
/dusage行为:
- 在 TUI(终端交互界面)模式下,使用 overlay(覆盖层)面板显示结果,样式接近传统 usage 卡片,并提供:
r刷新Esc退出
- 在
pi -p等非 TUI 模式下输出纯文本,便于快速验证。
数据来源
openai-codex
- 认证:
~/.pi/agent/auth.json→openai-codex - 接口:
https://chatgpt.com/backend-api/wham/usage
zai-coding-cn
- 认证:
~/.pi/agent/auth.json→zai-coding-cn - 接口:
https://bigmodel.cn/api/monitor/usage/quota/limit
minimax-cn
- 认证:
~/.pi/agent/auth.json→minimax-cn - 接口:
https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains
输出原则
- 不显示明文 token(令牌)或 key(密钥)
- 只显示可理解的窗口、百分比、重置时间
openai-codex除通用额度外,也展示服务端additional_rate_limits返回的独立额度卡片;卡片标题使用 API 返回的名称,不硬编码模型版本zai-coding-cn保留 provider 原始字段语义,不强行假设所有窗口都等价于“5h + 周”minimax-cn只展示服务端general类别的 5 小时与周窗口;不将video等多模态分类误导为独立套餐额度- 窗口排序:统一按重置时间升序,短窗口(如 5h)在上、长窗口(week / month)在下,不依赖各 provider API 的返回顺序
- 用量条语义:进度条表示「剩余配额」——剩余越多填充越满且越绿,将耗尽时变红;右侧仍显示可使用量百分比
- 单个 provider 请求超时或失败时,只在该 provider 卡片内显示错误,不中断其余 provider 的结果展示
国际化
所有可见文案通过 pi-di18n 的 pi-i18n/requestApi 事件接入多语言,内置 en 与 zh-CN 两套文案:
- 已安装 pi-di18n:注册
dusagenamespace bundle,文案跟随/lang选择的语言;locale 切换后 overlay 自动重渲染。 - 未安装 pi-di18n:回退到内置查表,按
LANG/LC_ALL环境变量选择zh-CN或en,不抛错。
安装
通过 npm 安装(推荐)
pi install npm:@diwu507/pi-dusage安装后在 Pi 中执行:
/reload也可以直接把包名加入 ~/.pi/agent/settings.json 的 packages:
"npm:@diwu507/pi-dusage"本地开发安装
把本仓库路径加入 ~/.pi/agent/settings.json 的 packages:
"/Users/diwu/Workspace/Codes/Githubs/pi-dusage"然后在 Pi 中执行:
/reload开发验证
需先将本仓库按「本地开发安装」加入 ~/.pi/agent/settings.json 的 packages(本地路径直接读源码 index.ts,改完即时生效,无需重新安装):
PI_SKIP_VERSION_CHECK=1 pi --no-session -p "/dusage"