Jiran · 为 AI 编程工具而作的本地计量仪

计然

Token 从五十九处源头涌来。计然在你自己的机器上把它们一一计入:用了多少,额度还剩多少,实际花了多少钱。

个工具与供应商
59个工具与供应商
可统计 Token
52可统计 Token
可读订阅额度
26可读订阅额度
遥测与统计
0遥测与统计
向下

01 · 名

既算支出,也算收入

计然是《史记·货殖列传》里那位善于「计」的谋士。两个字,就是这个产品的全部范围:AI 工具烧掉了多少 Token,这些订阅与调用实际花了你多少钱。

它在 v0.47.0-rev.36 之前叫 Token Monitor。改名不是重置:旧的用户数据目录会在首次启动时被复制过来,旧环境变量与请求头继续有效。

算珠特写:骨白的 Token 在算珠一侧,越过刻度后变为朱砂色

知斗则修备,时用则知物,二者形则万货之情可得而观已。

《史记·货殖列传》引计然语

02 · 问

三个数字,从你自己的​磁盘里读出来

每个被跟踪的工具都在本机留下 transcript、会话数据库或缓存。计然读的就是这些——数据本来就在你的磁盘上,计量也就在这里完成。

  1. 01用量示意数据

    我到底用了多少?

    换算成 Token 与成本,按工具、模型、设备、项目、单个会话拆分,并长期保存每日历史。

  2. 02额度示意数据

    我的订阅还剩多少?

    各供应商的额度窗口——会话、周、账期、credits。额度由 Hub 探测,并把一份脱敏快照推给所有连接的设备;纯本机模式下「额度」页为空,是设计如此。

  3. 03花费示意数据

    我为此付了多少钱?

    手工记账的订阅台账与模型价格表放在一起:这个套餐多少钱、何时续费、本月用量按 API 价格本应花多少。

03 · 则

数字怎么来的,说清楚

一个把「实测」和「估算」混着显示的仪表板,比没有仪表板更糟。以下是每个界面都遵守的规则。

  1. 「~」就是估算

    某个工具从来没存过真实 Token 数时,总量按它存下的文本估算,并在数字前加「~」。每一项估算的依据都写在支持矩阵的注释里。

  2. credits 是独立单位

    以 credits 计费的供应商(Qoder 就是这样)给出精确的 credits,旁边的 Token 与成本仍标「~」;credits 绝不折算进 Token 总量。

  3. 刷新不打断操作

    数据每几秒来一帧。下拉框开着、输入到一半时重绘会被推迟,展开的行与滚动位置都保留,内容没变就完全不碰 DOM。

    实时把指针停在数字上:新帧被推迟
  4. 数字只属于问它的那个标签页

    今天、本月、全部来自采集器的固定窗口;昨日与本周是按需解析的日历区间。凡是上报总量的地方,一周都从 ISO 周一开始。

    9.61M按需解析 · ISO 周一起算
  5. 置灰的设备是真的沉默了

    最后一次上报超过 10 分钟的设备被标记为 stale 并置灰,而不是假装它还在线。

04 · 汇

四个界面,一个产品

默认就是本机模式:打开桌面应用即开始跟踪这台设备,不需要 Hub、agent 或 .env。需要汇总多台机器时,在你自己控制的机器上用 Docker Compose 起一个 Hub。

一台设备 × N

本机工具的 transcript / 会话库 / 缓存

tokscale 采集器文件变化后 1.5 s 去抖 · 每 5 分钟完整扫描
Hub · MySQL规范化 + 聚合额度探测只在 Hub
桌面浏览器Android
界面职责Hub
桌面应用Electron · Windows / macOS / Linux采集本机数据并呈现完整界面不需要
HubDocker Compose + MySQL接收上报、聚合、SSE 推送,并在同一端口提供 Web 仪表板 / 可安装 PWA—
Headless agentNode.js没有图形界面的采集端,用于服务器与 WSL 发行版需要
AndroidKotlin / Compose在手机上查看设备群组的用量与额度;不采集、不上报需要

05 · 界

本地优先是架构,不是口号

没有遥测,没有统计,没有托管后端,也不向维护者发送任何东西。只有在你启用的功能里才会联网:检查更新、汇率查询、你自己部署的 Hub、你在 Hub 上配置的额度账号对应的供应商。

永远留在这台机器上

  • 提示词与回复
  • 源代码与文件内容
  • 工作区的绝对路径
  • OAuth 凭据、access / refresh token
  • 供应商 Cookie 与 API key
  • 供应商的原始响应

开启同步后,发往你自己的 Hub

  • 设备标识与元数据
  • Token 与成本的汇总
  • 工具、模型、会话、项目归属
  • 可选的工作区文件夹名(不含绝对路径)
  • 你手工记下的订阅信息

这个网站也一样:没有统计脚本,不设 Cookie。唯一的外部请求是向 GitHub 读取最新版本号。

完整隐私说明 ↗

06 · 源

五十九个来源,一处定义

工具清单只在一处定义,所有运行时常驻采集全集,没有逐项开关,因此不存在「悄悄少算」的状态。没有出现在这里的工具,就是没有被跟踪。

  1. Claude Code
  2. Claude Desktop
  3. Codex
  4. OpenCode
  5. Hermes Agent
  6. OpenClaw
  7. Cursor
  8. Antigravity
  9. Cline
  10. Kimi CLI / Kimi Code
  11. Qwen CLI
  12. Grok Build
  13. GitHub Copilot
  14. Pi / Oh My Pi
  15. Zed
  16. Kilo Code
  17. Command Code
  18. MiMo Code
  19. ZCode / GLM
  20. Kiro
  21. CodeBuddy
  22. WorkBuddy
  23. Proma
  24. DeepSeek Harness
  25. Qoder / Qoder CN
  26. Reasonix
  27. Gemini CLI
  28. Roo Code
  29. Amp
  30. Droid
  31. Mux
  32. Kilo CLI
  33. Crush
  34. Goose
  35. Codebuff / Freebuff
  36. Trae
  37. Warp / Oz
  38. Gajae-Code
  39. Jcode
  40. Junie
  41. OpenCodeReview
  42. Devin CLI / Devin Desktop
  43. Senpi
  44. Augment Code
  45. Kimchi
  46. Prime Agent
  47. Cherry Studio
  48. MiniMax Code
  49. Fx
  50. LM Studio
  51. Unsloth
  52. Hindsight
  53. DeepSeek
  54. OpenRouter
  55. Minimax
  56. Volcengine
  57. Ollama
  58. Third-party APIs
  59. Sakana (Fugu)
圆点依次表示:Token 用量 · 订阅额度 · 会话明细查看完整矩阵与读取路径 ↗

07 · 取

下载,打开,它就开始计数

首次运行不需要任何配置。打包版会检查 GitHub Releases 并提示更新。

多台机器:部署一个 Hub

根目录的 docker-compose.yml 是唯一受支持的部署方式。仪表板由 Hub 在同一端口(17321)提供,可安装为 PWA;镜像 ghcr.io/igngserver/jiran-hub。

Hub 部署指南 ↗
cp .env.example .env
# JIRAN_SECRET + MySQL passwords
docker compose up -d
curl http://127.0.0.1:17321/api/health

开发与验证集中在 Windows 11、Docker Compose Hub 与运行 headless agent 的 Ubuntu;其他平台尚未完整验证,可能有问题。