FindMyPipe – 從 Linux 查詢 Apple Find My 的 AI 智慧體工具
FindMyPipe 是一個本地 CLI 橋接工具,讓 Linux 使用者透過 iCloud 查詢 Apple Find My 網路,獲取裝置位置並輸出結構化 JSON。專為 AI 智慧體、指令碼和自動化流程設計,支援定位附近興趣點、隱私保護和無配置 mock 模式。
FindMyPipe 是一個開源的本地 CLI 橋接工具,專為 Linux 系統設計,讓使用者能夠透過 iCloud 查詢 Apple Find My 網路,即時獲取 iPhone、iPad、Mac 和 AirPods 等 Apple 裝置的位置資訊。它輸出結構化 JSON 資料,非常適合 AI 智慧體、Shell 指令碼和自動化工作流使用。
除了基本的裝置定位功能,FindMyPipe 還能支援位置感知工作流:例如,AI 智慧體可以利用裝置的座標查詢附近的興趣點(如餐廳、酒店、醫院、公交站),從而構建更豐富的上下文感知應用。
該工具的主要特性包括:
- 即時定位 Apple 裝置,支援 iPhone、iPad、Mac、AirPods
- 將座標輸入到任何 POI API(如 Google Places、OSM、Foursquare)以查詢附近的興趣點
- 專業的 CLI 介面,輸出乾淨的 JSON 格式,易於管道處理和解析
- 隱私優先:日誌中隱藏憑證,裝置 ID 用 SHA-256 雜湊替代
- 無需配置即可使用 mock 模式,無需 Apple ID 即可體驗
- 可選快取功能,可配置 TTL 以避免頻繁請求 iCloud API
- 智慧過濾器:支援 --skip-offline 和 --max-age 引數,僅保留新鮮資料
- 完整的 Apple 2FA 登入流程,支援互動式驗證
- 符合 AgentSkills.io 標準,可作為技能無縫整合到任何智慧體框架中
FindMyPipe 還提供了豐富的 CLI 命令,包括 doctor(檢查狀態)、list(列出所有裝置)、locate(按名稱或 ID 搜尋裝置)和 login(互動式 iCloud 認證)。所有命令均支援 --json 選項以輸出結構化資料。
在隱私與安全方面,FindMyPipe 採取了多項措施:不執行 HTTP 伺服器,所有 I/O 透過標準輸入輸出;不設定 webhook,僅向 Apple 伺服器發起出站輪詢;憑證從不記錄;裝置 ID 使用雜湊替換;原始敏感資料預設隱藏;檔案許可權嚴格限制(目錄 0700,檔案 0600)。
安裝要求 Python 3.11+ 和 Linux(或 macOS),以及啟用了 Find My 功能的 Apple ID(僅即時模式需要)。安裝過程簡單,支援 pip 安裝,並可選即時 iCloud 支援。
FindMyPipe 的架構清晰:上層是 AI 智慧體或 Shell 指令碼,透過 CLI 與 findmy-agent 互動,其內部包含 CLI 層(基於 Typer)、快取層、核心邏輯層和提供商層(支援 Mock 和 iCloud),最終透過 HTTPS 與 Apple iCloud API 通訊。
目前,FindMyPipe 支援 iPhone、iPad、Mac 和 AirPods,但尚未支援 AirTag 或物品。未來計劃內建 POI 整合。該專案採用 MIT 許可證,由社群貢獻構建。