open-index/open-npm huggingface dataset:
npm package: @haochen1122/opencode-quota-monitor
Description: OpenCode TUI 插件：监控 GLM（智谱）和 MiniMax M2.7 的 Code Plan 用量，在终端界面右下角实时展示 Unicode 进度条。
Latest version: 0.1.1

# opencode-quota-monitor

OpenCode TUI 插件：监控 GLM（智谱）和 MiniMax M2.7 的 Code Plan 用量，在终端界面右下角实时展示 Unicode 进度条。

## 功能

- 实时监控 GLM 和 MiniMax 的 API 使用额度
- 右下角显示已用百分比：`[G:76% M:25%]`
- home_footer 渲染 12 字符 Unicode 进度条
- 180 秒自动轮询，自动适配 API 限频
- 自动凭据发现（无需手动配置）

## 安装

在 `~/.config/opencode/tui.json` 中添加插件引用：

```json
{
  "$schema": "https://opencode.ai/tui.json",
  "theme": "ayu-dark",
  "plugin": ["@haochen1122/opencode-quota-monitor"]
}
```

然后重启 opencode。

## 配置

插件自动从以下位置发现 API Key，**无需手动配置**：

| 来源 | 说明 |
|------|------|
| `~/.config/opencode/auth.json` | OpenCode 内置凭据存储 |
| `GLM_API_KEY` | 环境变量（GLM） |
| `MINIMAX_API_KEY` | 环境变量（MiniMax） |

### GLM API Key

从 [智谱 AI 开放平台](https://open.bigmodel.cn/) 获取。

### MiniMax API Key

从 [MiniMax 开放平台](https://platform.minimaxi.com/) 获取。

## 效果预览

右下角紧凑指标（session_prompt_right slot）：

```
[G:76% M:25%]
```

home_footer 进度条：

```
GLM  ████████████░░░░  76%  MiniMax  ██████░░░░░░░░░░  25%
```

## 常见问题

**Q: 重启 opencode 后插件不显示？**
A: 确认 `tui.json` 的 `plugin` 字段使用的是正确的包名，且 `package.json` 的 `exports["./tui"]` 字段存在。

**Q: 显示 "No quota data - configure API keys"？**
A: 插件未找到有效的 API Key。请确保 `auth.json` 中有对应提供商的凭据，或设置了环境变量。

**Q: MiniMax 显示的百分比和官网不一致？**
A: 插件显示的是**已用百分比**（即已使用量/总额度）。部分平台的"剩余额度"字段名容易混淆。

## 开发

```bash
# 安装依赖
bun install

# 运行测试
bun test

# 类型检查
bun run tsc --noEmit
```

## 架构

- `src/index.tsx` — 插件入口，注册 TUI slot
- `src/providers/glm.ts` — GLM API 适配器
- `src/providers/minimax.ts` — MiniMax API 适配器
- `src/credentials.ts` — 凭据自动发现
- `src/poller.ts` — 轮询器（180s 间隔，指数退避）
- `src/render/` — UI 组件（home_footer / session_prompt_right slot）

## License

MIT