Oldcircle/geo-sleuth
An agent skill that finds where a photo was taken — OpenStreetMap geometry, elevation skylines, satellite imagery and street view — and shows its work. Works with Claude Code, Codex, Cursor, Gemini CLI, OpenCode and GitHub Copilot.
What it solves
geo-sleuth is an agent skill designed to pinpoint the exact location where a photo was taken, even when the image lacks GPS metadata, text, landmarks, or recognizable signs. It transforms visual clues—such as skyline shapes, pier spacing, and shadow angles—into precise geographic coordinates.
How it works
The project operates through a three-layer system where specialized Python scripts handle the heavy lifting of data processing and ranking, while the AI model acts as the final judge.
- Decide: A candidate board (
board.py) manages candidates, scores evidence, and determines the next search step. - Perceive: A suite of scripts performs specific tasks:
intake.pyhandles EXIF and OCR;terrain.pymatches ridge lines against elevation data;osm.pypulls geometry from OpenStreetMap; and others handle satellite and street view matching. - Judge: The AI model uses the
SKILL.mdinstructions and references to propose hypotheses and select the most likely location from the ranked results.
Who it’s for
This tool is for users of AI agents (such as Claude Code, Cursor, GitHub Copilot, and Gemini CLI) who need to perform advanced geolocation (OSINT) tasks using a standardized "Agent Skill" format.
Highlights
- Geometry-Based Localization: Uses pier spacing as a distance ruler and ridge lines as fingerprints to match against elevation data.
- High Precision: Capable of locating photos to within a few meters in complex environments (e.g., rice paddies or city streets).
- Agent-Agnostic: Works with any agent that can read
SKILL.mdand execute shell commands. - Evidence-Driven: Every conclusion must be backed by a specific command output and a produced file, avoiding guesswork based on population or fame.
Related
- Project
- Project
- Project
- Project
- Project