Find the step that cost you.
Every run as a timeline. Earlyman names what broke, keeps the fix for next time and checks it on the next run.
Step 2 changed the checkout code. The agent ran the whole suite, then retried it 3 times.
Tried on your last 50 sessions first: 3 caught, 0 false hits.
The same failure showed up in 17 of 57 runs this month. One fix covers all of them.
Stop it from the trace: it finishes its step, writes a short summary and stops. Stopping asks first and works only from your Mac.
When steps are missing from a trace, Earlyman says so and lowers how sure it is about the cause.
Technical details
Run 1, step 3 of 4 · run all tests · exit code 1 · 7:00 · retried 3 times, all failed. The edit in step 2 changed the checkout code and no test ran on it.
Open any pull request and see only its traces. How a pull request receipt links to them →
How a trace is built. From the first step to the likely fix.
- 01Every run is recordedEach turn, sub-agent and tool call is laid out in order, with what it took and what it spent.
- 02The outliers stand outThe slowest step and the costliest step are marked, and the cost on each step adds up to the session total.
- 03Start at the first failureEarlyman points at where a run first went wrong and suggests one likely fix.
See every agent at a glance.
The real layout, with sample data. Nothing you click is sent or saved.
Good morning. 4 things need you. Most urgent: a stuck agent is still costing money.
- An agent has made no progress for 2 hA tool call is still pending. Stop it or start it again.$3.10 / h
- PR #214 broke a rule: force push to mainBlocked before it ran. The agent carried on.1 rule
- Search subagents run on the largest model418 of 483 this week. A smaller model is enough for search.−$38 / week
- This session has run for 9 hHand off to a fresh session to stop paying for old context.−$6 / day
All caught up.
-
Tokens2.4MSessions2ModelOpusRuleforce push to main · blocked
-
Tokens910kSessions1ModelSonnetRulesall kept
-
Tokens7.1MSessions7ModelOpusRulesall kept
-
Tokens380kSessions1ModelHaikuRulesall kept
Click a pull request to open its receipt.
- checkout-retryOpusstuck 2 h$3.10 / h
- invoice-exportSonnetrunning$1.20 / h
- search-docsOpusrunning$2.40 / h
- test-fixerHaikurunning$0.18 / h
- 8 moremixeddone$0.00 / h
- No force push to mainblocked PR #2141 hit
- No secrets in commits0 hits
- Ask before deleting files3 hits
- Stop an agent idle for 30 m2 hits
3 of 4 rules on.
Last 7 days · $126 · busiest Thursday, $31
- Opus54 %$71.40
- Sonnet31 %$18.90
- Haiku11 %$1.30
- Local 8B4 %$0.00
A smaller model is enough for 418 search calls on Opus this week. Move them to Haiku: −$38 / week
Questions
Can I trace my own agents, not just Claude Code?
Yes. Send OpenTelemetry or Traceloop spans, or import SWE-agent and OpenHands runs. Sending is off until you turn it on, and message text is dropped the moment it arrives.
What if steps are missing from a trace?
Earlyman compares the tool calls with their results. When some are missing it shows how many, and it is less sure about the cause.
Does a trace show what the agent said?
No. A trace keeps sizes, timings, tool names and failure kinds, never message content.
How long are traces kept?
As long as you like. They stay on your computer, and you can export them as CSV, JSON or OpenTelemetry.