Local profiler for AI agents: burn by source, overnight bill, behavioral forensics, config fixes
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent — or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag — we're steadily working through the catalog.
💡 Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Claude Code · Codex CLI · Gemini CLI · opencode · OpenClaw · Hermes Agent — one normalized core, local, read-only, zero dependencies
You ran out inside one window. On this machine that window was 5.4× the median one — same person, same week, same subscription.
Your assistant's own logs already know which window it was and what filled it. Nothing else on your machine does: the built-in counter shows a total, your invoice shows a total, and neither says which five hours took you out.
One command, no account, nothing leaves your computer:
| If you pay… | what actually runs out | ask |
|---|---|---|
| a subscription (Claude Code Pro/Max) | the rolling usage window — the invoice is fixed, the wall is not | agentburn limits |
| per token (API keys, OpenClaw, Hermes) | money, mostly while you're asleep | agentburn |
Both read the same local logs. Neither invents a number the data doesn't contain.
agentburn limits — the subscription viewOptimizing a subscription doesn't change your bill. It changes how far you get before you're cut off. That is a window problem, and windows need intra-session resolution — a single session routinely spans several of them.
Peak vs typical. Your worst rolling 5-hour window against the median of your own active ones. The ratio is the finding: a wall is hit by the peak.
What filled it — by model, by source (you / subagents / scheduled work), and by kind (cache reads vs cache writes vs output).
Measured against your own wall — automatically. Anthropic doesn't publish the formula behind those allowances, so agentburn refuses to invent a threshold. But Claude Code writes the cut-off into the transcript itself ("You've hit your session limit · resets 8:30pm"), and every one of those moments is a measured ceiling. With several, the ceiling is their median:
No cut-off in your logs yet? --hit "2026-08-20 14:30" names one by hand. A measured ceiling is remembered in ~/.agentburn/ceiling.json, so the status line below knows it too.
Codex: the provider's own reading. Codex CLI writes rate_limits.used_percent next to every request. agentburn pairs each reading with your weighted usage of the same window and takes the median — a ceiling from the provider's arithmetic, not from a cut-off. Treat it as an estimate: that percentage counts every device and app on the account, while your local rollouts are only part of it — and when Codex stops reporting a window (plan or client change), a later peak is flagged as measured on earlier windows, not sold as an overrun.
Time to wall. Ceiling minus the current window, divided by the pace of the last half hour. The number you actually want while working.
The week, too. The heaviest rolling 7-day span, how much of it this week already is, and a weekly ceiling when Claude Code recorded a weekly cut-off.
By project. Sessions record their working directory; the peak window is split by it.
agentburn statusline — the wall, live, inside Claude CodeOne line, no colour, built for Claude Code's statusLine:
Reads only the last three days of logs (the ceiling comes from the state file), so it stays cheap enough to run on every turn.
agentburn context — what a long context costsEvery call re-reads its whole context, and on a subscription that re-reading is the window: a turn at 300k costs what three turns at 100k cost. Claude Code records the exact context size of every call, so this is measured, not modelled:
/clear arithmetic — the part of every call's context above a threshold, at the cache-read rate: the honest saving of a restart habit, assuming the same work in shorter sessions.Skill call, median of recent loads. Bundled skills never touch the disk; the transcript sees all of them.effort setting took.agentburn fix: the restart threshold, and the heavy skills.agentburn commits — what a commit cost youSessions record their working directory and branch; your repositories record when each commit landed. The usage between two consecutive commits is what the second one cost — read-only git log, nothing written:
Weighted tokens = tokens × published price ratios (cache read 0.1×, cache write 1.25×, output per model), normalized to one input token of the reference model. Every ratio is public; none of them is a guess about how the provider counts.
agentburn — the money viewcron / subagent / gateway:telegram|discord|whatsapp / cli. Always-on ≠ free.--night 23-7).agentburn why — behavioral forensics: re-read loops, retry storms, idle heartbeats, per-cron receipts, context thrash.agentburn fix — ready-to-paste config patches, dry-run by design.agentburn fix — findings become config, not adviceNot "consider a cheaper model" but the exact file and the exact lines. Patch generators exist only for levers verified against the agent's own source or documented configuration:
| Agent | Verified levers |
|---|---|
| Claude Code | registered MCP servers (~/.claude.json, .mcp.json), always-loaded CLAUDE.md memory files, the session-restart threshold (measured), heavy skills (measured per load) |
| Hermes | per-job model / enabled_toolsets (cron/jobs.py), per-platform toolsets (gateway/run.py) |
| OpenClaw | heartbeat.{every, activeHours, model, lightContext} (config/types.agent-defaults.ts) |
Factual signals from GitHub, npm, and our automated checks — not a rating.
No reviews yet — be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/agentburn)<a href="https://allmcps.com/mcp/agentburn"><img src="https://allmcps.com/api/badge/agentburn?style=directory" alt="Agentburn on AllMCPs" /></a>