whoburnedmore 0.9.20 → 0.9.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +52 -104
- package/dist/index.js +6678 -6049
- package/package.json +7 -10
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 whoburnedmore
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,133 +1,81 @@
|
|
|
1
1
|
# whoburnedmore
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
[](https://www.npmjs.com/package/whoburnedmore)
|
|
6
|
-
[](https://www.npmjs.com/package/whoburnedmore)
|
|
7
|
-
[](https://www.npmjs.com/package/whoburnedmore)
|
|
8
|
-
[](https://nodejs.org)
|
|
3
|
+
> Find out who burned more — submit your AI coding-agent token usage to the public
|
|
4
|
+
> leaderboard at [whoburnedmore.com](https://whoburnedmore.com).
|
|
9
5
|
|
|
10
6
|
```bash
|
|
11
7
|
npx whoburnedmore
|
|
12
8
|
```
|
|
13
9
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## What you'll see
|
|
19
|
-
|
|
20
|
-
```text
|
|
21
|
-
whoburnedmore · https://whoburnedmore.com
|
|
10
|
+
**This is the real, production CLI** — the exact code published to npm and run on users'
|
|
11
|
+
machines. This repository is a public, always-in-sync mirror of it.
|
|
22
12
|
|
|
23
|
-
|
|
13
|
+
## What it does
|
|
24
14
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
today 92.8M tokens
|
|
15
|
+
`whoburnedmore` reads your local AI coding-agent usage (Claude Code, Codex, Gemini CLI,
|
|
16
|
+
Copilot, Cursor and more, via [ccusage](https://github.com/ryoppippi/ccusage)), adds up
|
|
17
|
+
the tokens and estimated cost, and **submits your daily totals to the whoburnedmore.com
|
|
18
|
+
server** so you land on the public leaderboard and get a shareable dashboard.
|
|
30
19
|
|
|
31
|
-
|
|
32
|
-
|
|
20
|
+
Your **first run signs you in** — the CLI opens a page and you approve a short code — then
|
|
21
|
+
binds this machine to your account so your usage lands on the leaderboard under your handle.
|
|
22
|
+
(Prefer to stay fully offline? `--local` never signs in and never uploads.)
|
|
33
23
|
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
Once you're signed in, your usage lands on the leaderboard under your handle. Run the command again anytime to refresh — or let the background sync do it for you.
|
|
24
|
+
### What leaves your machine
|
|
38
25
|
|
|
39
|
-
**
|
|
26
|
+
Only **daily aggregate numbers** — date, tool, model, token counts, and estimated cost
|
|
27
|
+
(plus optional per-session / per-tool rollups). **Never** your prompts, your code, file
|
|
28
|
+
contents, or file paths. Run `private` to drop off the board, `remove` to delete your
|
|
29
|
+
dashboard and its data, or use `--local` to stay fully offline.
|
|
40
30
|
|
|
41
|
-
|
|
31
|
+
> Want a 100%-local report that makes **no** network calls at all? Use `npx whoburnedmore
|
|
32
|
+
> --local`, which builds an HTML dashboard on your machine and uploads nothing.
|
|
42
33
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
See exactly what would be sent, and send nothing:
|
|
34
|
+
## Commands
|
|
46
35
|
|
|
47
|
-
```bash
|
|
48
|
-
npx whoburnedmore --dry-run
|
|
49
36
|
```
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
npx whoburnedmore --
|
|
37
|
+
npx whoburnedmore sign in, submit, land on the leaderboard, open your dashboard
|
|
38
|
+
npx whoburnedmore --board=CODE compare with friends — sign in and join their board
|
|
39
|
+
npx whoburnedmore --org=SLUG submit to your organization's board (companies/hackathons)
|
|
40
|
+
npx whoburnedmore --local build the dashboard locally and open it (offline, no upload)
|
|
41
|
+
npx whoburnedmore --dry-run print exactly what would be sent, send nothing
|
|
42
|
+
npx whoburnedmore --no-submit collect locally, send nothing
|
|
43
|
+
npx whoburnedmore link --token=TOKEN bind a server/VM to your account (token from your profile)
|
|
44
|
+
npx whoburnedmore daemon keep syncing in the foreground (containers with no scheduler)
|
|
45
|
+
npx whoburnedmore private hide your dashboard from the leaderboard
|
|
46
|
+
npx whoburnedmore public put it back
|
|
47
|
+
npx whoburnedmore remove delete your dashboard and its data
|
|
48
|
+
npx whoburnedmore verify delisted? re-verify your usage to get back on
|
|
49
|
+
npx whoburnedmore status check background-sync health (last sync, staleness)
|
|
50
|
+
npx whoburnedmore install-sync turn on 15-minute background sync
|
|
51
|
+
npx whoburnedmore uninstall-sync turn off the background sync
|
|
55
52
|
```
|
|
56
53
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
| `npx whoburnedmore --board=CODE` | Compare with friends — sign in and join their board |
|
|
63
|
-
| `npx whoburnedmore --org=SLUG` | Submit to your organization's board (companies / hackathons) |
|
|
64
|
-
| `npx whoburnedmore --local` | Build the dashboard locally and open it (fully offline, no sign-in) |
|
|
65
|
-
| `npx whoburnedmore --dry-run` | Print exactly what would be sent, send nothing |
|
|
66
|
-
| `npx whoburnedmore --no-submit` | Print local stats only, send nothing |
|
|
67
|
-
| `npx whoburnedmore private` | Hide your dashboard from the leaderboard |
|
|
68
|
-
| `npx whoburnedmore public` | Put it back on the leaderboard |
|
|
69
|
-
| `npx whoburnedmore remove` | Delete your dashboard and all its data |
|
|
70
|
-
| `npx whoburnedmore verify` | Delisted? Re-verify your usage to get back on |
|
|
71
|
-
| `npx whoburnedmore link --token=TOKEN` | Bind a server / VM to your account (token from your profile) |
|
|
72
|
-
| `npx whoburnedmore daemon` | Keep syncing in the foreground (containers with no scheduler) |
|
|
73
|
-
| `npx whoburnedmore status` | Check background-sync health (last sync, staleness) |
|
|
74
|
-
| `npx whoburnedmore install-sync` | Turn the 15-minute background sync back on |
|
|
75
|
-
| `npx whoburnedmore uninstall-sync` | Turn the background sync off |
|
|
76
|
-
|
|
77
|
-
## Supported tools
|
|
78
|
-
|
|
79
|
-
Usage is read via [`ccusage`](https://www.npmjs.com/package/ccusage) from any of these agents you use locally:
|
|
54
|
+
After your first run, a background sync keeps your page fresh automatically
|
|
55
|
+
every 15 minutes (`uninstall-sync` to stop). The installed background job runs
|
|
56
|
+
the latest published `whoburnedmore` package on each sync tick, so future CLI
|
|
57
|
+
fixes are picked up automatically after the next refresh. The server endpoint is
|
|
58
|
+
overridable with `WHOBURNEDMORE_API`.
|
|
80
59
|
|
|
81
|
-
|
|
60
|
+
## Privacy & transparency
|
|
82
61
|
|
|
83
|
-
|
|
62
|
+
This repository exists so you can read exactly what the CLI does before you run it. It
|
|
63
|
+
contains no secrets and no server code — just the client that talks to the public API.
|
|
84
64
|
|
|
85
|
-
|
|
65
|
+
## menubar-app/
|
|
86
66
|
|
|
87
|
-
(
|
|
67
|
+
[`menubar-app/`](./menubar-app/) is the source for **BurnBar**, a native macOS menu bar
|
|
68
|
+
app that shows live token burn and remaining usage limits across your AI coding tools. See
|
|
69
|
+
[`menubar-app/README.md`](./menubar-app/README.md) for its architecture and build steps.
|
|
88
70
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
## Compete with friends and teams
|
|
92
|
-
|
|
93
|
-
- **Friends:** join someone's board with `npx whoburnedmore --board=CODE` (the code comes from their board's invite).
|
|
94
|
-
- **Companies / hackathons:** submit to an organization board with `npx whoburnedmore --org=SLUG` (add `--pass=CODE` if the org requires a join code).
|
|
95
|
-
|
|
96
|
-
Your submissions link to your handle at `whoburnedmore.com/u/<handle>`. You can delete your account and every row of data anytime from your profile.
|
|
97
|
-
|
|
98
|
-
## Keep it live
|
|
99
|
-
|
|
100
|
-
Background sync is on by default after your first run, so your dashboard stays fresh without re-running by hand. To manage it:
|
|
101
|
-
|
|
102
|
-
```bash
|
|
103
|
-
npx whoburnedmore status # last sync + staleness
|
|
104
|
-
npx whoburnedmore uninstall-sync # turn the background sync off
|
|
105
|
-
npx whoburnedmore install-sync # turn it back on (launchd / cron / scheduled task)
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
The installed background job runs the latest published `whoburnedmore` package on
|
|
109
|
-
each sync tick, so future CLI fixes are picked up automatically after the next
|
|
110
|
-
15-minute refresh.
|
|
111
|
-
|
|
112
|
-
## Servers & VMs
|
|
113
|
-
|
|
114
|
-
Generate a one-time `link` command from your profile on whoburnedmore.com and run it inside the machine to bind it to your account:
|
|
71
|
+
## Build
|
|
115
72
|
|
|
116
73
|
```bash
|
|
117
|
-
|
|
74
|
+
npm install
|
|
75
|
+
npm run build # bundles src/index.ts -> dist/index.js
|
|
76
|
+
npm test
|
|
118
77
|
```
|
|
119
78
|
|
|
120
|
-
On a persistent VM, background sync uses cron or a systemd user timer automatically. In a container or any host without a scheduler, run `npx whoburnedmore daemon` under your process manager instead. Set `WHOBURNEDMORE_CONFIG_DIR` to a persistent path so the machine identity survives restarts.
|
|
121
|
-
|
|
122
|
-
## Links
|
|
123
|
-
|
|
124
|
-
- 🏆 Leaderboard — **[whoburnedmore.com](https://whoburnedmore.com)**
|
|
125
|
-
- 📊 Your dashboard — printed in the terminal after your first run
|
|
126
|
-
|
|
127
|
-
## Requirements
|
|
128
|
-
|
|
129
|
-
Node.js >= 20.
|
|
130
|
-
|
|
131
79
|
## License
|
|
132
80
|
|
|
133
|
-
MIT
|
|
81
|
+
MIT
|