Replay Doctor - Find the turn your prompt cache broke, and what it cost
by•
See what your AI agent actually spent.
Replay reads the transcripts Claude Code and OpenAI Codex already keep on disk, reconstructs token usage and cache behavior, and names the turn a prompt cache broke and what it cost. It reproduces the provider's own cache reads before reporting anything, and prints NOT MEASURED where the evidence is absent instead of guessing.
Built to measure GPT-6 Astra. Not measured yet.
Single Go binary, zero third-party dependencies, no account.
Replies
Hey Product Hunt! I'm Daniel, founder of Red Robot K.K. in Tokyo. I built Replay because I got tired of opening my provider dashboard and seeing unexplained API bill spikes with zero error logs to account for them.
The Problem:
When you run local coding agents like Claude Code and OpenAI Codex, a client re-render or a long idle gap can silently break your prompt cache. When it breaks, providers re-bill your conversation history at cold write prices instead of cached read prices. On my own agent runs, 4% of my bill was tokens billed a second time. Measured 4.18% on 123 sessions, read 2026-09-17.
How Replay Fixes It:
Replay is a local Go CLI with zero third-party dependencies. It reads your transcript logs off your disk, replays them turn by turn against provider caching rules taken from published vendor documentation with the date each was read, and names the turn the money went.
Zero telemetry: no accounts, no cloud tracking. Four network requests exist and each is a command you type. One exception is disclosed: replay burn probes 127.0.0.1 for a local Ollama on every run.
Privacy: it never stores your raw message text. Only hashed structural details, block sizes and tool names.
On Astra, the honest version. Built to measure Astra. Not measured yet. Replay already reads the rollout format Astra writes and carries the documented GPT-6 Astra pricing and cache rules. What it has never read is an Astra turn carrying token counts, because generating that traffic costs money this project does not have. Where that figure would go, Replay prints NOT MEASURED rather than estimating, and so does the site. Contest credits would fund the first real Astra runs, and those measurements would be published with their dates and provenance like every other figure.
Run the installer and tell me what your re-billed percentage looks like. I'll be in the comments all day.
Grok lands by the end of this week. The reader is written and runs on my own machine against 106 Grok sessions; it is held out of this release because its refusal paths do not yet have tests observing them, and a reader whose safety checks are unverified is not one I want to ship into a tool that exists to refuse what it cannot measure.
Honest answer: nothing yet, and that is exactly why I entered.
Replay reads the rollout format Astra writes and carries Astra's published pricing, so the path is there in the shipped build. What I have never had is a real Astra session to run it against. Generating that traffic costs money I do not have, so where an Astra figure would go, Replay prints NOT MEASURED.
What I can say from measured data is what the problem looks like on the surfaces I have read. On 123 of my own sessions, read 2026-09-17, 4.18% of my spend was tokens I paid for twice because a prompt cache broke. That is Claude Code and OpenAI Codex, 105.2M tokens, $620.47 at list prices.
The reason I want Astra measured is that a longer autonomous run is where a silent cache break would compound, and nobody has checked whether it actually does. I would rather find that out than assert it. Give me the traffic and I will publish what comes back, with the date it was read and the build that read it.