I asked Claude Code to pack a pharmacy kit. My folder names caught a drug I shouldn't take.
I keep my personal notes as plain markdown in a git repo. Gear, travel, house, homelab, family paperwork. No vault software, no database, no tooling — just files and folders.
Last week I pointed Claude Code at the repo and asked for something mundane: help me organise my gear inventory and build a travel checklist. Somewhere in the middle of that, I asked it to help me rework the pharmacy kit for a family trip.
It came back with the kit. And with two things I hadn't asked for — one about me, one about my child — that changed what actually went in the bag.
Neither was a lucky guess. Both were already sitting in my own files, and had been for a while. I want to walk through how it found them, because the more I think about it, the less this is a story about the model being clever, and the more it's a story about how I'd organised my notes without ever meaning to.
What it caught
A drug I shouldn't be taking. My existing kit list — written by me, years ago — had ibuprofen on it, the way it probably has for most families. Claude Code flagged that I specifically shouldn't be taking NSAIDs at all, given my own documented history of peptic ulcer disease, including two hospitalisations, the more recent one only months earlier. I knew this, obviously. I just hadn't connected it to my own packing list.
An allergy note for my child that turned out to be wrong. My summary file said a whole class of antibiotics was off-limits for him. When I later asked Claude Code to double-check that against the actual paperwork, it found that my summary disagreed with the signed form it had originally been written from — and disagreed in the direction that matters.
The folder names did more than I expected
The ulcer flag didn't come from Claude Code opening a file. It came from listing a directory.
My medical folders are named like this:
<date> - <name> - <diagnosis>/
That's the whole scheme. A plain directory listing already reads like a timeline: what happened, to whom, when. And because the same diagnosis showed up under two different dates, years apart, the listing on its own said something a single file never could — that it had come back.
Claude Code read the diagnosis off the folder name, noticed how recent the second one was, and connected it to a drug that was already sitting in my packing list.
I didn't build this naming habit for a machine to read. I built it so I could find things without opening forty folders. It turns out those are the same problem, and solving it for myself years ago is the reason this worked at all.
If your files are called scan_0047.pdf and IMG_2291.jpg, none of this happens — not because Claude Code can't open them, it can, but because nothing tells it which of four hundred files is worth opening in the first place.
The connection wasn't written down anywhere
It's worth being precise about what actually happened here, because it's easy to over- or under-credit it.
No file in my repo says "don't take ibuprofen." My files say duodenal ulcer. My kit list said ibuprofen. Getting from one to the other requires knowing that NSAIDs are the drug class most associated with aggravating peptic ulcers — which is just medical knowledge, not something I'd written down anywhere.
So: my own filing surfaced the fact. General medical knowledge supplied the missing link. Neither one on its own would have caught it.
The same pattern showed up again a bit later. While checking Greek prescribing information for a children's ibuprofen product, it surfaced something I genuinely didn't know — that giving ibuprofen to a dehydrated child, during a stomach bug with vomiting or diarrhoea, sharply raises the risk of acute kidney injury. Which is exactly the situation a travel pharmacy kit is most likely to face, and exactly when the instinct is to reach for something for the fever.
Reading the actual form, not my summary of it
This one started with a small suggestion I hadn't asked for. While putting the pharmacy kit together, Claude Code suggested I make a card for my child's antibiotic restriction and carry it in the kit — I didn't have one before. And it suggested the card should reproduce the original signed form itself, not my own summary of it, because a summary can quietly lose things a source document doesn't.
That's what sent me back to the original paperwork. I pointed it at the actual documents: the lab results, and the original form the whole restriction had been based on in the first place.
The lab report was a three-page PDF in Greek, full of specific IgE values and reference ranges. It read all of it correctly. Every result came back negative — and it didn't take the easy read of that. It pointed out that negative specific IgE has poor sensitivity for this drug class, and that delayed reactions don't show up in this test at all, so a clean result doesn't actually clear the allergy label. That restraint mattered more to me than the reading itself did.
Then it opened the original prohibition form — a photograph of a printed document, not a PDF — and found what my own summary had quietly dropped.
The printed form bans an entire family of antibiotics, spelling out every sub-class by name. But underneath the printed list of alternatives, the doctor had added one line by hand, permitting one of the sub-classes the printed text had just banned. That sub-class happens to be among the most commonly prescribed antibiotics there is.
My summary only had the printed ban. It didn't have the handwritten exception. So for well over a year, my own notes told me my child couldn't take a class of antibiotics that his allergist had specifically written, by hand, that he could.
It read that handwriting. In Greek. Off a slightly creased phone photo of a printed form.
I want to be honest about how hard that actually was — it's one short handwritten line, on a form where the surrounding printed text narrows down what it could plausibly say. That's a much easier problem than reading free-form handwriting on a blank page. But it read it correctly, and it mattered.
What it did next is the part I actually appreciated. It didn't quietly rewrite my notes to say the antibiotic was fine now. It told me the line was handwritten, said clearly that my summary and the source document now disagreed, explained why that mattered — this drug class gets prescribed all the time — and told me to confirm the reading with the doctor before relying on it for anything.
A confident wrong answer here would have been worse than no answer at all. It gave me neither.
It also noticed, from an unrelated note dated two days before the lab work, that a follow-up allergy test had been scheduled for a month that had already come and gone.
What actually made this work
None of it is exotic. Roughly in order of how much each part mattered:
Consistent, descriptive filenames. date - who - what. This single habit did more work than everything else on this list combined.
Everything living in one place. Medical records, gear, the house, travel — one repo. The cross-reference between "ibuprofen in a packing list" and "ulcer in a folder name" only happens if both are reachable in the same pass.
Plain, boring formats. Markdown for notes, PDF and JPG for scans. No proprietary app, no export step, nothing to unlock first.
Real tools, not just a chat window. The ability to list and search files, read PDFs and images properly, and look up current prescribing information online. Take any one of those away and this doesn't happen.
Following a thread instead of stopping at the first answer. Read a summary, notice it conflicts with a source, go open the source, find a third document that changes the picture, and report the disagreement instead of quietly picking a side.
Where I'd push back on myself
It would be dishonest to leave these out.
Legible filenames are legible to anything with access to them. Everything above works precisely because my folder names are readable. That readability isn't free — it's a real trade-off, and worth knowing you're making it.
None of this is a diagnosis. Every flag ended with "confirm this with your doctor" or "check with the pharmacist," and it should have. What actually happened is that it noticed two facts I already possessed were in tension with each other. That's a filing problem, not a medical judgement.
I'm the one who lost the exception in the first place. I'm the one who transcribed that form into a summary, and I'm the one who dropped the handwritten line when I did. Claude Code didn't outperform a careful reader — it outperformed me, being careless, in a way I was never going to catch on my own, because I'd stopped reading the original document and started trusting my own summary of it.
That's really the lesson here, more than anything about handwriting. Summaries quietly drift from the documents they came from, and nobody goes back to check.
What I'd actually tell you to do
Most advice about getting value out of these tools is about how to prompt them. Almost none of it is about what you give them to work with.
I'd flip that around. My prompt was "help me organise my gear inventory" — nothing clever about it. What made it useful was that fifteen years of reasonably disciplined file naming meant a plain directory listing was already a structured, connectable dataset.
Name your files properly. Keep everything in one place instead of scattered across apps. Use formats that open without asking anyone's permission first.
You're not really doing it for the model. You're doing it for the version of you that eventually stops reading the source and starts trusting your own summary of it.