Skip to content

JialinLiu-codedance/ai-usage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Usage

AI Usage logo

一个面向 macOS 的本地优先菜单栏应用,用来统一管理 AI 账号、代理入口和本地开发工作流工具。

简体中文 · English

CI status Latest release Platform macOS Tauri 2 React 19 Rust stable

项目简介

AI Usage 是一个基于 Tauri + React + Rust 构建的本地优先 macOS 菜单栏应用,面向同时管理多个 AI 账号、代理入口和开发工作流数据的个人开发者。

当前代码里的产品形态已经是“三层合一”:

  • 账号中心:统一管理额度快照、授权状态、低额度提醒和账号顺序
  • 工具中心:本地代理、周报洞察、Codex 注入、SKILL 管理、MCP 管理
  • 分析中心:Token 用量、Git 提交、PR KPI、默认分支管理

应用常驻菜单栏运行,桌面窗口默认隐藏,所有设置、缓存和分析结果都保存在本机。

预览

AI Usage 应用预览

核心特性

  • 菜单栏优先:常驻托盘应用,桌面主窗口默认隐藏,可从托盘直接打开总览或工具页
  • 多种账号接入:当前 UI 已实现 OpenAI、Anthropic、Kimi、GLM、MiniMax、Sub2API、Copilot 的接入与重授权流程
  • 额度与状态追踪:刷新额度快照、展示缓存状态、设置低额度阈值,并支持电池供电时暂停自动扫描
  • 本地代理聚合:内置本地代理服务,可配置监听地址、端口、默认推理强度、账号 profile 和模型路由
  • 反向代理桥接:把 ChatGPT(Codex OAuth)和 GitHub Copilot 授权目标暴露为可路由后端
  • Codex 注入:把 AI Usage 本地代理写入 Codex 配置,迁移会话前自动备份,并支持按账号启停模型
  • 本地分析工具:查看 Token 用量、Git 提交行数、PR KPI、默认分支管理,并支持 OpenRouter 价格映射
  • 周报洞察:按周或自定义时间范围生成本地对话审计 HTML 报告
  • CLI 工作流工具:内置 SKILL 管理与 MCP 管理,支持扫描技能仓库、发现本地 MCP 并写入客户端配置
  • macOS 集成:开机启动、原生通知、自动更新、签名打包

功能地图

账号中心

  • 在总览页查看所有已接入账号的额度窗口与状态
  • 拖拽调整账号顺序,并在设置页做删除、重授权和补录配置
  • 同时覆盖 OAuth、CLI 登录态、API Key、GitHub Token 等接入方式
  • 管理刷新频率、低额度阈值、开机启动和自动扫描策略

工具中心

  • 打开统计页查看 Token、Git、PR KPI 和 Default Branch 四类分析
  • 打开本地代理页管理反向代理、本地代理、模型 profile 和路由规则
  • 生成、打开和删除周度对话洞察报告
  • 管理 Codex 注入状态和可注入模型清单
  • 管理 SKILL 与 MCP 客户端配置,并扫描本地可安装 MCP

分析与代理能力

  • Token 用量趋势、模型排行、工具来源拆分和成本估算
  • OpenRouter 模型 ID 拉取与本地价格映射 override
  • Git 提交量、代码行数趋势和仓库排行
  • PR KPI 雷达、Token 产出比和默认分支探测
  • 本地代理的服务地址、默认 reasoning、账号 profile 和模型路由

架构概览

macOS 菜单栏应用
├─ React 前端
│  ├─ 总览页(账号额度与状态)
│  ├─ 设置页(账号、启动、通知、更新)
│  ├─ 工具页(统计、代理、审计、SKILL、MCP、Codex)
│  └─ 各类授权 / 导入面板
└─ Rust 核心
   ├─ 设置、密钥与本地存储
   ├─ OAuth / API / CLI 账号接入
   ├─ 本地代理与反向代理运行时
   ├─ Token / Git / PR / Branch 缓存与统计
   ├─ 周报分析、HTML 报告生成
   ├─ Codex 注入与 CLI 工具配置
   └─ 托盘、通知、开机启动、更新与打包

当前仓库里与这些能力直接对应的入口文件:

快速开始

环境要求

  • macOS
  • Node.js 22
  • Rust stable toolchain
  • Tauri 在 macOS 下的标准构建依赖

安装依赖

npm ci

启动桌面开发环境

npm run tauri -- dev

说明:

  • npm run dev 只启动 Vite 前端
  • npm run tauri -- dev 才会同时启动前端和 Tauri 桌面壳
  • 主窗口默认隐藏,运行后需要从菜单栏托盘打开主界面或工具页
  • 默认开发地址来自 src-tauri/tauri.conf.json,即 http://localhost:1420

测试与校验

当前仓库 CI 使用的校验命令如下:

npm run test:node
npm run test:rust
npm run build

对应脚本定义在 package.json,CI 工作流位于 .github/workflows/ci.yml

本地打包

构建本地 macOS .app.dmg

npm run package:mac

打包脚本会额外做这些校验:

  • 执行 npm run tauri -- build
  • 校验生成的 .app 签名
  • 校验应用图标资源
  • 校验 .dmg
  • 挂载 DMG 并检查内部应用结构

具体流程见 scripts/package-app.sh

发布流程

仓库内置了一个手动触发的发布工作流:.github/workflows/release.yml

当前发布行为包括:

  • 仅支持从 main 手动触发 patchminormajor 发布
  • 预检阶段会同步 bump 仓库版本号,并重新跑 Node、Rust、前端构建校验
  • release commit 会回推到 main
  • 发布阶段会生成 GitHub Release 和 Tauri updater 元数据
  • 当前工作流会构建 macOS 发布产物,并带上自动更新所需签名信息

目录结构

.
├─ src/                     # React UI
├─ src-tauri/               # Rust 后端与 Tauri 配置
├─ tests/                   # 基于 Node 的 UI / 工作流校验测试
├─ scripts/                 # 打包、发布、审计辅助脚本
├─ icons/                   # 应用品牌资源
└─ docs/                    # 补充文档与声明

数据与安全说明

  • 设置、缓存、分析结果和报告都由桌面应用在本地管理
  • 密钥与 OAuth 相关数据由 Rust 侧 secret 层统一处理
  • 本地代理监听地址、端口、认证字段和模型路由均可配置
  • Codex 注入前会备份本地会话数据库
  • 当前产品形态明确偏向单用户、本机运行的桌面工作流

后续演进方向

从现有代码形态看,这个项目已经是一个本地 AI 工作台,后续比较自然的方向包括:

  • 更完整的审计历史与趋势分析
  • 更强的账号接入和代理兼容层
  • 更细的工具链集成,例如更多 CLI / MCP / IDE 注入
  • 更完善的账号诊断、授权恢复和模型治理体验

相关文档

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors