🖥️ 悬浮式 AI Token 用量监控面板 —— 实时追踪 API 成本、Token 消耗与套餐额度
English · 简体中文
| 说明 | |
|---|---|
| 🫧 悬浮球模式 | 不需要时一键收起为透明圆球,完全不遮挡视野;点击展开、按住拖动、跨屏跟随、边缘自动钳制 |
| 📊 实时仪表盘 | 总成本 / Token / 请求数 / 成功率 / 缓存命中率,30 秒自动刷新 |
| 📈 用量趋势 | Token 与费用趋势图,模型明细、Provider 分布一目了然 |
| 🔍 配置用量查询 | 7 种模板一键查询余额与套餐额度,支持 JS 脚本自定义,自动定时刷新 |
| 🔄 会话日志同步 | 自动扫描 Claude Code / Codex / OpenCode 会话日志,增量解析用量 |
| 🌐 双语界面 | 中 / 英一键切换 |
| 📌 窗口置顶 | 悬浮小窗常驻前台,边写代码边看用量 |
需要 Node.js ≥ 18、pnpm 与 Rust 工具链。
# 安装依赖
pnpm install
# 开发模式(热更新 + 窗口预览)
pnpm tauri dev
# 打包发布(.app / .dmg)
pnpm tauri build- 收起:点击顶栏的「收起为悬浮球」按钮,仪表盘缩为透明圆球
- 展开:单击悬浮球,恢复原窗口(记住你手动调整过的大小)
- 拖动:按住悬浮球任意拖动,跨屏幕无缝移动,松手自动收进屏幕边缘内
在「用量查询」面板添加配置,选择模板后即可一键查询:
| 模板 | 说明 |
|---|---|
custom 自定义脚本 |
用 JS 脚本自定义请求与解析({{apiKey}} / {{baseUrl}} 变量注入) |
general 通用余额 |
通用 /user/balance 接口模板 |
newapi NewAPI |
NewAPI 面板余额查询 |
github_copilot Copilot |
读取官方 GitHub Copilot CLI 凭据查询用量 |
token_plan Token Plan |
Kimi / 智谱 / MiniMax / ZenMux / 火山方舟 套餐额度 |
balance 官方余额 |
DeepSeek / StepFun / SiliconFlow / OpenRouter / Novita 专用 API |
official_subscription 官方订阅 |
Claude / Codex 官方套餐额度(读 CLI 登录凭据) |
每条配置支持设置自动查询间隔(默认 1 分钟),套餐窗口会显示刷新倒计时与已用比例。
- 桌面框架:Tauri 2 + Rust
- 前端:React 18 · TypeScript · Vite · Tailwind CSS
- 数据层:SQLite(rusqlite)· TanStack Query
- 脚本引擎:rquickjs(用量查询自定义脚本沙箱)
├── src/ # 前端(React + TypeScript)
│ ├── components/ # 仪表盘 / 用量查询 / 悬浮球组件
│ ├── hooks/ # TanStack Query hooks
│ ├── i18n/ # 中英文案
│ └── lib/ # Tauri API 封装、窗口控制
├── src-tauri/ # 后端(Rust)
│ ├── src/services/ # 用量查询 / 订阅 / 余额 / 会话同步
│ ├── src/database/ # SQLite 表结构与 DAO
│ └── icons/ # 应用图标
└── scripts/ # 图标生成脚本
- 数据库:
~/Library/Application Support/token-monitor/token-monitor.db - 用量查询配置:存于本地数据库,凭据不出本机
- 会话日志:直接解析本机
~/.claude/projects、~/.codex等目录,不上传任何数据
用量查询(脚本引擎、余额/订阅查询)功能参考并移植自 cc-switch,在此感谢原作者的开源贡献。
MIT © ViviQuan