何を解決するのか
インスタにはこの手のリールが多い。「フォローしてコメントを残せば DM で場所を教えます」。肝心の知りたい場所は、その DM を受け取らないと分からない。
だが宣伝リールは人を惹きつけるために撮った映像なので、むしろ画面に手がかりを大量に残す。看板の文字、橋の形、灯台の色、字幕の一行、キャプションのハッシュタグ。このスキルはその手がかりだけで場所を突き止める。DM を待つ必要はない。
まず、Claude Code とは
Claude Code は Anthropic が作った、ターミナルで動く AI コーディングエージェントだ。頼んだ作業を、自分でファイルを読みコマンドを実行して片づける。
「スキル」はその Claude Code に特定の作業能力を足す拡張で、「プラグイン」はスキルをまとめて配布する方式だ。このツールは「リール内の場所を逆探知する」スキル一つをプラグインとして配布したもの。Claude Code さえ入っていれば、下の二行で組み込める。
インストール — 二行で完了
Claude Code 内で以下を入力すると、マーケットプレイスを登録してスキルをインストールする。
yt-dlp(動画ダウンロードツール)や ffmpeg(フレーム抽出ツール)が何かを知らなくてよい。初回実行時に preflight が自動検出し、macOS なら Homebrew で自動インストール、Linux・Windows なら正確なインストールコマンドを案内する。
/plugin marketplace add hjsh200219/insta-spot-search
/plugin install insta-spot-search@insta-spot-search使い方 — 一行
リールの URL を渡すだけ。スラッシュコマンドでも、自然な言葉でも、ローカルに保存した動画ファイルのパスでもよい。
場所について少しでも分かることがあれば、ヒントとして添える。「江原道の海辺っぽい」の一言が検索範囲を絞り、精度を上げる。
/insta-spot-search https://www.instagram.com/reels/XXXX/
# 自然な言葉でもよい
このリールどこ? https://www.instagram.com/reels/XXXX/
# ヒントを与えると精度が上がる
/insta-spot-search <URL> 江原道の海辺っぽい内部で何が起きるか — 4 段階
表面上は URL 一行だが、内部では 4 段階が回る。人が探偵のように手がかりを集め、照合する過程をそのまま自動化したものだ。
肝は最後の段階だ。候補を見つけて終わりにせず、候補ごとに「これが違う理由」をあえて探す。反証を試みても崩れないものだけを確定として挙げるので、もっともらしい誤答がレポートに混じるのを防ぐ。
1) ingest.py yt-dlp でメタ・字幕・コメント・位置タグ抽出 + 動画ダウンロード
ffmpeg でフレーム抽出 (既定 24 枚, 1024px)
2) フレーム判読 Claude が手がかり一覧を作成 (看板・橋・灯台・字幕・ハッシュタグ)
3) 並列検索 Kakao マップのキーワード · Naver ブログの特徴 · 投稿者の逆探知
4) 交差検証 候補ごとに反証を試みる -> 信頼度(確定/有力/候補) + 根拠レポート実例 — 19 秒のドローンリール
実際に 19 秒のドローンリール一つで、江陵サチョンジン海辺を住所と地図リンクまで特定した。
画面に映ったアーチ橋、黄色い灯台、潮干狩りの岩を手がかりにし、三つが同時に合致する場所を交差照合して絞り込んだ結果だ。手がかり一つでは候補が複数残るが、三つが重なる地点は一箇所だけだった。
詰まったら — よくあること
インスタが未ログインアクセスを弾く場合、ブラウザの Cookie で自動再試行する(既定は chrome)。Chrome でインスタにログインしていればよい。
"empty media response" エラーは、たいてい yt-dlp が旧版でインスタの抽出器が壊れている。brew upgrade yt-dlp で上げれば解ける。
ナレーションも手がかりに使いたいなら --audio を付けて音声を書き起こせる(GROQ か OpenAI のキーを再利用)。ダウンロードした動画とフレームはすべてローカルの一時フォルダにのみ保存され、外部にアップロードしない。
引いた一線
店舗・観光地のように公開された場所を宣伝するコンテンツだけを対象とする。個人の自宅や行動を追う目的の使用は、ガードレールが拒否する。
すべてオープンソース(MIT)だ。元のリポジトリは下の出典リンクにある。