Trail Naturalist
What it is
A small tool that runs on your own computer, not a website. It's the after-hike half of the field-study ritual: you come home with a folder of trail photos, and it turns that "we'll look it up at home" step into a finished, illustrated trail journal.
There's no API key to get and no plant app to sign up for. Claude, right here in your Claude Code session, identifies everything straight from your photos, the plants, the rocks for Bob, the insects, the sweep of a ridgeline, and writes the stories. The tool's only job is to fetch and tidy up the hike's photos so Claude can read them.
How it works
Three light steps take you from your phone to a finished journal. There's no key to get and no plant app to sign up for, because Claude does the identifying straight from your photos. The tool just fetches and tidies up the hike's photos so Claude can read them.
Your photos reach your PC through iCloud
Set up iCloud for Windows once and your iPhone photos sync to your computer automatically. It's a one-time setup, and it's what puts each hike's photos somewhere Claude can read them. Full setup is a few clicks below.
Run prepare_hike.py- it grabs and tidies the hike
Point it at your photos, name the hike, and it pulls in that hike's photos, converts any iPhone HEIC files to JPG (so Claude can actually open them), shrinks the big ones, and drops them into a tidy per-hike folder. One command, no key, no network.
Hand the folder to Claude, the stories get written
Tell Charlie "the hike photos are in this folder," and Claude reads each one, identifies the plants, rocks, and bugs, and writes the finished journal: the ecosystem each plant belongs to, the geology reading behind Bob's rocks, the natural-history notes. No API key anywhere in the flow.
What you need to start
No API key. The only setup is a one-time bridge to get your iPhone photos onto your PC, and then it's a single command per hike.
Set up the iCloud bridge (once)
Your photos live on your phone, and Claude reads them on your computer, so you need a bridge between the two. iCloud for Windows is the easy one:
- Install iCloud for Windows from the Microsoft Store.
- Open it and sign in with your Apple ID (the same one your iPhone uses), then turn on Photos.
- Important: in the Photos options, uncheck "Keep high efficiency original if available" so your photos download as JPEG (Windows-friendly). The tool converts HEIC to JPG for you anyway, so you're covered either way, this just saves a step.
Once it's syncing, your photos appear under "iCloud Photos" in File Explorer, usually at C:\Users\annet\Pictures\iCloud Photos.
Run it (once per hike)
Install the dependencies one time with pip install -r requirements.txt, then point the tool at your photos and name the hike:
Grabs the 20 newest photos (your latest hike) out of the whole iCloud Photos folder, converts HEIC to JPG, downscales the big ones, and drops them into trail-naturalist/hikes/chautauqua-jul-4/.
# One command, no key: python prepare_hike.py --photos "C:\Users\annet\Pictures\iCloud Photos\Photos" --last 20 --name "Chautauqua Jul 4"
Then just tell Charlie "the hike photos are in trail-naturalist/hikes/chautauqua-jul-4," and Claude reads them and writes the finished field-journal.md. Use --last N for the N newest photos, or --since YYYY-MM-DD for everything shot on or after a date.
What gets identified, and how
Everything is identified by Claude's read of your photos, no separate ID engine, no key. For a personal trail journal, that's genuinely great: Claude's good with plants, good with the geology, and good at the natural-history notes that make a journal fun to reread.
Plants & trees
Claude names the plant or tree as best it can, then tells its ecosystem story: what it's doing on this slope, in this season, who depends on it, the detail you'd have walked right past.
Rocks, geology & insects
The rocks, formations, bugs, and scenery all get read too. Claude's genuinely good at geology (Bob's favorite) and natural-history notes, so this is real storytelling, not just a label.
The geology reading is deliberate. Bob's lens is the rock, deep time, why this mountain looks the way it does, and Claude does a real geology read of each rock photo so the journal has his side of the trail in it, not just yours.
Honest about scope: Claude's read is a smart look at a photo, not a lab ID, and for this ritual that's exactly the right tool. If you ever want extra botanical precision, a dedicated engine like Plant.id by Kindwise is an optional future upgrade you could bolt on. You don't need it for the journal, but it's there if you ever want it.
Where it lives
The code is a small Python project on GitHub, in the trail-naturalist/ folder of the LovingEndurance repo. It runs on your Windows computer, not on a server. The tool makes no network calls at all, it just converts and organizes your photos locally, and Claude reads them right here in your session.
The finished trail journals it produces will be published here on the hub, alongside the field-study ritual and the rest of the LovingEndurance deliverables, so each hike's journal has a permanent home you can revisit from anywhere.