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.

解決する問題

写真にテキスト、標識、ランドマークがない場合、通常、写真がどこで撮影されたかを特定するのは困難です。geo-sleuth は、視覚認識ではなく幾何学とオープンな地理データを AI エージェントに利用させることでこれを解決します。1枚の写真と「この写真がどこで撮影されたか見つけて」のような文を受け取り、カメラ位置、向き、衛星証拠画像、信頼半径を返します。

仕組み

geo-sleuth は標準的なエージェントスキルとしてパッケージ化されています:SKILL.md ファイルとプレーンな Python スクリプトです。エージェントは SKILL.md を読み、スクリプトを実行し、結果を解釈します。ワークフローは、候補を検索してランク付けする20の単一目的スクリプトで構成されています。例:

  • 写真から幾何学的な手がかりを読み取ります:橋脚の間隔は距離の定規になり、影は方位角になり、尾根線は指紋になります。
  • OpenStreetMap(例:鉄道橋、電線、街路樹)と標高モデルからデータを取得します。
  • 領域をスキャンし、候補点の標高データから360°の地平線を計算し、フィルタリングします。
  • 写真のスカイラインを計算された地平線にフィットさせ、カメラのロールを解き、最上位の候補を写真に重ね合わせます。
  • スクリプトが候補をランク付けし、モデル(エージェント)が上位のいくつかの中から判断します。
  • カメラ位置、視野、関連する特徴を含む証拠画像と、段階的な信頼度を生成します。

これは、SKILL.md を読み、シェルコマンドを実行できる任意のエージェントで動作します:Claude Code、Codex、Cursor、Gemini CLI、OpenCode、GitHub Copilot など。README には3つのケーススタディ(水田と高架橋、砂漠のスカイライン、桜並木の通り)が示されており、それぞれ2m、100m、3m以内の精度を示しています。

対象読者

環境の幾何学から写真の位置を特定する能力を AI エージェントに与えたい開発者や研究者向けです。デジタルフォレンジック、歴史的な写真分析、旅行記録、または写真に GPS メタデータがないが十分な物理的な手がかりを含むあらゆるアプリケーションに役立ちます。また、複数のエージェントプラットフォームで実行する必要があるエージェンティックツールを構築している人にも向いています。

ハイライト

  • 1枚の写真、1つの文:インターフェースは「この写真がどこで撮影されたか見つけて」と言うのと同じくらい簡単です。追加のエンジニアリングは不要です。
  • 読み取り可能なテキストなしで動作:ナンバープレート、標識、ランドマークは不要です。幾何学(橋脚の間隔、影、尾根線)が検索を担います。
  • 推測ではなく幾何学:すべての手がかりは測定可能な制約に変換されます(橋脚の間隔による距離定規、影による方位角、尾根線による指紋)。
  • スクリプトがランク付けし、モデルが判断:20の単一目的スクリプトが検索、スコアリング、ソートを行い、AI エージェントが上位のいくつかから選択して信頼性を向上させます。
  • すべての主張がファイルを指す:各結論はコマンドと出力ファイルを指定し、プロセスを透明かつ検証可能にします。
  • クロスエージェント互換性:標準的なエージェントスキルは、Claude Code、Codex、Cursor、Gemini CLI、OpenCode、GitHub Copilot などで動作します。
  • 回答には誤差半径が含まれる:座標プラスマイナス半径、カメラの向き、証拠画像、段階的な信頼度が返されます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト