Find My (Apple)
Rastreie dispositivos Apple e AirTags através do app FindMy no macOS. Como a Apple não fornece uma CLI para o FindMy, esta skill usa AppleScript para abrir o aplicativo e capturas de tela para ler as localizações dos dispositivos.
Pré-requisitos
- macOS com o app Find My e iCloud conectado
- Dispositivos/AirTags já registrados no Find My
- Permissão de Gravação de Tela para o terminal (Ajustes do Sistema → Privacidade → Gravação de Tela)
- Opcional, mas recomendado: Instalar
peekaboopara melhor automação de interface:brew install steipete/tap/peekaboo
Quando Usar
- Quando o usuário perguntar "onde está meu [dispositivo/gato/chaves/mochila]?"
- Rastrear localizações de AirTags
- Verificar localizações de dispositivos (iPhone, iPad, Mac, AirPods)
- Monitorar movimento de animais de estimação ou objetos ao longo do tempo (rotas de patrulha com AirTags)
Método 1: AppleScript + Captura de Tela (Básico)
Abrir FindMy e Navegar
# Abrir o app Find My
osascript -e 'tell application "FindMy" to activate'
# Aguardar o carregamento
sleep 3
# Tirar uma captura de tela da janela do Find My
screencapture -w -o /tmp/findmy.png
Depois use o vision_analyze para ler a captura de tela:
vision_analyze(image_url="/tmp/findmy.png", question="Quais dispositivos/itens estão sendo mostrados e quais são suas localizações?")
Alternar Entre Abas
# Alternar para a aba Dispositivos
osascript -e '
tell application "System Events"
tell process "FindMy"
click button "Devices" of toolbar 1 of window 1
end tell
end tell'
# Alternar para a aba Itens (AirTags)
osascript -e '
tell application "System Events"
tell process "FindMy"
click button "Items" of toolbar 1 of window 1
end tell
end tell'
Método 2: Automação de UI com Peekaboo (Recomendado)
Se o peekaboo estiver instalado, use-o para uma interação de interface mais confiável:
# Abrir o Find My
osascript -e 'tell application "FindMy" to activate'
sleep 3
# Capturar e anotar a interface
peekaboo see --app "FindMy" --annotate --path /tmp/findmy-ui.png
# Clicar em um dispositivo/item específico pelo ID do elemento
peekaboo click --on B3 --app "FindMy"
# Capturar a visualização de detalhes
peekaboo image --app "FindMy" --path /tmp/findmy-detail.png
Depois analise com visão computacional:
vision_analyze(image_url="/tmp/findmy-detail.png", question="Qual é a localização mostrada para este dispositivo/item? Inclua endereço e coordenadas se estiverem visíveis.")
Fluxo de Trabalho: Rastrear Localização de AirTag ao Longo do Tempo
Para monitorar uma AirTag (por exemplo, rastrear a rota de patrulha de um gato):
# 1. Abrir FindMy na aba Itens
osascript -e 'tell application "FindMy" to activate'
sleep 3
# 2. Clicar no item AirTag (permanecer na página — a AirTag só atualiza enquanto a página estiver aberta)
# 3. Capturar periodicamente a localização
while true; do
screencapture -w -o /tmp/findmy-$(date +%H%M%S).png
sleep 300 # A cada 5 minutos
done
Analise cada captura de tela com visão computacional para extrair coordenadas e então compile uma rota.
Limitações
- O FindMy não possui CLI ou API — deve-se usar automação de interface
- AirTags só atualizam a localização enquanto a página do FindMy estiver ativamente exibida
- A precisão da localização depende dos dispositivos Apple próximos na rede FindMy
- Permissão de Gravação de Tela é necessária para capturas de tela
- A automação de interface via AppleScript pode quebrar entre versões do macOS
Regras
- Mantenha o app FindMy em primeiro plano ao rastrear AirTags (as atualizações param quando minimizado)
- Use o
vision_analyzepara ler o conteúdo da captura de tela — não tente analisar pixels - Para rastreamento contínuo, use um cronjob para capturar e registrar localizações periodicamente
- Respeite a privacidade — rastreie apenas dispositivos/itens que o usuário possui