Communitygithub.com

V4TIME/V4SKILL

macOS の FindMy.app を介して Apple デバイスや AirTag の位置情報を追跡します。

V4SKILL とは?

このスキルは、macOS の FindMy.app を使用して Apple デバイス (iPhone、iPad、Mac、AirPods) や AirTag の位置情報を追跡するためのものです。Apple は公式の CLI や API を提供していないため、AppleScript による UI 自動化とスクリーンキャプチャを利用して、地図上の位置情報を画像として取得し、`vision_analyze` 機能で解析することで、デバイスやアイテムの現在地を確認できます。主に Cursor や Claude Code などの AI エージェント環境で動作し、ユーザーが「私のデバイスはどこ?」などの質問をした際に実行されます。さらに、`peekaboo` というツールを使うと、より安定した UI 操作が可能になります。特に AirTag の長期的な追跡 (ペットの行動範囲の記録など) には、FindMy 画面を前面に保ちつつ定期的にスクリーンショットを取得し、位置情報の履歴を蓄積するワークフローが推奨されます。このスキルを活用することで、AI エージェントはユーザーに代わって Apple エコシステム内のデバイス・アイテム追跡を自動化できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/V4TIME/V4SKILL/tree/HEAD/apple/findmy

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Find My (Apple)

macOS の FindMy.app を介して Apple デバイスや AirTag の位置情報を追跡します。Apple が FindMy 用の CLI を提供していないため、このスキルでは AppleScript を使用してアプリを操作し、スクリーンキャプチャでデバイスの位置情報を読み取ります。

前提条件

  • macOS で Find My アプリに iCloud サインイン済みであること
  • 追跡するデバイス/AirTag が Find My に登録済みであること
  • ターミナルに画面収録のアクセス許可が与えられていること(システム設定 → プライバシーとセキュリティ → 画面収録)
  • 推奨(必須ではありません):より安定した UI 自動化のために peekaboo をインストール: brew install steipete/tap/peekaboo

使用場面

  • ユーザーが「私の[デバイス/猫/鍵/バッグ]はどこ?」と尋ねたとき
  • AirTag の位置情報を追跡するとき
  • デバイス(iPhone、iPad、Mac、AirPods)の位置を確認するとき
  • ペットやアイテムの移動を長期的に監視するとき(AirTag のパトロール経路)

方法1:AppleScript + スクリーンショット(基本)

FindMy を開いて操作

# Find My アプリを開く
osascript -e 'tell application "FindMy" to activate'

# 読み込み完了を待つ
sleep 3

# Find My ウィンドウのスクリーンショットを撮る
screencapture -w -o /tmp/findmy.png

次に vision_analyze でスクリーンショットを読み取ります:

vision_analyze(image_url="/tmp/findmy.png", question="表示されているデバイス/アイテムとその位置情報は?")

タブの切り替え

# デバイスタブに切り替え
osascript -e '
tell application "System Events"
    tell process "FindMy"
        click button "デバイス" of toolbar 1 of window 1
    end tell
end tell'

# アイテムタブに切り替え(AirTag)
osascript -e '
tell application "System Events"
    tell process "FindMy"
        click button "アイテム" of toolbar 1 of window 1
    end tell
end tell'

方法2:Peekaboo UI 自動化(推奨)

peekaboo がインストールされている場合、より信頼性の高い UI 操作が可能です:

# Find My を開く
osascript -e 'tell application "FindMy" to activate'
sleep 3

# UI をキャプチャして注釈を付ける
peekaboo see --app "FindMy" --annotate --path /tmp/findmy-ui.png

# 特定のデバイス/アイテムを要素 ID でクリック
peekaboo click --on B3 --app "FindMy"

# 詳細ビューをキャプチャ
peekaboo image --app "FindMy" --path /tmp/findmy-detail.png

次に vision で解析します:

vision_analyze(image_url="/tmp/findmy-detail.png", question="このデバイス/アイテムの位置情報は?住所や座標が表示されていれば含めてください。")

ワークフロー:AirTag の位置を経時追跡

AirTag の監視(例:猫のパトロール経路の追跡)には:

# 1. FindMy を開いてアイテムタブに移動
osascript -e 'tell application "FindMy" to activate'
sleep 3

# 2. AirTag アイテムをクリック(ページを開いたままにしておく — AirTag はページを表示中のみ更新)

# 3. 定期的に位置情報をキャプチャ
while true; do
    screencapture -w -o /tmp/findmy-$(date +%H%M%S).png
    sleep 300  # 5分ごと
done

各スクリーンショットを vision で解析して座標を抽出し、経路をまとめます。

制限事項

  • FindMy には CLI や API がありません — UI 自動化が必要です
  • AirTag は FindMy のページがアクティブに表示されている間のみ位置を更新します
  • 位置精度は Find My ネットワーク内の近くの Apple デバイスに依存します
  • スクリーンショット撮影には画面収録の許可が必要です
  • AppleScript による UI 自動化は macOS のバージョンによって動作しなくなる可能性があります

ルール

  1. AirTag を追跡するときは FindMy アプリを前面に保つこと(最小化すると更新が止まります)
  2. vision_analyze でスクリーンショットの内容を読み取ること — ピクセルを直接解析しようとしないこと
  3. 継続的な追跡には cron ジョブを使用して定期的にキャプチャとログ記録を行うこと
  4. プライバシーを尊重すること — ユーザーが所有するデバイス/アイテムのみを追跡すること

Individual skills in this repo

This repo contains 12 individual skills — each has its own dedicated page.

関連スキル