我同时开着 Claude、ChatGPT、GitHub Copilot、Kimi 和几个 API 平台。每家的额度都藏在各自的控制台里,想知道这个月还剩多少,得挨个登录、翻页面、记数字。次数多了,就想亲手做一个地方,一次看完。
QuotaPanel 就是这么一个桌面工具。后端是 Go,外壳用 Wails v2,界面是 Vue3 加 TypeScript,目前接了 16 种 AI 订阅和 API 额度来源,数据全部留在本机,macOS、Windows、Linux 都能打包。
先把数据放在本地
所有账号密钥和浏览器登录会话都写在 ~/.quotapanel/ 目录下,不上传云端。想换位置,设一个 QUOTAPANEL_DATA_ROOT 环境变量就行。密钥在界面上默认脱敏,要用的时候再复制。
这个选择也带来一点麻烦。Claude、ChatGPT、Cursor 这类只能靠网页登录拿数据的来源,没法用后台请求解决,只能拉起一个独立的 Chrome 或 Edge 窗口,让用户真正登录一次,再把会话持久化下来。好处是账号密码不用交给任何第三方服务,删除账号时对应的浏览器资料也会一起清掉。
能查到哪些额度
按取数方式分成两类。
浏览器登录类:
- Claude 订阅:5 小时窗口与每周额度
- ChatGPT / Codex:订阅使用窗口
- Cursor:当前周期用量
- 小米 MiMo Token Plan:套餐积分与账户余额
API Key 类:
- GitHub Copilot:Premium 请求、聊天与补全额度
- Z.ai Coding Plan、Kimi Coding Plan、MiniMax Token Plan
- Devin / Windsurf、Grok CLI、OpenCode、Command Goat
- DeepSeek API、Kimi API、OpenRouter、OpenAI API
界面上一条账号就是一张卡片:进度条、剩余量、账期和重置时间。状态分正常、即将用尽、超限三档,用不同颜色区分,阈值可以在设置里调。
技术栈和目录
- Go 1.24+:额度查询与本地服务
- Wails v2:桌面外壳,负责前后端绑定
- Vue3 + TypeScript:界面
- AntDesign Vue + TailwindCSS:组件和样式
- SQLite:本地存储
目录长这样:
quotapanel/
├── main.go # Wails 应用配置与入口
├── app*.go # 暴露给前端的方法
├── backend/
│ ├── base/ # 数据库、配置、日志、窗口、平台差异
│ └── quota/ # 各额度来源适配器与查询服务
├── frontend/
│ └── packages/
│ ├── ui/ # 主界面
│ └── quota/ # 额度业务模块
├── demo/image/ # 界面截图
├── docs/ # 额度来源调研
└── Makefile # 开发、构建与发布
Wails 的分工很直接。Go 侧的大写方法会生成对应的 JS 绑定,前端在 api 目录里包一层再调用,页面不直接碰生成的代码。后端要主动推消息时用 runtime.EventsEmit,前端在 onMounted 里注册监听、onUnmounted 里注销。平台差异,比如菜单栏、托盘、关窗行为,按文件名后缀做条件编译,不写运行时的 GOOS 判断。
在本地跑起来
需要 Go 1.24+、Wails v2、Node.js 20 和 pnpm。
# 安装 Wails CLI
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# 安装 pnpm
npm install -g pnpm
依赖装好之后:
make install # 安装前后端依赖
make dev # 开发模式,前端热更新
make build # 构建生产版本
make build-install # 构建并装到 /Applications(macOS)
改了 Go 侧暴露给前端的方法,记得执行 wails generate module 重新生成绑定,不然前端调不到新方法。
几个用起来才会注意的细节
新增账号。选来源,填 API Key 或者点「浏览器登录」,再给个名字和备注。同一平台可以放多个账号,公司号和个人号分开管很省事。
定时刷新。默认 5 分钟轮询一次,也能单独刷新某个账号或者全部刷新。间隔在设置里改,调太勤容易触发上游限流。
卡片截图。单张卡片可以导出 PNG,用来和别人对账,或者直接贴进群里。
托盘常驻。macOS 走菜单栏,Windows 和 Linux 走系统托盘。关窗口的默认行为可以在「每次询问」「直接退出」「隐藏到后台」里选。
界面做了简体中文和英文两套,配色走统一的 design token,浅色和深色各一份。
想加一个新来源
backend/quota 下每个来源就是一个适配器,负责取数、解析,再把结果整理成统一的额度结构。加新平台时照着已有实现补一个,注册进去,前端不用动。
最后
QuotaPanel 用 Apache-2.0 发布,可以改也可以商用,代码在 GitHub 和 Gitee 上的仓库名都是 open-tecmz/quotapanel。
如果你手上的 AI 平台也不少,或者只是懒得每次手动翻额度,装一个试试。碰到不支持的平台,去仓库提 issue,比在评论区描述有用得多。