liamnichols

iCloud Find My

生活服務v1.0.0
作者:liamnichols更新於 2026-05-18共 4 個版本 · 最新版本釋出於 2026-01-07icloud-findmy@clawhub_liamnichols/icloud-findmy
家庭助手

據 AlphaMoat 統計,截至 2026-09,iCloud Find My 累計下載 4,545 次、獲 6 個星標,在全部 5,078 個 AI 技能中排名第 2,108 位,在「生活服務」分類(246 個)中排名第 73 位。

累計安裝
148
累計下載
4545
星標
6
全站排名
#2,108
全站前 42% · 「生活服務」前 30%
平台累計安裝累計下載星標評論
ClawHub ↗14845146-
SkillHub ↗14745456—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

使用前需完成 Apple ID 和雙重認證,登入會話會儲存在本地。裝置位置和家庭成員資料高度敏感,只能查詢本人或已同意的裝置,除非使用者明確要求,否則不要主動追蹤。原文示例使用不安全的 eval() 解析位置資料,應改用經過校驗的安全解析方式;保護本地 Apple ID 和會話檔案,不要把 Apple ID 寫入普通工作區檔案。 來源要求 macOS 和 pyicloud CLI;檢視家庭裝置還需啟用家庭共享。

資料釋出於 2026-10-29

可以用來做什麼

  • 檢視已授權裝置的位置和電池狀態
  • 整理裝置的最近位置和充電資訊
  • 在使用者明確請求時規劃低電量提醒

什麼時候用

  • 裝置所有者或家庭成員已同意查詢時
  • Apple ID 會話檔案受到妥善保護時
  • 解析位置資料時使用安全解析器而非 eval() 時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

僅說明如何安全查詢一臺已獲授權裝置的電量;不要獲取位置、儲存 Apple ID 或執行任何追蹤。

月度資料趨勢

累計下載4545
3640412646122026-05 · 累計下載 37072026-06 · 累計下載 39022026-07 · 累計下載 42372026-08 · 累計下載 43842026-09 · 累計下載 454526-0526-09
星標6
5672026-05 · 星標 62026-06 · 星標 62026-07 · 星標 62026-08 · 星標 62026-09 · 星標 626-0526-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-094545—6
2026-084384+3.5%6
2026-074237+8.6%6
2026-063902+5.3%6
2026-053707—6

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

4.2 KB · ClawHub v1.0.0
---
name: icloud-findmy
description: Query Find My locations and battery status for family devices via iCloud.
homepage: https://github.com/picklepete/pyicloud
metadata: {"clawdbot":{"emoji":"📍","requires":{"bins":["icloud"]},"install":[{"id":"pipx","kind":"shell","command":"brew install pipx && pipx install pyicloud","bins":["icloud"],"label":"Install PyiCloud (pipx)"}]}}
---

# iCloud Find My

Access Find My device locations and battery status via the iCloud CLI (pyicloud).
展開全部(共 163 行)

## Setup

1. **Install pyicloud:**
```bash
brew install pipx
pipx install pyicloud
```

2. **Authenticate (one-time):**

Ask the user for their Apple ID, then run:
```bash
icloud --username [email protected] --with-family --list
```

They'll need to enter their password and complete 2FA. The session will be saved and lasts 1-2 months.

3. **Store Apple ID:**

Add the Apple ID to your TOOLS.md or workspace config so you remember it for future queries:
```markdown
## iCloud Find My
Apple ID: [email protected]
```

## Usage

### List all devices

```bash
icloud --username APPLE_ID --with-family --list
```

**Output format:**
```
------------------------------
Name           - Liam's iPhone
Display Name   - iPhone 15 Pro
Location       - {'latitude': 52.248, 'longitude': 0.761, 'timeStamp': 1767810759054, ...}
Battery Level  - 0.72
Battery Status - NotCharging
Device Class   - iPhone
------------------------------
```

**Parsing tips:**
- Devices are separated by `------------------------------`
- Location is a Python dict (use `eval()` or parse with regex)
- Battery Level is 0.0-1.0 (multiply by 100 for percentage)
- Battery Status: "Charging" or "NotCharging"
- Location fields: `latitude`, `longitude`, `timeStamp` (milliseconds), `horizontalAccuracy`

### Get specific device

Find a specific device by grepping the output:
```bash
icloud --username APPLE_ID --with-family --list | grep -A 10 "iPhone"
```

### Parse location

Extract and format location data:
```bash
icloud --username APPLE_ID --with-family --list | \
  grep -A 10 "Device Name" | \
  grep "Location" | \
  sed "s/Location.*- //"
```

Then parse the Python dict string with Python or extract coordinates with regex.

### Parse battery

```bash
icloud --username APPLE_ID --with-family --list | \
  grep -A 10 "Device Name" | \
  grep "Battery Level"
```

## Device Names

Device names come from iCloud and may include:
- Fancy Unicode apostrophes (U+2019 ') instead of ASCII '
- No apostrophes at all (e.g., "Lindas iPhone")

Use case-insensitive matching and normalize apostrophes if needed.

## Session Management

- Sessions last **1-2 months**
- Stored in user's home directory
- When expired, re-run the authentication step
- PyiCloud validates automatically on each request

## Common Patterns

**Check battery before going out:**
```bash
# Get battery for specific device
icloud --username ID --with-family --list | \
  grep -B 2 -A 5 "iPhone" | \
  grep "Battery Level"
```

**Get current location:**
```bash
# Extract location dict and parse coordinates
icloud --username ID --with-family --list | \
  grep -A 10 "iPhone" | \
  grep "Location" | \
  sed "s/.*- //" | \
  python3 -c "import sys; loc = eval(sys.stdin.read()); print(f\"{loc['latitude']}, {loc['longitude']}\")"
```

**Check if device is charging:**
```bash
icloud --username ID --with-family --list | \
  grep -A 10 "iPhone" | \
  grep "Battery Status"
```

## Proactive Use Cases

- **Battery warnings:** Check battery levels before calendar events (going out)
- **Location context:** Answer "near me" queries by checking user's current location
- **Home/away detection:** Check if user is at home based on coordinates
- **Low battery alerts:** Warn if battery <30% and not charging

## Troubleshooting

**Authentication errors:**
- Session expired - re-authenticate
- Wrong Apple ID - check stored ID
- 2FA required - complete 2FA flow

**No location available:**
- Device offline
- Find My disabled
- Location Services off

**Device not found:**
- Check exact device name with `--list`
- Names are case-sensitive
- May have Unicode apostrophes

## Notes

- Requires macOS (iCloud API quirks)
- Family Sharing must be enabled to see family devices
- Location updates every ~1-5 minutes when device is active
- Battery readings may be cached (check timestamp)

「生活服務」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。