Free · Open source · macOS

免费 · 源码公开 · macOS

PWE AI Bar

Do you make it to the reset?

到不到得了重置?

Every other quota bar reports how much is gone. A number that large tells you nothing you can act on: 88 % with six days to run is fine, and 88 % with two hours to run is not. So this one spends its biggest number on the only question worth asking — at this pace, do you reach the reset — and it answers with a bound, not a guess.

别的额度条都在报告用掉了多少。可那个数字本身没法据以行动 —— 还剩六天的 88% 没事,还剩两小时的 88% 就是另一回事。所以这一个把最大的字号留给唯一要紧的问题:按这个节奏,到不到得了重置 —— 而且给的是界,不是猜测。

Version 1.6.8 · 1.8 MB · macOS 13 or later, Apple Silicon · signed and notarised by Apple

1.6.8 版 · 1.8 MB · macOS 13 或更新版本,Apple Silicon 机型 · 已由 Apple 签名公证

The PWE AI Bar panel: a source picker, then a countdown bar under one large number answering whether the quota lasts to the reset, then per-provider rows for Claude Code and Codex.

Seven verdicts, and it says which one

七种判决,而且它把话说出来

The large number is the answer, and the sentence beside it is the verdict. Three of the seven, drawn by the app's own renderer:

大数字是答案,旁边那句话是判决。七种里的三种,由 app 自己的渲染器绘制:

It comes and finds you

它会来找你

The dashboard is the part a dozen other tools already do. This is the part that is actually worth installing something for: three hooks, merged into your existing Claude Code settings rather than written over them, with the original backed up byte for byte first — and one button in settings takes them back out, leaving your own hooks as they were.

看板那部分市面上已经有十几个实现。真正值得为之装一个东西的是这部分: 三个钩子,以合并方式写进你已有的 Claude Code 配置而不是覆盖它, 并且动手之前先逐字节备份原文件;设置里一个按钮就能把它们移除,你自己的钩子原样保留。

  • Your quota reset. It tells you when you can start again, rather than you checking.
  • Claude is waiting on you. A permission prompt has stalled — the menu bar steps aside and a notification arrives.
  • You walked away. More than five minutes from the keyboard and the alert forwards to your phone through ntfy or Bark.
  • 额度重置了。到点它主动告诉你可以继续干活,而不是你去查。
  • Claude 在等你回话。权限确认卡住了 —— 菜单栏让位,通知弹出来。
  • 你离座了。超过五分钟没碰键盘,提醒就通过 ntfy 或 Bark 转发到手机。
The menu bar readout at its real size: the wing mark, then 42% / 13% for Claude with a countdown to its reset, and Codex marked as exhausted.

The menu bar at the size it really is — the wing, both Claude windows, Codex's state and the countdown to the next reset. The panel spells everything out; the menu bar is the one place where space is scarce enough to earn a silhouette. It never animates.

菜单栏,就是它真实的大小 —— 翼、Claude 的两个窗口、Codex 的状态, 以及到下一次重置的倒计时。面板里不用缩写;菜单栏是唯一一处空间紧张到值得用剪影的地方。它不做动画。

What it reads

它读什么

Claude Code, from the real endpoint

Claude Code,读真实接口

The five-hour and weekly windows as actual percentages from /api/oauth/usage, plus the current session's context. Thresholds come from the server's own severity, not a number we invented. The dollar credit a Max plan includes is there too, and the prepaid balance if your organisation has one.

五小时与周窗口的真实百分比,来自 /api/oauth/usage, 外加当前会话的上下文占用。阈值用服务端自己的 severity,不是我们瞎定的数字。Max 计划自带的美元额度也在这里,组织预付过 Claude 的话还有余额。

Codex, with no credentials at all

Codex,零凭据

Read from its own app server. Nothing is asked of you and nothing is stored. It also tells you when OpenAI has granted your account a free reset, and when that reset expires.

读它自己的 app server。不问你要任何东西,也不存任何东西。OpenAI 送了你免费重置的话,也会告诉你还有几次、哪天过期。

Five more, read-only

另外五家,只读

Cursor, Copilot, Devin, Grok and Antigravity, each gated on the app actually being installed and each with a timeout. See before you install — none of them has been verified against a real account.

Cursor、Copilot、Devin、Grok、Antigravity,每一家都以「装没装」为前提, 每一家都有超时。见装之前先看 —— 它们都没在真实账户上验证过。

It does not ask for your password

它不会问你要密码

If you are logged into Claude Code, the app reuses that login. You never re-enter an account, and this app never sees a password.

已经登录 Claude Code 的话,应用直接复用那个登录。不用重新输账号, 本应用也从不接触你的密码。

It does not need your permission either. macOS checks keychain access per record and per program, and Claude Code creates its login record with the security tool, so the record admits that tool. This app reads the record through the same tool, with the same command Claude Code uses — so nothing asks, and signing in to Claude Code again changes nothing.

也不需要你授权。macOS 的钥匙串授权是按「条目 × 程序」给的,而 Claude Code 用 security 工具创建自己的登录记录,所以这条记录认这个工具。本应用通过同一个工具、用 Claude Code 自己用的那条命令去读 —— 于是什么都不会问,重新登录 Claude Code 之后也一样。

Before you install

装之前先看

Five things that are true of version 1.6.8 and are better said here than discovered later.

1.6.8 版的五件事,写在这里比让你自己发现要好。

Your data

你的数据

The token goes to api.anthropic.com and nowhere else. There is no telemetry, no crash reporting and no account of any kind.

令牌只发往 api.anthropic.com,不去别处。没有统计、没有崩溃上报, 也不需要任何账号。

Free, and the source is public

免费,而且源码公开

No licence, no account, no paid tier. Around 11,600 lines of Swift with no third-party dependencies, 246 tests, and a handover document that explains why the awkward parts are the way they are.

不要授权、不要账号、没有付费档。约 11,600 行 Swift,零第三方依赖,246 个测试, 外加一份把「为什么这里写得这么别扭」讲清楚的交接说明。

Nothing is held back for people who give, and the app never asks. If it has earned a place in your menu bar, a star, an issue from a Mac we do not have, or a word to a friend all help — and so does supporting PWE directly.

支持的人不会多得什么,应用也从不开口要。如果它在你的菜单栏里派上了用场: 点一颗星、从我们没有的 Mac 上开一个 issue、告诉一个朋友,都是帮忙 —— 直接支持 PWE 也是。

GitHub Support PWE 支持 PWE

The rate is an interval, not a number

速率是区间,不是数字

Every reading these services hand back is a whole number, and long plateaus are normal. The error is not Gaussian noise to be smoothed away — it is quantisation. So there is no regression here, no EWMA and no Kalman filter: they would all be averaging an ε that does not exist. Two bounds instead, over a span of S hours:

这些服务给回来的每一条读数都是整数,长时间的平台期是常态。误差不是可以被抹平的高斯噪声,是量化。所以这里没有回归、没有 EWMA、也没有卡尔曼 —— 它们都在平均一个不存在的 ε。取而代之的是两条界,跨度 S 小时:

rate.low  = max(0, Δp − 1) / S
rate.high = (Δp + 1) / S

One expression, three properties worth having. A plateau yields only an upper bound, which gives a lower bound on endurance — so the app can say "at least this long" and mean it. A single-step jump has a lower bound of zero, so one step can never announce that you are going to run out. And a burst decays on its own as S grows. The width of the interval is where the uncertainty goes; there is no confidence knob, because there does not need to be one.

一个式子,三个想要的性质。平台期只给上界,于是有续航的下界 —— app 可以说「至少还能跑这么久」,并且这句话是真的。单级跳的下界必为零, 于是一步永远不能宣布你会用尽。爆发随 S 增长自行衰减。不确定性的出口就是区间的宽度,不需要另设一个置信度参数,因为根本不需要。

What it cost, at list price

按目录价折算花了多少

A trophy page converts the work you actually did into what the same tokens would have cost at the published API rates, with the price table's source and date shipped alongside it — and, for the last 7, 30 or 90 days, which projects it went to.

战绩页把你实际做的事,按官方公布的 API 单价折算成等效成本 —— 价格表连同它的来源和核对日期一起打包在应用里;最近 7、30、90 天还能按项目看花在了哪里。

The login, in full

登录的完整说明

It only reads. It never renews the login and never writes to the record. Up to 1.4.0 it did both: it asked once for keychain access and again after every sign-in, and on one machine a renewal it could not write back logged the command-line tool out. When the login has expired now, the panel says so and offers Open Claude Code; using Claude Code once renews it, and the numbers come back on their own.

它只读。从不续期这个登录,也从不写这条记录。1.4.0 及更早的版本两件都做: 要你授权一次钥匙串、每次重新登录后再授权一次,而且在一台机器上,一次写不回去的续期把命令行工具登出了。现在登录过期时,面板会说明原因,并给一个 打开 Claude Code 按钮;用 Claude Code 一下, 登录就会续期,额度随后自动恢复。

Nothing here asks you to open a terminal. Signing in is a button that opens one and does it for you; a Mac without Claude Code on it gets a button to the download page rather than a command that answers command not found. Until 1.1.5 every dead end ended in something to type.

这里不会让你去开终端。登录是一个按钮 —— 它替你打开终端并跑完; 没装 Claude Code 的 Mac 得到的是一个通往下载页的按钮,而不是一条会回你 command not found 的命令。1.1.5 之前,每一个死胡同的尽头都是一句要你敲的东西。

Until 1.0.9 this page said no dialog ever appeared, on the grounds that the app read the record through /usr/bin/security. It raised a prompt on every poll instead — and at the time the app was also writing that record itself. 1.0.10 to 1.4.0 stopped using the tool and asked you for keychain access; 1.5.0 stopped writing, and went back to it.

1.0.9 之前,这个页面写的是「永远不弹框」,理由是应用通过 /usr/bin/security 读记录。结果它每轮轮询都弹框 —— 而那时应用自己也在写这条记录。 1.0.10 到 1.4.0 不再用这个工具,改为请你授权钥匙串;1.5.0 不再写,又回到了它。

Specs

规格

MacApple Silicon. No Intel build.
macOSmacOS 13 or later.
Size1.8 MB. It lives in the menu bar.
LanguagesEnglish and 简体中文, switchable in settings.
InstallSigned and notarised by Apple, so it opens with no security warning. Or brew install --cask kenshinice-ai/tap/pwe-ai-bar.
ReadsClaude Code and Codex, proven. Cursor, Copilot, Devin, Grok and Antigravity: read-only, never checked against a real account.
PermissionsNone asked: it reads the Claude Code login through the same tool, with the same command, that Claude Code uses.
NetworkThe token goes to api.anthropic.com and nowhere else. No telemetry, no crash reporting. Away from the keyboard, alerts forward to your phone through ntfy or Bark.
PriceFree. No licence, no account, no paid tier; the source is on GitHub.
MacApple Silicon。没有 Intel 版本。
macOSmacOS 13 或更新版本。
大小1.8 MB。住在菜单栏里。
语言简体中文与 English,设置里可以切换。
安装已由 Apple 签名公证,打开不会有安全提示。或者 brew install --cask kenshinice-ai/tap/pwe-ai-bar。
读取Claude Code 与 Codex,已验证。Cursor、Copilot、Devin、Grok、Antigravity:只读,从未在真实账户上验证过。
权限什么都不会问:它通过 Claude Code 自己用的同一个工具、同一条命令读登录记录。
联网令牌只发往 api.anthropic.com,不去别处。没有统计、没有崩溃上报。你离座时,提醒通过 ntfy 或 Bark 转发到手机。
价格免费。不要授权、不要账号、没有付费档;源码在 GitHub 上。

Latest

最近更新

1.6.8 · 2026-10-18

Claude now shows the dollar credit your plan includes: how much is used and when it resets.

Claude 一节现在会显示套餐自带的美元额度:用了多少、哪天重置。

Help

帮助

Report a problem报告问题Say which AI tools you track, what the status line under each one says, and the version (bottom left of Settings). Never paste a login, token or API key.说明你在看哪几个 AI 工具的额度、每一行下面的状态行写了什么,以及版本号(在设置窗口左下角)。不要贴登录信息、令牌或 API 密钥。 Write to us写信给我们support@pwestudio.site Before you install装之前先看What is proven, what is not, and what earlier versions got wrong.哪些验证过、哪些没有,以及早先的版本错在哪里。