模型余量 / DSH Model Quota
DeepSeek Harness 插件,在 设置 → 模型余量 集中查看当前已配置服务商的余额、套餐窗口剩余百分比和重置时间。支持中文/英文及宿主浅色/深色主题;按需刷新,不轮询、不发送推理请求、不修改模型配置。
支持范围
| 服务商 | 显示内容 | 认证来源 |
|---|---|---|
| DeepSeek API | 账户余额 | Harness 当前配置的 API Key |
| DeepSeek 已登录账户 | 充值/赠送余额 | Harness 账户服务 |
| 千问/阿里云 Token Plan(个人/Solo) | 服务端实际返回的小时/日/周/月窗口 | 百炼 CLI 的独立控制台登录 |
| 智谱/Z.AI Coding Plan | 5 小时、周、工具月额度及重置时间 | Harness 当前配置的 API Key |
| OpenRouter | Key 消费上限剩余金额、已用金额 | Harness 当前配置的 API Key |
| SiliconFlow | 账户余额 | Harness 当前配置的 API Key |
| OpenAI Codex 旧版订阅路由 | 套餐窗口剩余百分比 | Harness 已保存、尚未过期的 Codex OAuth 登录 |
只识别相应官方 HTTPS 域名;自定义代理和没有接入余量接口的服务商明确显示「暂不支持」。OpenAI 普通 API/新版直连 OAuth 不会被当作旧版 Codex 查询。服务商接口变化时显示失败,不用本地 Token 用量推算余额。
额度由账户、Key 或套餐共享,不是每个模型独立拥有。 不同币种不累加,同一账户经不同认证路由返回的余额也不累加。OpenRouter 未设置 Key 消费上限不代表账户有无限余额。
安装
需要提供这些扩展接口的 DeepSeek Harness 版本;实际验证环境为 Desktop 0.2.1-rc.5。运行时使用 Node.js 22 或以上,无 npm 运行依赖、无安装脚本。
可让 Harness Agent 执行:
安装插件:github:zhangmin510/dsh-model-quota#v1.2.1
对应 plugin_manager 操作为 install_bundle,target 是上述 GitHub 安装标识。也可以克隆仓库后,以目录绝对路径安装。本地目录安装链接源码目录,请保留目录。安装影响当前 profile 的全部会话并持久保留;升级后若安装工具提示需要重启,请重启 Harness。
千问 Token Plan 授权
模型调用 API Key 不能代替控制台授权。插件复用百炼 CLI,不读取浏览器 Cookie,不自动打开登录页,也不直接读取 CLI 的凭据文件。
安装百炼 CLI:
npm install -g bailian-cli。本插件验证版本为2.8.2,该版本的usage token-plan --output json会返回个人套餐的滚动窗口。使用与模型 Key 相同的阿里云账户,在浏览器完成独立配置的登录:
bl auth login --console --config model-quota-console --console-site domestic在插件页点击「刷新余量」。只返回月度窗口的套餐仅显示月度额度;缺失窗口不补零、不推定无限。无消费数据或无窗口时显示「未返回额度」。企业/Team 汇总积分池不在此适配器的支持范围。
控制台登录可能创建普通百炼 API Key,因此使用独立配置 model-quota-console,避免覆盖已有 Token Plan 模型配置。套餐额度来自该 CLI 配置所登录的控制台账户,无法仅凭推理 Key 自动核验是否同一个账户;页面会显示这个来源提醒。国际站使用对应国际控制台登录;查询区域取自已配置 Token Plan 端点。
若页面提示找不到 CLI,给 tokenPlan.cliPath 设置可执行文件绝对路径。若登录过期,按页面显示的命令重新授权即可。插件不会替你刷新登录或切换 CLI 活动配置。
配置
Bundle patch 提供默认值。全部字段在插件加载时验证,通过 Loader 的正常配置流程修改,不直接手工写 profile 文件。
| 字段 | 默认值 | 限制/用途 |
|---|---|---|
requestTimeoutMs |
12000 |
额度 HTTP 请求超时,100–120000 毫秒 |
concurrency |
4 |
同时查询的服务商数,1–8 |
tokenPlan.cliPath |
bl |
百炼 CLI 可执行文件路径 |
tokenPlan.profile |
model-quota-console |
已授权的 CLI 配置名称 |
tokenPlan.timeoutMs |
20000 |
CLI 查询超时,100–120000 毫秒 |
tokenPlan.maxOutputBytes |
262144 |
每个 CLI 输出流的内存上限,1024–1048576 字节;不写磁盘 |
tokenPlan.graceMs |
1000 |
托管进程树终止宽限期,0–10000 毫秒 |
安全与生命周期
model_quota 是与页面共用查询实现的只读 Agent 工具;工具结果由 Harness 记录到会话,页面查询不自动写入会话。返回值包含服务商、模型、金额/百分比、时间、CLI 来源配置名称和有限错误代码,不含密钥、令牌及上游原始错误正文。
HTTP 入口遵循 Harness Connection 的 Host/Origin 和浏览器认证检查;服务商 HTTP 请求禁止重定向。密钥只在 Host 侧通过当前 credential service 解析,Codex 凭据只读且不刷新。CLI 通过无 shell 的固定只读参数调用,环境不继承模型 Key、云凭据、Cookie 或 SSH agent;它通过自身的正式配置接口读取授权。查询超时或取消会终止并等待插件拥有的 CLI 子进程退出。卸载中止 HTTP 查询并等待已开始的操作结束;DeepSeek 账户查询的超时由账户服务管理。
目录结构
按运行环境和职责分离源码,遵循 Harness 的 Host/Client 入口、bundle patch 与资源导出约定。原生 ESM 直接运行,无编译产物、运行依赖或构建步骤;通过 package.json 的 exports 定义入口,内部移动文件不改变安装标识。
.
├── src/
│ ├── host/
│ │ ├── index.js # Host 配置、服务、HTTP 入口及 Agent 工具
│ │ └── adapters/
│ │ ├── http.js # 官方额度 HTTP 接口和响应解析
│ │ └── token-plan.js # 百炼 CLI 与套餐窗口解析
│ └── client/
│ └── index.js # 设置页、界面翻译及样式
├── tests/ # 无网络行为测试与入口/资源回归检查
├── assets/
│ └── icon.svg
├── locale/ # 插件管理器显示元数据
├── .github/workflows/ci.yml
├── cordis.patch.yml
├── package.json
├── README.md
└── LICENSE
Host 负责凭据和额度查询,Client 只通过已认证 HTTP 入口读取规范化结果,不导入 Host 模块。界面样式和翻译与 Client 入口同置,保持 ModuleLoader 可直接加载的单文件格式。locale 中的 JSON 专用于插件管理器元数据,与设置页运行时翻译区分。
files 仅分发源码、静态资源、元数据、patch 和许可文档;测试、CI 配置及本机产物不进入安装包。artifacts/ 用于本机打包产物,已被 Git 忽略。
开发与验证
npm test
npm run check
测试使用合成额度数据,无网络或真实 Key 依赖,覆盖响应解析、缺失窗口、鉴权失败、信息脱敏、HTTP 访问检查、CLI 环境过滤、超时、取消和子进程退出。源码与已安装插件的真实额度查询另行验证。没有浏览器控制时,Client slot 注册不等同于截图或实际排版验证。
图标为本项目原创 SVG。许可:MIT。
接口参考:ZCode 官方 Coding Plan 配额接入;Alibaba Token Plan 查询及认证。
English
Open Settings → Model quota to inspect configured providers. Balances and subscription windows are shared account/key values, not per-model allocations. Supported integrations include DeepSeek, personal/Solo Alibaba Token Plan via Bailian CLI, Z.ai/BigModel Coding Plan, OpenRouter key budgets, SiliconFlow, and legacy OpenAI Codex OAuth. Unsupported endpoints stay explicit; local token usage never substitutes for upstream quota.
For Alibaba Token Plan, install Bailian CLI and authorize bl auth login --console --config model-quota-console using the account that owns your model key. The plugin reads only the actual windows returned by bl usage token-plan --output json; monthly-only subscriptions do not acquire fabricated shorter windows. Console authorization is separate from inference authentication, and the plugin cannot automatically prove account ownership from the inference key. No browser cookies are imported and no interactive login is started automatically. Run npm test and npm run check for keyless checks.
No comments yet. Be the first to write one.