Another Day, Another Dollar
See what your Claude Code sessions cost while they run, without leaving the editor.
The service is invite-only. This extension shows numbers from the Another Day, Another Dollar
telemetry service, which collects your Claude Code usage. Without an invitation to that service the panel
has nothing to show. To ask for one, post on this listing's Q&A tab.
What it shows
A panel in the activity bar (the dollar sign) with:
- This window's session: what it has cost so far, the context it re-sends on every message (carried
cost), and what the next message will cost.
- Every session running on the machine, with its helpers (subagents) below it, each with its own cost.
- A colour for waste, not for spend. Green, yellow or red comes from the service's advice rules: a
session re-reading the same files, a context that keeps growing, a cache that keeps missing. A $20
session the rules find no fault with is green.
- The one suggestion that fixes the worst issue, when there is one.
- Optionally, your Claude plan's 5-hour and weekly limits (
claudeSessions.showQuota).
- On Windows, a /relief button: it opens a new Claude Code session with
/relief ready to send, which
frees RAM and CPU left running by sessions and asks before it stops anything. If /relief is not
installed, the button offers to install it first. When the machine stays busy (RAM or CPU high for 5
minutes), a card suggests it, with "Remind me later". RAM and CPU are measured on your machine and never
sent anywhere.
- Codex native lifetime tokens, when Codex upload was configured with the installer. These rows are
source-qualified and show snapshot time and scope. Cost, request count, current-running state,
focused-tab detection and health remain unavailable rather than being shown as zero or green.
Every number is computed by the service. The panel sends session ids and nothing else about your work.
Codex collection runs during extension refreshes only. It reads at most 10 recent local rollout files
through the same bounded adapter as the CLI and sends parsed counters, never rollout content or paths.
Getting started
Get an invitation (see above).
Install this extension and press Set up in its panel. Your browser opens the service's sign-in
page; sign in with the Google account you were invited with and press Connect VS Code. VS Code then
asks to open a link, and the extension does the rest, reporting each step:
- registers the service's MCP tools with Claude Code (
claude mcp add --scope user ...), which is
also where the panel reads its key from;
- runs the service's installer, checked against its published size and SHA-256, which turns tracking
on: the hook, the settings entries, the key.
Restart Claude Code afterwards. Pressing Set up again on the same machine replaces its keys.
A step that fails says what failed and the command to run by hand. An account with no invitation gets
a Request an invite button on the sign-in page instead.
Without VS Code, the same two steps come from the service's setup page (the claude mcp add command) and
the MCP tool enable_tracking (the installer command).
Settings
| Setting |
Default |
What it does |
claudeSessions.url |
the hosted service |
The telemetry service to read from. |
claudeSessions.sortBy |
recent |
Order the session list by most recent or most expensive. |
claudeSessions.refreshSeconds |
30 |
How often to refresh while the window has focus. Unfocused windows refresh every 5 minutes. |
claudeSessions.showQuota |
true |
Show the plan's 5-hour and weekly limits. Read from this machine's Claude Code sign-in; the sign-in token goes only to Anthropic, never to the telemetry service. |
claudeSessions.funMode |
false |
A meme about what coding agents cost under the panel's title. It changes nothing the panel reports. |
claudeSessions.reliefRamPercent |
85 |
Windows only. Suggest /relief when RAM in use averages at least this percent over reliefMinutes. A starting guess. |
claudeSessions.reliefCpuPercent |
80 |
Windows only. The same for CPU. A starting guess. |
claudeSessions.reliefMinutes |
5 |
Windows only. How long the machine must stay busy before the card shows, so a short spike does not. |
claudeSessions.reliefSnoozeMinutes |
60 |
Windows only. How long "Remind me later" hides the card. |
claudeSessions.timeoutSeconds |
25 |
How long to wait for the service before giving up. |
claudeSessions.autoUpdate |
true |
About once a day, compare this machine's tracking settings and MCP registration with what the service serves; when they differ, re-run the service's installer (your earlier choices kept) and show one line. Off, it only says an update is available, with the command. "Check for tracking updates" runs the check now. |
Privacy
- The panel reads session ids from
~/.claude/sessions and session titles from the file the service's
naming hook writes. It sends only session ids to the service.
- For a configured Codex home, the extension reads bounded rollout metadata and cumulative token-count
records locally. The service receives the opaque source id, native session id, observation time,
version/provenance and counters. Prompts, responses, tool content, rollout paths and the home path are
not sent.
- Fun mode's memes come from meme-service, through the same telemetry service: the service answers a
finished picture's link, and the panel fetches that picture with no key attached. When there is no meme,
the panel shows a tagline in its place. Only session ids are sent.
- The read key stays where Claude Code stored it. A key set with Another Day, Another Dollar: Set
telemetry key goes to VS Code's secret storage, never a settings file.
License
MIT.
| |