Localiser (Apple)
Suivez les appareils Apple et les AirTags via l'application FindMy sur macOS. Comme Apple ne fournit pas d'interface en ligne de commande pour FindMy, cette compétence utilise AppleScript pour ouvrir l'application et la capture d'écran pour lire les positions des appareils.
Prérequis
- macOS avec l'application Find My et iCloud connecté
- Appareils/AirTags déjà enregistrés dans Find My
- Permission d'enregistrement d'écran pour le terminal (Réglages Système → Confidentialité → Enregistrement d'écran)
- Optionnel mais recommandé : Installer
peekaboopour une meilleure automatisation de l'interface utilisateur :brew install steipete/tap/peekaboo
Quand l'utiliser
- L'utilisateur demande « Où est mon [appareil/chat/clés/sac] ? »
- Suivi des positions des AirTags
- Vérification des positions des appareils (iPhone, iPad, Mac, AirPods)
- Surveillance des déplacements d'animaux ou d'objets au fil du temps (itinéraires de patrouille AirTag)
Méthode 1 : AppleScript + Capture d'écran (Basique)
Ouvrir FindMy et naviguer
# Ouvrir l'application Find My
osascript -e 'tell application "FindMy" to activate'
# Attendre le chargement
sleep 3
# Prendre une capture d'écran de la fenêtre Find My
screencapture -w -o /tmp/findmy.png
Ensuite, utilisez vision_analyze pour lire la capture d'écran :
vision_analyze(image_url="/tmp/findmy.png", question="Quels appareils/objets sont affichés et quelles sont leurs positions ?")
Basculer entre les onglets
# Basculer vers l'onglet Appareils
osascript -e '
tell application "System Events"
tell process "FindMy"
click button "Appareils" of toolbar 1 of window 1
end tell
end tell'
# Basculer vers l'onglet Objets (AirTags)
osascript -e '
tell application "System Events"
tell process "FindMy"
click button "Objets" of toolbar 1 of window 1
end tell
end tell'
Méthode 2 : Automatisation de l'interface utilisateur avec Peekaboo (Recommandé)
Si peekaboo est installé, utilisez-le pour une interaction UI plus fiable :
# Ouvrir Find My
osascript -e 'tell application "FindMy" to activate'
sleep 3
# Capturer et annoter l'interface
peekaboo see --app "FindMy" --annotate --path /tmp/findmy-ui.png
# Cliquer sur un appareil/objet spécifique par ID d'élément
peekaboo click --on B3 --app "FindMy"
# Capturer la vue détaillée
peekaboo image --app "FindMy" --path /tmp/findmy-detail.png
Analysez ensuite avec vision :
vision_analyze(image_url="/tmp/findmy-detail.png", question="Quelle est la position affichée pour cet appareil/objet ? Incluez l'adresse et les coordonnées si visibles.")
Flux de travail : Suivi de la position d'un AirTag dans le temps
Pour surveiller un AirTag (par exemple, suivre l'itinéraire de patrouille d'un chat) :
# 1. Ouvrir FindMy sur l'onglet Objets
osascript -e 'tell application "FindMy" to activate'
sleep 3
# 2. Cliquer sur l'AirTag (rester sur la page — l'AirTag ne se met à jour que lorsque la page est ouverte)
# 3. Capturer périodiquement la position
while true; do
screencapture -w -o /tmp/findmy-$(date +%H%M%S).png
sleep 300 # Toutes les 5 minutes
done
Analysez chaque capture d'écran avec vision pour extraire les coordonnées, puis compilez un itinéraire.
Limitations
- FindMy n'a pas de CLI ou d'API — il faut utiliser l'automatisation de l'interface utilisateur
- Les AirTags ne mettent à jour leur position que lorsque la page FindMy est activement affichée
- La précision de la position dépend des appareils Apple à proximité dans le réseau FindMy
- Permission d'enregistrement d'écran requise pour les captures d'écran
- L'automatisation UI via AppleScript peut ne pas fonctionner selon les versions de macOS
Règles
- Gardez l'application FindMy au premier plan lors du suivi des AirTags (les mises à jour s'arrêtent si la fenêtre est réduite)
- Utilisez
vision_analyzepour lire le contenu des captures d'écran — n'essayez pas d'analyser les pixels manuellement - Pour un suivi continu, utilisez une tâche cron pour capturer et enregistrer périodiquement les positions
- Respectez la vie privée — ne suivez que les appareils/objets que l'utilisateur possède