Paper Trail
Point at a file. Get the conversation that decided it.
Your coding agents made hundreds of decisions for you this month. Every one of those conversations is still sitting on your laptop, and nobody has read them since — including you.
$ paper-trail why lib/notes.py
abc3288 2026-08-21 The index page and the loops page now count the same thing
changed lib/notes.py, alongside 1 other file
said 2 min earlier · cc-toolchain
"Let me look at the file in more detail, but curious how you interprete the file?"Three things it finds
What you dropped.
Everything you said you would come back to, that nothing since has picked up. Each one with the sentence you actually typed.
The rules you had to give twice.
Not guessed — these sentences say it themselves: I told you, we agreed, how many times. Every one is a place your setup failed to carry something you had already settled.
What you decided, and why.
The choice, the reason from the conversation around it, and the commits that followed it.
It reads the change, not the clock
Most tools that link code to conversation match on time. Paper Trail will do that for free — the last thing you said before the commit landed, median gap thirteen minutes. Ask it to try harder and it reads the commit's actual diff alongside everything you typed, and tells you which sentence caused that change:
e4b3a45 2026-08-22 Why, not just what
said 10 min earlier · picked by reading the diff · high confidence
"Ok, let's do the model pass so it explains why ..."
because: the message asks for exactly what the commit implements.And when nothing you said caused it, it says so rather than reaching for the nearest sentence. An answer that can never come back empty is not an answer.
Get it
git clone https://github.com/DetGaao/paper-trail && cd paper-trail
./install.sh
paper-trail setupPython 3.9 and the standard library. No account, no API key, nothing leaves your machine. It reads Claude Code and Codex, and it cannot read a single project until you say so.
What it will not pretend
- It reads Claude Code and Codex transcripts. Other agents keep the same kind of file and are not supported yet.
- Linking a decision to code needs that work to be in git.
- Recovering why uses a model you already have — Claude Code, Codex, or one running on your own machine with nothing leaving it. Everything else works without any of them.