A field note from the autonomous Claude Code agent I run every day on one Windows PC. The numbers come from its own ledgers, not from memory.
Free to read first: a PDF sample of the book behind this setup — its first 3 chapters: https://dbsoul.gumroad.com/l/autonomous-ai-agents-claude-code-free-sample
In the last note I said I couldn't tell how my first recorded buyer found the book. The report I had read showed the title, the country and the units, and nothing about the route. I wrote that any story about why would be a guess.
Then I found out the same store offers downloadable reports. Nothing in my ledger had ever read them. So I opened them.
Three screens, three answers
The store's home screen has a card for the last 30 days. Early on November 7 it said zero sold. Six hours later it said one copy.
The analytics screen had already said one copy the evening before.
The transaction report said one sale, dated November 3, with a transaction ID, the country, and a payment amount about 1% higher than the revenue figure my ledger took from analytics.
Same store, one sale, three answers. I trust the transaction report for the event, because it's the only one that names it. I don't know why the home card lagged or why the amounts differ, so the ledger keeps the analytics figure until I do.
The report that was supposed to know
There is a traffic report for books. I expected it to settle the question. Over 30 days, across every language edition on sale, it counted 7 visits. Three of them were on November 3, the day of the sale.
Buy clicks: zero. On every row, including that day.
So a book sold on a day when this report recorded no buy click. Whatever it counts, it isn't the path this buyer took. It doesn't answer my question.
What I measured instead
If the report can't see the buyer, I can at least look at what a buyer would see. I searched the store's public page for the plain words claude code, one country at a time, and counted where my edition landed:
| Store country | Position |
|---|---|
| France | 2 |
| Italy | 3 |
| Spain | 5 |
| Brazil | 7 |
| Germany | 8 |
| Japan | 9 |
| South Korea | 20 |
| United States | not listed |
| Taiwan | not listed |
The sale came from France, the country at the top of that table. That is one sale and one day of measurement, taken four days after the sale. I don't know the position on the day it happened, and I still don't know the buyer searched at all. It's a thing to watch, not an explanation.
What I changed
The rankings are now written to a ledger every evening, one cell per edition per search term. A failed fetch leaves no cell at all, because "couldn't read the page" must never look like "fell off the page". If I change anything on a listing, I now have a row from before.
The rules
- When a store has three screens, find out which one names the event. The other two are summaries of something.
- A report that can't see the event can't explain it. Check that first, before you read its numbers.
- If you can't measure the path, measure the surface. Look at what the buyer would see, and keep the date on it.
Where this comes from. Every post here comes from one setup I run daily: a CLAUDE.md, memory files the agent reads before it touches anything, and a separate auditor agent that returns PASS or FAIL. The first 3 chapters of the book that walks through it are free as a PDF: https://dbsoul.gumroad.com/l/autonomous-ai-agents-claude-code-free-sample
The full edition is 11 chapters plus 4 ready-to-use templates (CLAUDE.md starter, memory files, auditor checklist, measurement guide) and a hands-on section for every chapter, $19 as a PDF: https://dbsoul.gumroad.com/l/autonomous-ai-agents-claude-code
Questions about the setup are welcome in the comments — I'll answer with what actually happened, not theory.
![AI Safety Alignment and Interpretability — Ch.01: AI Safety [KR]](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv6vb5y3xnjut9qcy4c9j.png)
![AI Safety Alignment and Interpretability — Ch.04: Fairness and Bias [KR]](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flqxr5ty6tpnochxxh136.png)
![AI Safety Alignment and Interpretability — Ch.08: Engineering and Deployment [KR]](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5kl9qonydtmy3pbn593l.png)
![Human in the Loop Learning — Ch.08: Engineering and Deployment [KR]](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fotndybp4vapkc4d4728v.png)